2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Помогите пожалуйста решить...
Сообщение04.02.2010, 17:24 
1)Дана строка символов до точки. Группы символов в ней между пробелами считаются словами. Определить, сколько слов содержат хотя бы одну букву “е”.
2)Создать файл действительных чисел. Выбрать компоненты файла, целая часть которых равна или кратна пяти. Переписать их в другой файл.
3)Составить запись содержащую сведения о заработной плате работников: фамилия, имя, отчество, должность (инженер, конструктор, лаборант), оклад). Определить, сколько лаборантов имеют сумму оклада кратную трем.

есть подобная программа к 1 задаче.
Дана строка символов до точки. Группы символов в ней между группами пробелов считаются словами. Определить, сколько слов содержат ровно три буквы “е”.

текст программы:
program zd5;
var
s:string;
i:integer;
r1,r2:integer;
begin
writeln ('‚введите строку символов на русском языке');
readln (s);
for i:=1 to length (s) do
case s[i] of
'Ґ': r1:=r1+1;
' ': begin
if r1=3 then
r2:=r2+1;
r1:=0;
end;
'.': break;
end;
writeln (r2,'-‘ слова содержат 3 буквы "е"');
end.


2. Составить запись, содержащую сведения о группе людей (фамилия, имя, отчество и год рождения). Определить сколько человек имеют одинаковый год рождения.


эта программа есть у меня в делфи, промогите перегнать в паскаль...


program Pr8; //Приложение 8

{$APPTYPE CONSOLE}

Type

zap=record
fam:string[15];
imja:string[10];
ot:string[15];
god_rojd:integer;
end;
var
stud:array[1..100]of zap;
d,n,i,k:integer;
begin
writeln('vvedite kol-vo studentov');
readln(n);
writeln('vvedite dannoe studenta ');
for i:=1 to n do
With stud[i] do
begin
readln(fam);
readln(imja);
readln(ot);
readln(god_rojd);
end;
k:=0;
writeln('god_rojd');
readln(d);
for i:=1 to n do
With stud[i] do
if god_rojd=1982 then k:=k+1;
writeln('kol-vo stud=',k);
readln;
end.
но препад сказал что она малясь не правильная...

Люди пожалуйста помогите, завтра нужно сдать а я не знаю как их решить.

 
 
 
 Re: Помогите пожалуйста решить...
Сообщение04.02.2010, 18:31 
Модераторы, извините пожалуйста что я красным выделил. Только сейчас прочитал правила.

 
 
 
 Re: Помогите пожалуйста решить...
Сообщение04.02.2010, 18:44 
Darkxxx36 в сообщении #285689 писал(а):
эта программа есть у меня в делфи, промогите перегнать в паскаль...

А она и так в Паскале. Надо только выкинуть вторую строчку (а заодно и первую).

Darkxxx36 в сообщении #285689 писал(а):
но препад сказал что она малясь не правильная...

Трудно сказать, правильная или нет -- её невозможно толком прочитать. Окружите тегом "code" и расставьте грамотно отступы.

Вроде ошибок не видно. Кроме одного: она отвечает не на поставленный вопрос, а на вопрос о конкретно 1982-м г.р.. Но, с другой стороны, на поставленный: "сколько человек имеют одинаковый год рождения" -- ответить довольно трудно, ибо он бессмысленен.

 
 
 
 Re: Помогите пожалуйста решить...
Сообщение04.02.2010, 18:49 
а как с первыми задачами? Вы не знаете?

Я решил у себя 9 задач (с помощью) а эти 4 вообще не знаю как.

поманите решить...

-- Чт фев 04, 2010 18:52:59 --

открыл с помощью блокнота...


Код:
program Pr8;                     //Приложение 8

{$APPTYPE CONSOLE}

Type

  zap=record
      fam:string[15];
      imja:string[10];
      ot:string[15];
      god_rojd:integer;
  end;
   var
   stud:array[1..100]of zap;
  d,n,i,k:integer;
begin
writeln('vvedite kol-vo studentov');
readln(n);
writeln('vvedite  dannoe studenta ');
for i:=1 to n do
With stud[i] do
  begin
   readln(fam);
   readln(imja);
   readln(ot);
   readln(god_rojd);
    end;
   k:=0;
    writeln('god_rojd');
    readln(d);
    for i:=1 to n do
With stud[i] do
if  god_rojd=1982 then  k:=k+1;
writeln('kol-vo stud=',k);
readln;
end.


-- Чт фев 04, 2010 18:54:13 --



я уже не знаю что делать...

-- Чт фев 04, 2010 18:58:13 --

кстати я попробовал открыть в паскале, убрал оттуда то что не нужно и все равно она работает криво...

 
 
 
 Re: Помогите пожалуйста решить...
Сообщение04.02.2010, 19:02 
код: [ скачать ] [ спрятать ]
Используется синтаксис Pascal
  1.  
  2. program Pr8; //Приложение 8
  3.  
  4. Type
  5.  
  6. zap=record
  7. fam:string[15];
  8. imja:string[10];
  9. ot:string[15];
  10. god_rojd:integer;
  11. end;
  12.  
  13. var
  14. stud:array[1..100]of zap;
  15. d,n,i,k:integer;
  16. begin
  17.         writeln('vvedite kol-vo studentov');
  18.         readln(n);
  19.         writeln('vvedite dannoe studenta ');
  20.         for i:=1 to n do
  21.                 With stud[i] do
  22.                 begin
  23.                         readln(fam);
  24.                         readln(imja);
  25.                         readln(ot);
  26.                         readln(god_rojd);
  27.                 end;
  28.         k:=0;
  29.         writeln('god_rojd');
  30.         readln(d);
  31.         for i:=1 to n do
  32.                 With stud[i] do
  33.                         if god_rojd=1982 then
  34.                                 k:=k+1;
  35.         writeln('kol-vo stud=',k);
  36.         readln;
  37. end.
  38.  


Начиная с 30 строчки переменная d далее не используется. Вы наверное хотели ее применить в условии ниже вместо конкретной константы (1982 )

-- Чт фев 04, 2010 19:04:46 --

Цитата:
кстати я попробовал открыть в паскале, убрал оттуда то что не нужно и все равно она работает криво...

Попробуйте воспользоваться редактором с подсветкой синтаксиса (например, Notepad++) и там добавить отступы нужное количество.

 
 
 
 Re: Помогите пожалуйста решить...
Сообщение04.02.2010, 19:27 
попробовал убрал 1982 и поставил d вроде норм

Спасибо!!!!!!!!!!!!!!!!



Так больше ошибок не наблюдаешь???

-- Чт фев 04, 2010 19:33:00 --

а с первыми задачами кто нить поможет???
пожалуйста!!!!

 
 
 [ Сообщений: 6 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group