Pascal ABC Определить три наименьших числа среди последовательности

01.01.2001

Pascal ABC Определить три наименьших числа среди последовательности
Дана непустая последовательность ненулевых целых чисел, за которой следует 0 (0 - признак конца последовательности) . Определить три наименьших числа среди них.
Не могу понять где ошибка (((

var
X,min1,min2,min3: integer;
begin
writeln('Вводите целые числа, для завершения ввода введите ноль: ');
readln(x);
repeat
readln(x);
if X <> 0 then
begin
if X < min1 then
begin
min3 := min2;
min2 := min1;
min1 := X;
end
else
if (X < min2) and (min2 < min1) then
begin
min2 := X;
min3 := min2;
end
else
if (X < min3) and (min3 < min2) then
begin
min3 := X
end
else
end;
until X = 0;
writeln(min1:10, min2:10, min3:10);
end.

  • А чему равны min1, min2 и min3 перед работой цикла? Уж не меньше ли они всех x-ов?
  • введи в массив, отсортируй по возрастанию и выбери 3 первых

Вас заинтересует