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

А. Среднее арифметическое 1)
Напишите программу, которая в последовательности натуральных чисел находит среднее
арифметическое трѐхзначных чисел или сообщает, что таких чисел нет (выводит NO).
Программа получает на вход натуральные числа, количество введѐнных чисел неизвестно,
последовательность чисел заканчивается числом 0 (0 признак окончания ввода, не
входит в последовательность).
Количество чисел не превышает 20. Введѐнные числа не превышают 1500.
Программа должна вывести среднее арифметическое трѐхзначных чисел или вывести
«NO», если таких чисел нет.
Пример работы программы:
Входные данные Выходные данные
10
120
125
0
122.5
11
1
0
NO

Показать ответ
Ответ:
Kotumi
Kotumi
28.11.2020 21:31

program arithmeticmean;

var

 i, quantity: integer;

 amount: longint;

begin

 quantity := 0;

 amount := 0;

 i := 1;

 while i <> 0 do

 begin

   read(i);

   if (i > 99) and (i < 1000) then

   begin

     amount := amount + i;

     quantity := quantity + 1;

   end

 end;

 if (quantity <> 0) then

   write(amount / quantity)

 else

   write('NO');

end.

Объяснение:

program arithmeticmean;  // Название программы

var

 i, quantity: integer;  // Создание целочисленных переменных

i - вводимые с клавиатуры числа;quantity - количество трехзначных чисел.

 amount: longint;  // Создание целочисленной переменной

amount - сумма трехзначных чисел

begin  // Начало программы

 quantity := 0;  // Количество трехзначных чисел = 0

 amount := 0;  // Сумма трехзначных чисел = 0

 i := 1;  // Переменная i = 1 (делается это для того, чтобы зайти в цикл (выходит какого-то рода обман))

 while i <> 0 do  // Пока переменная i ≠ 0

 begin  // Начало цикла

   read(i);  // Считываем с клавиатуры значение переменной i

   if (i > 99) and (i < 1000) then  // Если (*значение переменной i* > 99) И (*значение переменной i* < 1000), тогда - проверка, является ли число трехзначным

   begin  // Начало блока

     amount := amount + i;  // К переменной, хранящей сумму, прибавляется значение переменной i

     quantity := quantity + 1;  // К переменной, хранящей количество, прибавляется значение 1

   end  // Конец блока

 end;  // Конец цикла

 if (quantity <> 0) then  // Если количество трехзначных чисел ≠ 0, тогда - проверка, есть ли трехзначные числа в последовательности

   write(amount / quantity)  // Выводим среднее арифметическое - сумма ÷ количество

 else  // Иначе

   write('NO');  // Выводим NO

end. // Конец программы

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота