находит среднее арифметическое трехзначных чисел
Напишите программу, которая в последовательности натуральных чисел находит среднее арифметическое трехзначных чисел или сообщает, что таких чисел нет (выводит «NO»). Программа получает на вход натуральные числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 – признак окончания ввода, не входит в последовательность).
Количество чисел не превышает 100. Введённые числа не превышают 300.
Программа должна вывести среднее арифметическое трехзначных чисел или вывести «NO», если таких чисел нет. Значение выводить с точностью до десятых.
Пример работы программы:
| Входные данные | Выходные данные |
| 30 170 127 0 |
148,5 |
Решение:
Паскаль
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
var a, s, k: integer; begin s:=0; k:=0; readln(a); while a<>0 do begin if (a > 99) and (a < 1000) then begin s := s + a; k := k + 1; end; readln(a); end; if k > 0 then writeln(s/k :5:1) else writeln(’NO’); end. |
Python
|
1 2 3 4 5 6 7 8 9 10 11 12 |
a = int(input()) s = 0 k = 0 while a != 0: if a > 99 and a < 1000: s = s + a k = k + 1 a = int(input()) if k > 0: print(f'{s/k:.{1}f}') else: print('NO') |
Значение выводить с точностью до десятых. Это также возможно так:
|
1 |
print(f'{s/k:.1f}') |
или
|
1 |
print("{:.1f}".format(s/k)) |
Ответ:
