Вывод на экран записей тех студентов, у которых по обоим предметам оценка 4 или 5 - Pascal ABC
Формулировка задачи:
Решение задачи: «Вывод на экран записей тех студентов, у которых по обоим предметам оценка 4 или 5»
- const n=5;
- type std=record
- grp:string[4];
- fio:string[15];
- ocn:array[1..2] of byte;
- end;
- var a:array[1..n] of std;
- i,k:byte;
- begin
- writeln('Введите данные студентов');
- for i:=1 to n do
- with a[i] do
- begin
- writeln('Студент ',i);
- write('Введите номер группы, 4 символа: ');readln(grp);
- write('Введите ФИО, до 15 символов: ');readln(fio);
- writeln('Введите 2 оценки от 2 до 5');
- for k:=1 to 2 do
- repeat
- readln(ocn[k]);
- until ocn[k] in [2..5];
- end;
- writeln('Полный список студентов');
- writeln('------------------------------');
- writeln('|Группа| ФИО |Оценки|');
- writeln('------------------------------');
- for i:=1 to n do
- with a[i] do
- writeln('|',grp:4,' |',fio:15,'|',ocn[1]:3,ocn[2]:2,' |');
- writeln('------------------------------');
- writeln('Студенты, у которых оценки не ниже 4');
- k:=0;
- writeln('------------------------------');
- writeln('|Группа| ФИО |Оценки|');
- writeln('------------------------------');
- for i:=1 to n do
- with a[i] do if (ocn[1] in [4,5])and(ocn[2]in [4,5]) then
- begin
- k:=1;
- writeln('|',grp:4,' |',fio:15,'|',ocn[1]:3,ocn[2]:2,' |');
- end;
- if k=0 then write('Таких студентов нет')
- else writeln('------------------------------');
- end.
Объяснение кода листинга программы
const n = 5; type std = record grp: string[4]; fio: string[15]; ocn: array[1..2] of byte; end; var a: array[1..n] of std; i, k: byte; begin writeln('Введите данные студентов'); for i := 1 to n do with a[i] do begin writeln('Студент ', i); write('Введите номер группы, 4 символа: '); readln(grp); write('Введите ФИО, до 15 символов: '); readln(fio); writeln('Введите 2 оценки от 2 до 5'); for k := 1 to 2 do repeat readln(ocn[k]); until ocn[k] in [2..5]; end; writeln('------------------------------'); writeln('|Группа| ФИО |Оценки|'); writeln('------------------------------'); for i := 1 to n do with a[i] do writeln('|', grp:4, ' |', fio:15, '|', ocn[1]:3, ocn[2]:2, ' |'); writeln('------------------------------'); writeln('Студенты, у которых оценки не ниже 4'); k := 0; writeln('------------------------------'); writeln('|Группа| ФИО |Оценки|'); writeln('------------------------------'); for i := 1 to n do with a[i] do if (ocn[1] in [4,5]) and (ocn[2] in [4,5]) then begin k := 1; writeln('|', grp:4, ' |', fio:15, '|', ocn[1]:3, ocn[2]:2, ' |'); end; if k = 0 then write('Таких студентов нет') else writeln('------------------------------'); end; end.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д