Организовать беспрерывный ввод чисел с клавиатуры, пока пользователь не введёт 0. После ввода нуля,...

Тематика Информатика
Уровень 5 - 9 классы
ввод чисел беспрерывный ввод Паскаль repeat среднее арифметическое сумма чисел количество чисел программирование цикл алгоритм
0

Организовать беспрерывный ввод чисел с клавиатуры, пока пользователь не введёт 0. После ввода нуля, показать на экран количество чисел, которые были введены, их общую сумму и среднее арифметическое. Срочно! В Паскале через repeat

avatar
задан 18 дней назад

3 Ответа

0

Для организации беспрерывного ввода чисел с клавиатуры и последующего подсчета их количества, суммы и среднего арифметического в Паскале через цикл repeat можно воспользоваться следующим кодом:

program CalculateAverage;
var
  num, count, sum: Integer;
  average: Real;
begin
  count := 0;
  sum := 0;
  
  repeat
    Write('Введите число (для завершения введите 0): ');
    Readln(num);
    
    if num  0 then
    begin
      count := count + 1;
      sum := sum + num;
    end;
  until num = 0;
  
  if count > 0 then
  begin
    average := sum / count;
    Writeln('Количество введенных чисел: ', count);
    Writeln('Общая сумма чисел: ', sum);
    Writeln('Среднее арифметическое: ', average:0:2);
  end
  else
    Writeln('Вы не ввели ни одного числа.');
end.

Этот код позволяет пользователю вводить числа с клавиатуры до тех пор, пока не будет введен 0. После этого программа вычисляет количество введенных чисел, их сумму и среднее арифметическое и выводит результаты на экран.

avatar
ответил 18 дней назад
0

repeat read(num); sum := sum + num; count := count + 1; until num = 0;

average := sum / count;

writeln('Количество чисел: ', count); writeln('Сумма чисел: ', sum); writeln('Среднее арифметическое: ', average);

avatar
ответил 18 дней назад
0

Для организации беспрерывного ввода чисел с клавиатуры в языке программирования Паскаль с использованием цикла repeat можно следовать следующему алгоритму. Цель: продолжать ввод чисел до тех пор, пока пользователь не введет 0. После этого необходимо вывести количество введенных чисел, их общую сумму и среднее арифметическое.

Вот пример кода с комментариями для понимания каждого шага:

program ContinuousInput;

var
  number: Integer;
  count: Integer;
  sum: Integer;
  average: Real;

begin
  // Инициализация переменных
  count := 0;
  sum := 0;
  average := 0.0;

  writeln('Введите числа (0 для завершения):');

  repeat
    // Ввод числа с клавиатуры
    readln(number);
    
    // Проверяем, не ввел ли пользователь 0
    if number  0 then
    begin
      // Увеличиваем счетчик введенных чисел
      count := count + 1;

      // Добавляем введенное число к общей сумме
      sum := sum + number;
    end;
  until number = 0;

  // Проверяем, были ли введены числа (кроме 0)
  if count > 0 then
  begin
    // Вычисляем среднее арифметическое
    average := sum / count;
    
    // Выводим результаты на экран
    writeln('Количество введенных чисел: ', count);
    writeln('Сумма чисел: ', sum);
    writeln('Среднее арифметическое: ', average:0:2); // Вывод с двумя знаками после запятой
  end
  else
  begin
    writeln('Ни одно число не было введено, кроме 0.');
  end;
end.

Объяснение:

  1. Инициализация переменных:

    • count: для подсчета количества введенных чисел.
    • sum: для хранения суммы введенных чисел.
    • average: для вычисления среднего арифметического.
  2. Цикл repeat:

    • В этом цикле происходит ввод чисел.
    • Условие if number 0 позволяет исключить 0 из подсчета и суммирования.
  3. Подсчет и суммирование:

    • Каждый раз, когда пользователь вводит число отличное от 0, увеличиваем count и добавляем значение number к sum.
  4. Проверка на количество введенных чисел:

    • Если count > 0, вычисляем среднее арифметическое и выводим результаты.
    • В противном случае выводим сообщение, что ни одно число не было введено.

Этот код позволяет пользователю вводить числа до тех пор, пока не будет введен 0, после чего программа выводит количество чисел, их сумму и среднее арифметическое.

avatar
ответил 18 дней назад

Ваш ответ

Вопросы по теме