Найти наибольший балл среди учащихся, сдавших экзамен на "отлично" - Turbo Pascal
Формулировка задачи:
Дан файл целых чисел. Элементы могут принимать значения от 0 до 100 - баллы, полученные на ЕГЭ. Опишите алгоритм, который подсчитывает и выводит на экран наибольший балл среди учащихся, сдавшиъ экзамен на "отлично"(получивших оценку более 75 баллов), либо вывести сообщение, что таких нет
Решение задачи: «Найти наибольший балл среди учащихся, сдавших экзамен на "отлично"»
textual
Листинг программы
var
f:Text;
i,max:integer;
begin
Assign(F, 'balliege.txt');
Reset(f);
max:=75;
While not( eof(f)) do
begin
Read(f,i);
if i>max then max:=i;
end;
Close(f);
if max>75 then writeln(max)
Else Writeln('таких нет');
end.
Объяснение кода листинга программы
- В начале объявляются переменные: f - тип Text, i - тип Integer, max - тип Integer.
- Затем происходит назначение файла 'balliege.txt' переменной f с помощью функции Assign.
- Функция Reset вызывается для перезагрузки файла.
- Переменная max инициализируется значением 75.
- Затем идет цикл While, который выполняется до тех пор, пока не будет достигнут конец файла (не будет вызвано исключение EOF).
- Внутри цикла происходит чтение значения переменной i из файла с помощью функции Read.
- Если значение i больше значения переменной max, то переменная max обновляется значением i.
- После окончания цикла файл закрывается с помощью функции Close.
- Затем проверяется, превышает ли значение переменной max значение 75.
- Если это так, то значение max записывается в переменную result с помощью функции Writeln.
- Если значение max меньше или равно 75, то выводится строка 'таких нет'.
- Конец программы.