
Вопрос задан 16.07.2023 в 11:24.
Предмет Информатика.
Спрашивает Карзухина Настя.
Напишите программы на PascalABC.Net Задача №5: Напишите программу, которая в последовательности
натуральных чисел определяет среднее значение нечетных чисел, которые меньше 50. Программа получает на вход натуральные числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 - признак окончания ввода, не входит в последовательность). Количество чисел не превышает 100. Введённые числа не превышают 300. Программа должна вывести одно число: среднее значение четных чисел меньших 50. Например: 23 118 11 48 15 34 0 ==> 16.33 (вывод два знака после запятой)

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

Отвечает Кречко Карина.
begin
Write(ReadSeqIntegerWhile(p -> p <> 0)
.Where(p -> p.IsOdd and p.InRange(1,49))
.DefaultIfEmpty
.Average:0:2)
end.



Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.
Для решения данной задачи на PascalABC.Net, мы можем использовать следующий код:
pascalprogram AverageOfOddNumbers; const MaxNumbers = 100; MaxValue = 300; TargetValue = 50; var numbers: array[1..MaxNumbers] of Integer; count, i, sum, oddCount: Integer; inputNumber: Integer; average: Real; begin WriteLn('Введите последовательность натуральных чисел. Для окончания ввода введите 0.'); count := 0; inputNumber := -1; // Чтение чисел из входа while (inputNumber <> 0) and (count < MaxNumbers) do begin ReadLn(inputNumber); // Проверка числа на соответствие условиям задачи if (inputNumber > 0) and (inputNumber < MaxValue) and (inputNumber < TargetValue) then begin Inc(count); numbers[count] := inputNumber; end; end; if count = 0 then begin WriteLn('Не было введено ни одного подходящего числа.'); Exit; end; sum := 0; oddCount := 0; // Вычисление суммы и количества нечетных чисел for i := 1 to count do begin if numbers[i] mod 2 = 1 then begin Inc(oddCount); Inc(sum, numbers[i]); end; end; // Вычисление среднего значения нечетных чисел average := sum / oddCount; // Вывод результата с двумя знаками после запятой WriteLn(Format('%.2f', [average])); end.
Программа запрашивает у пользователя ввод последовательности чисел, останавливаясь при вводе числа 0 или при достижении максимального количества чисел (100). Затем она находит среднее значение нечетных чисел, которые меньше 50, и выводит результат с двумя знаками после запятой.


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

Информатика 47

Информатика 33

Информатика 67

Информатика 18

Информатика 25

Информатика 563

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