В
Все
Б
Биология
Б
Беларуская мова
У
Українська мова
А
Алгебра
Р
Русский язык
О
ОБЖ
И
История
Ф
Физика
Қ
Қазақ тiлi
О
Окружающий мир
Э
Экономика
Н
Немецкий язык
Х
Химия
П
Право
П
Психология
Д
Другие предметы
Л
Литература
Г
География
Ф
Французский язык
М
Математика
М
Музыка
А
Английский язык
М
МХК
У
Українська література
И
Информатика
О
Обществознание
Г
Геометрия
Gasdsa
Gasdsa
17.02.2022 17:19 •  Информатика

Решить на паскале, используя циклы. вводится последовательность целых чисел, не превосходящих по модулю 10^9, и при этом не равных нулю. ноль – признак конца. вы- дайте три максимальных числа этой последовательности, не игнорируя дубликаты (то есть, три числа в ответе могут совпадать). гарантирует- ся, что в последовательности есть как минимум три содержательных элемента.

Показать ответ
Ответ:
777Leha777
777Leha777
07.09.2020 13:24
//Знаю, что это решение далеко от понятия "изящество"
//Pascal ABC.NET v3.0 сборка 1111
var
 max1,max2,max3,i,maxi1,maxi2:integer;
 ar:array of integer;
begin
max1:=-2147483648;
max2:=-2147483648;
max3:=-2147483648;
setlength(ar,1);
readln(ar[0]);
i:=0;
 repeat
  inc(i);
  setlength(ar,i+1);
  readln(ar[i]);
 until ar[i]=0;
 for i:=0 to i do
 if ar[i]>max1 then
  begin;
   max1:=ar[i];
   maxi1:=i;
  end;
 for i:=0 to i do
 if (ar[i]>max2) and (i<>maxi1) then
  begin;
   max2:=ar[i];
   maxi2:=i;
  end;
 for i:=0 to i do
 if (ar[i]>max3) and (i<>maxi1) and (i<>maxi2) then max3:=ar[i];
write('Max1=',max1,' Max2=',max2,' Max3=', max3);
end.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота