1. надо добавить точку в последней строке программы. иначе работать не будет. 2. меняется всего одна строка в программе: program pr2; type student = record {объявление нового типа данных student} lastname: string; {фамилия студента} bal: array [1..5] of integer; {массив для 5-ти оценок} average: real {средний студента} end; var pupil: array [1..100] of student; {массив pupil (максимум из 100 элементов) типа student} n, i, j, s: integer; {переменные целого типа} begin write('введите количество студентов: '); readln(n); for i : = 1 to n do begin{запрос данных по n студентам} with pupil[i] do begin write('введите фамилию студента №', i, ': '); {запрос фамилии студента под номером i} readln(lastname); s : = 0; {целочисленная переменная для определения суммы студента} for j : = 1 to 5 do begin{цикл для обработки 5-ти оценок каждого студента} write('введите оценку за экзамен №: ', j, ': ' ); readln(bal[j] ); s : = s + bal[j]; {суммирование 5-ти оценок студента} end; average : = s / 5; {определение среднего значения и запись в переменную average} end; end; writeln; writeln( 'студенты, имеющие средний больший или равный 4'); for i : = 1 to n do begin if pupil[i].average > = 4 then {если средний студента > =4} write(pupil[i].lastname,', '); end; end.
pri02
23.12.2021
Взапись student добавляете новое поле kurs, type student = recordlastname: string ; bal: array [1..5] of integer; kurs: integer; average: real end; в цикле по студентам добавляете ввод курса with pupil[i] do begin write ('введите фамилию студента №', i ,': '); readln (lastname); write('введите курс '); readln(kurs); в конце программы изменяете вывод writeln ( 'студенты первокурсники, имеющие средний больший или равный 4'); for i: =1 to n do beginif (pupil[i].average > =4) and (pupil[i].kurs = 1) then write (pupil[i].lastname,', ');
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Найти все двузначные числа , сумма цифр которых не меняется при умножении числа на 2, 3, 4, 5, 6, 7, 8, 9