Предмет: Информатика, автор: Kaymaan

Помогите решить задачи в Паскале.
1. Напишите программу, которая в последовательности целых
чисел определяет среднее арифметическое отрицательных,
оканчивающихся на 1, чисел. Программа получает на вход
целые числа, количество которых неизвестно, но
последовательность заканчивается числом 0 (0-признак
окончания и в последовательность не входит).
2. Напишите программу, которая в последовательности
натуральных чисел определяет порядковый номер
максимального четного числа. Программа получает на вход
количество чисел в последовательности, а затем сами числа.
Если в последовательности нет нужных чисел, вывести «не
найдено».

Ответы

Автор ответа: KnowsUser1
2

Ответ:

PascalABC.NET 3.5.1 + .NET Framework 4.7.1

#1

begin

 var A := ReadSeqIntegerWhile(p -> p <> 0).ToList;

 A.Where(p -> (p < 0) and (abs(p) mod 10 = 1)).Average.Println;

end.

#2

begin

 var A := ReadArrInteger(ReadInteger());

 var max_even := A.Where(p->p mod 2 = 0).Max;

 var max_ind := A.IndexOf(max_even);

 if max_ind = -1 then print('Нет') else print(max_ind+1);

end.

Объяснение:


Kaymaan: Program1.pas(2) : Ошибка времени выполнения: Входная строка имела неверный формат.
KnowsUser1: Ну, вам компилятор чётко сообщает о том, что вы вводите не то, что он от вас ждёт
Kaymaan: можешь сказать числа,которые вводил
KnowsUser1: для какой из них?
Kaymaan: для 2
Kaymaan: я проверю
KnowsUser1: 4 -> ввод -> 1 2 5 9
Kaymaan: а для 1
KnowsUser1: 5 9 -1 -11 0
Kaymaan: спасибо большое!!!!!
Интересные вопросы