
Вопрос задан 06.01.2019 в 21:55.
Предмет Информатика.
Спрашивает Чермных Даша.
СРОЧНО!! ПАСКАЛЬ!! 20 Б Измените текст программы примера так, чтобы решалась следующая задача:
Есть информация по студентам (фамилия, курс (1-5), 5 оценок за последнюю сессию). Вывести через запятую фамилии первокурсников, которые имеют средний балл, больший или равный 4. 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} writeln (pupil[i].LastName, ' (средний бал ', pupil[i].average:4:1, ')'); {то вывод на экран фамилии студента и его среднего балла} end; end

Ответы на вопрос

Отвечает Снигерёв Павел.
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.
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.


Топ вопросов за вчера в категории Информатика

Информатика 558

Информатика 33

Информатика 74

Информатика 12

Информатика 10

Информатика 33

Информатика 27
Последние заданные вопросы в категории Информатика
Предметы
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili