IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> задача по записям, в чем ошибка?
сообщение
Сообщение #1





Группа: Пользователи
Сообщений: 3

Репутация: -  0  +


пробывал решить задачу, не получилось, мож кто нашел ошибку.
Имеются экзаменационные ведомости трех групп по Физике.
Разработать алг. и программу определения сколько человек в каждой группе
получили на экзамене оценку 5 , сколько-4 , сколько-3 . Упорядочить
результаты по числу 5.
Указания: 1) решить с использованием процедур и функций.
2) в решении использовать тип данных ЗАПИСЬ с полями:
- порядковый номер,
- Ф.И.О. ,
- экзаменационная оценка.



Код
program ocenki_po_fizike;
uses crt;
type student=record
    nomer:integer;
    fio:string;
    ocenka:integer;
    end;
sp=array[1..50] of student;
 var spisok:sp;
 k,ng:integer;
procedure Vvod(c:integer);
var   i:integer;
begin
WriteLn('Введите ФИО студентов и балл');
for i:=1 to c do begin
     Write(i,')');
     Spisok[i].Nomer:=i;
     ReadLn(Spisok[i].FIO,Spisok[i].ocenka);
     end;
end;
 procedure obrab(c:integer);
var pyat,chet,tri:integer;
 begin
  pyat:=0;
  chet:=0;
  tri:=0;
with student do begin
  for nomer:=1 to c do begin
   case ocenka of
 5:pyat:=pyat+1;
 4:chet:=chet+1;
 3:tri:=tri+1;
   end;
  end;
writeln('Студентов получивших оценку:');
writeln('"5"-,pyat:5:0);
writeln('"4"-,chet:5:0);
writeln('"3"-,tri:5:0);
end;
Begin
  ClrScr;
  WriteLn('Программа для определения количества студентов получивших оценку');
  WriteLn('Введите кол-во студентов в 1 группе');
  ReadLn(c);
  Vvod(c);
  obrab(c);
WriteLn('Введите кол-во студентов во 2 группе');
  ReadLn(c);
  Vvod(c);
  obrab(c);
WriteLn('Введите кол-во студентов в 3 группе');
  ReadLn(c);
  Vvod(c);
  obrab(c);
 
 
End.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






Ты Pascal хоть раз запускал???

Код

Type
 TStudent=Record
   FIO:String;
   Mark:Integer
 End;

Var
 Data:Array[1.50] Of TStudent;
 i,n:Integer;

Const
 TotalMarks:Array[3..5] Of Integer = (0,0,0);

Procedure Input;
Begin
 Write('Enter Amount Of Students: ');
 ReadLn(n);
 For i:=1 To n Do
 Begin
   Write(i,'). Name: ');
   ReadLn(Data[i].FIO);
   Write('   Mark: ');
   ReadLn(Data[i].Mark)
 End
End;

Procedure Process;
Begin
 For i:=1 To n Do
   Inc(TotalMarks[Data[i].Mark])
End;

Procedure OutPut;
Begin
 WriteLn('Total:");
 For i:=5 DownTo 3 Do
   WriteLn(i,' - ',TotalMarks[i])
End;

Begin
 Input;
 Process;
 OutPut
End.


А фраза
Цитата
with student do begin
  for nomer:=1 to c do begin
   case ocenka of

Меня вообще добила.

Сообщение отредактировано: BlackShadow -
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 20.09.2020 3:07
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name