Вводится последовательность целых чисел, 0 — конец последовательности. Найти два наименьших числа.
PROGRAM PRG2_4;
VAR X, MIN1, MIN2: INTEGER; BEGIN WRITE(‘BBEДИTE X = ‘); READLN (X); MIN1 :=X; MIN2 := X; {MIN2> = MIN1} REPEAT IF X<= MIN1 THEN BEGIN MIN2 := MIN1; MIN1 :=X END ELSE IF (MIN1>X) AND (X<MIN2) THEN MIN2 := X; WRITE(‘BBEДИTE X = ‘); READLN (X); UNTIL (X = 0); WRITELN(‘ДBA НАИМЕНЬШИХ ЧИСЛА РАВНЫ ‘, MIN1, ‘И’, MIN2); END. Для решения задачи: — формируем тело программы и описываем переменные; — устанавливаем начальное значение MIN1 и MIN2 по первому числу; — последовательно считываем числа и, если очередное число X меньше пли равно MIN1(MIN1 < MIN2), то переприсваиваем значение MIN1 и MIN2; — если X попадает в интервал от MIN1 до MIN2, то переприсваиваем только MIN2; — выводим результат. Переменные: X — очередное число; MINI — первое наименьшее число; MIN2 — второе наименьшее число (MIN2 >= MINI). |