Замена минимальных оценок на максимальные - Free Pascal
Формулировка задачи:
Помогите пожалуйста решить задачку
Хакер Василий получил доступ к классному журналу и хочет заменить все свои минимальные оценки на максимальные. Напишите программу, которая заменяет оценки Василия, но наоборот (все максимальные - на минимальные).
Входные данные
Дано количество оценок Василия (не больше 100), затем сами оценки.Выходные данные
Требуется вывести исправленные оценки в том же порядке.Примеры
входные данные
5 1 3 3 3 4выходные данные
1 3 3 3 1входные данные
8 5 4 2 2 4 2 2 5выходные данные
2 4 2 2 4 2 2 2Решение задачи: «Замена минимальных оценок на максимальные»
textual
Листинг программы
var a:array[1..100] of integer; i,b,c:integer; begin read(i); for i:=1 to i do begin read(a[i]); if i=1 then begin b:=a[i]; c:=a[i]; end; if b>a[i] then b:=a[i]; if c<a[i] then c:=a[i]; end; for i:=1 to i do if a[i]=c then write(b,' ') else write(a[i],' '); end.
Объяснение кода листинга программы
- В начале кода объявляются переменные:
—
a
— массив из 100 целых чисел; —i
,b
,c
— целочисленные переменные. - Затем происходит чтение первого элемента массива и сохранение его значения в переменной
i
. - Далее выполняется цикл по всем элементам массива:
— читается значение каждого элемента;
— если это первый элемент, то сохраняются его значения в переменных
b
иc
. - В каждой итерации цикла проверяется:
— если значение текущего элемента больше, чем значение переменной
b
, то значение переменнойb
обновляется; — если значение текущего элемента меньше, чем значение переменнойc
, то значение переменнойc
обновляется. - После выполнения цикла, выводится строка, состоящая из значений массива, заменяя каждое вхождение значения переменной
c
на пробел. - Значение переменной
b
не используется в цикле, но оно будет содержать максимальное значение из массива.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д