Найти наименьшее из отрицательных чисел - Pascal ABC
Формулировка задачи:
Помогите ребята с задачей, если не сложно. Дана последовательность не нулевых чисел. Ноль – конец последовательности. Найти наименьшее из отрицательных чисел этой последовательности.
Решение задачи: «Найти наименьшее из отрицательных чисел»
textual
Листинг программы
var n,i,k: integer;
a,max: real;
begin
write('Enter n');
readln(n);
k:=0;
writeln('Введите ',n,' вещественых чисел, хотя бы 1 отрицательное');
for i:=1 to n do
begin
read(a);
if a<0 then
begin
if k=0 then
begin
max:=a;
k:=1
end
else if a<max then max:=a
end
end;
if k=0 then write('Вы все же не ввели ни одного отрицательного числа')
else write('Наименьшее отрицательное=',max:0:2);
end.
Объяснение кода листинга программы
- Объявление переменных: n, i, k, a, max (тип данных - integer или real).
- Ввод количества чисел n с помощью функции readln().
- Инициализация переменной k = 0.
- Вывод сообщения с просьбой ввести n вещественных чисел, хотя бы одно из которых отрицательное, с помощью функции writeln().
- Организация цикла for для перебора чисел от 1 до n.
- Внутри цикла:
- Чтение числа a с помощью функции read().
- Проверка условия a < 0.
- Если условие выполняется, то:
- Если k = 0, то это первое отрицательное число, поэтому максимальное отрицательное число равно a, а k = 1.
- Если a < max, то обновление значения max.
- Проверка значения k после цикла.
- Если k = 0, то вывод сообщения о том, что не введено ни одного отрицательного числа.
- Если k > 0, то вывод сообщения с наименьшим отрицательным числом, округленным до двух знаков после запятой, с помощью функции write().