Напишите пожалуйста самый простой вариант, без массивов с помощью цикла! (Первый год...

0 голосов
40 просмотров

Напишите пожалуйста самый простой вариант, без массивов с помощью цикла! (Первый год изучения паскаля)

Напишите программу, которая в последовательности целых чисел определяет разность максимального и минимального чисел. Программа получает на вход целые числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 – признак окончания ввода, не входит в последовательность) .
Количество чисел не превышает 1000. Введённые числа по модулю не превышают 30 000. Программа должна вывести одно число: разность максимального и минимального чисел.


Информатика (21 баллов) | 40 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Program JuliaVanina;
uses crt;
var
  r,min,max: real;
  k:integer;
begin
  writeln('*** alphaues is thinking... ***');
  writeln('***          OK             ***');
  min:=0;
  max:=0;
  k:=0;
  r:=1;
  writeln('Введите ненулевое число, не превышающее 30000 по модулю');
  writeln('(или введите 0 для конца последовательности) ');
  while (r<>0) and (k<1000) do<br>    begin
      write('Ввод:');  
      readln (r);
      if abs(r)<30000 then<br>          begin
            if min>r then min:=r;
            if max            k:=k+1;  
          end
        else
          begin
            writeln ('вы ввели слишком большое по модулю число');
            writeln ('Это число не будет учтено');
          end;
    end;
  writeln();
  writeln('Всего введено ',k-1,' чисел');
  writeln('Разность min и max составляет ',max-min);
end.

 

Проверено - работает на Паскаль АВС

(52.6k баллов)