Вопрос задан 05.07.2023 в 11:37. Предмет Информатика. Спрашивает Островская Диана.

Как найти максимальное и ПРЕДМАКСИМАЛЬНОЕ число кратное двум в массиве? Нужен код (Паскаль)

ВАЖНОЕ условие:И максимальное и предмаксимальное нужно найти одним циклом!!!
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Zhumabek Kundiz.

// PascalABC.NET

begin

 var n := ReadInteger('n =');

 var a := ArrRandom(n, -99, 99);

 a.Println;

 var (max, predmax) := (a[0], a[0]);

 for var i := 1 to a.High do

   if a[i].IsEven then

     if a[i] > max then (max, predmax) := (a[i], max)

     else if (a[i] > predmax) and (a[i] <> max) then predmax := a[i];

 Print(predmax, max)

end.

Объяснение:

Насколько я понял, предмаксимальное число не может быть равно максимальному, даже если в массиве два и более максимальных элементов. Если это не так, удалите условие and (a[i] <> max)

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Вот пример кода на языке Pascal, который находит максимальное и предмаксимальное числа, кратные двум, в массиве:

pascal
program FindMaxMultiples; const N = 10; // Размер массива var arr: array[1..N] of Integer; i, maxNum, prevMaxNum: Integer; begin // Заполнение массива случайными числами Randomize; for i := 1 to N do arr[i] := Random(100); // Генерация случайного числа от 0 до 99 // Инициализация переменных maxNum := -1; prevMaxNum := -1; // Поиск максимального и предмаксимального чисел кратных двум for i := 1 to N do begin if (arr[i] mod 2 = 0) then begin if arr[i] > maxNum then begin prevMaxNum := maxNum; maxNum := arr[i]; end else if (arr[i] > prevMaxNum) and (arr[i] < maxNum) then prevMaxNum := arr[i]; end; end; // Вывод результатов if (maxNum <> -1) and (prevMaxNum <> -1) then begin writeln('Максимальное число кратное двум: ', maxNum); writeln('Предмаксимальное число кратное двум: ', prevMaxNum); end else writeln('В массиве нет достаточно чисел кратных двум.'); readln; end.

Программа создает массив arr заданного размера N и заполняет его случайными числами от 0 до 99. Затем она выполняет поиск максимального и предмаксимального чисел, кратных двум, используя один цикл. Результаты выводятся на экран.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос