Дано не менее трех различных натуральных чисел, за которыми следует 0. Определить 3 наибольших числа среди них.

Дано не менее трех различных натуральных чисел, за которыми следует 0. Определить 3 наибольших числа среди них.
Гость
Ответ(ы) на вопрос:
Гость
Program msdos_2; uses crt; var   a:array[1..3] of integer; //массив трёх максимальных элементов   r,max,i,j: integer; begin   writeln('*** alphaues is thinking... ***');   writeln('***          OK             ***');   r:=1;   writeln('Введите ненулевое число');   writeln('(или введите 0 для конца последовательности) '); {вводим 3 первых элемента} for i:=1 to 3 do     begin       write('Ввод:');         readln (r);       a[i]:=r;     end; {сортируем массив из 3-х первых элементов}   for i:=1 to 2 do     begin       max:=a[i];       for j:=i+1 to 3 do         if a[j]>max then            max:=a[j];       a[j]:=a[i];       a[i]:=max;     end; {Продолжаем ввод и сравниваем текущее число с массивом из 3-х первых}   while r<>0 do     begin       write('Ввод:');         readln (r);       if r>a[1] then           begin             a[3]:=a[2];             a[2]:=a[1];             a[1]:=r;           end         else           if r>a[2] then               begin                 a[3]:=a[2];                 a[2]:=r;               end             else               if r>a[3] then                 a[3]:=r;     end; {выводим 3 максимальных элемента}   writeln();   writeln('Три наибольших элемента массива:');   for i:=1 to 3 do     writeln(i,'-й: ',a[i]); end.
Не нашли ответ?
Ответить на вопрос
Похожие вопросы