![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
zaxid |
![]()
Сообщение
#1
|
Группа: Пользователи Сообщений: 1 Пол: Мужской Репутация: ![]() ![]() ![]() |
Задание: Составить программу с использованием типа Record. Программа должна выполнять фильтрацию данных в таблице по условию задачи. Количество записей в таблице должно быть не меньше 8. Таблица содержит следующие данные о студенте:
фамилия имя год рождения год поступления в вузы пять оценок за последнюю сессию по 5-балльной шкале. средний балл. * Оформить нахождения среднего балла, ввода данных о студенте и печать личных данных как подпрограммы. Вывести анкетные данные студентов, имеющих все оценки 4. мой код: program v4; uses crt; type stud=record prizv,imya: string; riknar, rikvs: integer; serbal: real; baly: array [1..5] of integer end; inf=array [1..8] of stud; var inform: inf; n:integer; procedure vved(inform:inf; n:integer); var i,j: integer; begin for i:=1 to n do with inform[i] do begin writeln('vvedit dani pro ',i,'-go studenta'); writeln('vvedit prizvyshe'); readln(prizv); writeln('vvedit imya');readln(imya); writeln('vvedit rik narodj'); readln(riknar); writeln('vvedit rik vstupu'); readln(rikvs); for j:=1 to 5 do begin writeln('vvedit bal ',j); readln(baly[j]) end end end; procedure sbal; var i,j,suma: integer; begin for i:=1 to n do with inform[i] do begin suma:=0; for j:=1 to 5 do suma:=suma+baly[j]; serbal:=suma/5; end end; procedure print(inform: inf;n: integer); var i,j: integer; pr: boolean; begin for i:=1 to n do begin pr:= false; with inform[i] do for j:=1 to 5 do if baly[j]<>4 then pr:=true; if pr then begin write(inform[i].imya,' ',inform[i].prizv,' ',inform[i].riknar:4, ' ', inform[i].rikvs:4, ' ', inform[i].serbal:3:2); writeln end end end; begin clrscr; writeln('vvedit kilkist studentiv'); readln(n); vved(inform,n); sbal; print(inform,n); readln end. |
![]() ![]() |
![]() |
Текстовая версия | 20.07.2025 18:42 |