• Напишите программу, которая в последовательности натуральных чисел находит среднее арифметическое двузначных чисел или сообщает, что таких чисел нет. Программа получает на вход натуральные числа, количество введённых чисел неизвестно, последовательность заканчивается числом 0 (0 – признак окончания ввода, не является членом последовательности). Количество чисел не превышает 100. Введённые числа не превышают 300. Программа должна вывести среднее арифметическое двузначных чисел или вывести NO, если таких чисел в последовательности нет.

Ответы 2

  • Замечание. Так как количество вводимых чисел заранее не известно, то откроем бесконечный цикл со всегда верным условием True, но как только будет введено число 0, остановим цикл командой break.Программа:program z;var k,s,x:integer;begink:=0;              {начальное значение количества двузначных чисел}s:=0;              {начальное значение суммы двузначных чисел}while True do  {открываем бесконечный цикл}beginreadln(x);        {вводим число х}if x=0 then break;  {если введенное число равно 0, то остановить цикл}if (x>9)and(x<100) then  {если число двузначное, т.е. от 10 до 99}     begin     k:=k+1;         {количество увеличиваем на 1}    s:=s+x;         {увеличиваем предыдущее значение суммы на число х}    end;end;if k=0 then writeln('NO')  {если двузначных чисел не было, то вывод NO}   else writeln(s/k);          {иначе вывод ср.арифметического}end.
  • PascalABC.NET 3.3.5, сборка 1662 от 29.04.2018Внимание! Если программа не работает, обновите версию!begin  var r:=ReadSeqIntegerWhile(t->t<>0).Where(t->t.Between(10,99))      .DefaultIfEmpty.Average;  (r>0 ? r.ToString : 'No').Printlnend.
    • Автор:

      yasmin
    • 6 лет назад
    • 0
  • Добавить свой ответ

Еще вопросы

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years