Напишите программу, которая в последовательности натуральных чисел находит среднее арифметическое трёхзначных чисел или сообщает, что таких чисел нет (выводит no). программа получает на вход натуральные числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 undefined признак окончания ввода, не входит в последовательность). количество чисел не превышает 100. введённые числа не превышают 300. программа должна вывести среднее арифметическое трёхзначных чисел или вывести «no», если таких чисел нет. расписать программу в паскаль abc

LizaKrem LizaKrem    3   22.08.2019 02:00    39

Ответы
Printsesska042017 Printsesska042017  05.10.2020 11:33
//название
var
  sum, n, count: longint;
begin
repeat
readln (n);
if n in [100..999] then
begin
inc (sum, n);
inc (count);
end;
until n=0;
if count = 0 then write ('No') else write (sum/count);
end.
ПОКАЗАТЬ ОТВЕТЫ
vorsunovakatv vorsunovakatv  24.01.2024 08:59
Привет! Я с удовольствием помогу тебе написать программу! Вот решение задачи на языке Паскаль:

```pascal
program AverageOfThreeDigitNumbers;

var
number, sum, count: integer;
average: real;

begin
sum := 0;
count := 0;

repeat
write('Введите число: ');
readln(number);

if (number >= 100) and (number <= 999) then
begin
sum := sum + number; // добавляем число к сумме
count := count + 1; // увеличиваем счетчик количества чисел
end;
until number = 0;

if count <> 0 then
begin
average := sum / count; // вычисляем среднее арифметическое
writeln('Среднее арифметическое: ', average:0:2);
end
else
writeln('No');

readln;
end.
```

Объяснение решения:

1. Мы используем переменные `number`, `sum`, `count` и `average`. `sum` - это сумма всех введенных трехзначных чисел, `count` - количество трехзначных чисел, а `average` - среднее арифметическое.

2. Инициализируем переменные `sum` и `count` нулями.

3. Вводим числа в цикле `repeat-until`. Запрашиваем у пользователя ввод числа и считываем его в переменную `number`.

4. Проверяем, является ли введенное число трехзначным с помощью условия `(number >= 100) and (number <= 999)`. Если число трехзначное, то выполняем код внутри блока `begin-end`.

5. Внутри блока кода увеличиваем переменную `sum` на введенное число и увеличиваем переменную `count` на единицу.

6. Цикл продолжается до тех пор, пока пользователь не введет число 0.

7. После выхода из цикла проверяем значение переменной `count`. Если оно не равно нулю, то выполняем код в блоке `begin-end`, в котором вычисляем среднее арифметическое путем деления суммы на количество чисел. Результат выводим на экран с двумя знаками после запятой.

8. В противном случае, если переменная `count` равна нулю, выводим на экран "No".

9. Программа останавливается, пока пользователь не нажмет клавишу Enter.

Надеюсь, эта программа поможет тебе понять, как решать подобные задачи! Если у тебя возникнут еще вопросы, не стесняйся задавать!
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика