Задачи по Pascal. Определить среднее арифметическое чисел меньше 10.

Задачи по Pascal

Условие задачи : Ввести n чисел. Определить среднее арифметическое чисел меньше 10 (Язык Pascal)

Сложность : легкая .

Решение задачи :

Для начала продумаем наше решение. Сразу же сделаем цикл от 1 до n (кол-ва чисел).

Нам сказано определить среднее арифметическое чисел меньше 10, т.е. уже нам понадобиться условие которое проверяет какое из введенных нами чисел меньше 10.

Ну а среднее арифметическое — это сумма всех чисел деленная на кол-во чисел. Т.е. в цикле мы сначала введем число потом проверим меньше ли оно 10, если да то прибавляем его к общей сумме и увеличиваем кол-во чисел которые меньше 10.

Затем после цикла мы всю эту сумму разделим на это кол-во .

Теперь подумаем какие переменные нам понадобятся :

  1. Переменная summa — для суммы всех чисел меньше 10
  2. Переменная average — для среднего арифметического
  3. Переменная i — для цикла for
  4. Переменная n — для кол-ва чисел которое введет пользователь
  5. Переменная number — для числа которое пользователь вводить и которое мы будем проверять
  6. Переменная count — для кол-ва чисел меньше 10

Начнем мы с каркаса нашей программы :

var
   summa , i , n, number, count : integer;
   average : real;
begin

write('Введите кол-во чисел : '); readln(n); // просим пользователя ввести число
end.

Переменная average у нас типа real, т.е. число с запятой(пример 4.56), мы присвоили ей такой тип потому что, чтобы найти среднее арифметическое нам нужно использовать деление.

Ну а теперь цикл, как я и говорил в нем мы сначала введем число, затем проверим его на выполнение условия, если всё ОК, то прибавляем его к общей сумме и кол-во таких чисел увеличиваем на 1 :

for i:=1 to n do
   begin
      write('Введите ', i , ' число : '); readln(number);
      if (number < 10) then 
         begin      
            summa := summa + number;
            count := count + 1;
         end;
   end;

Ну вот теперь нам нужно сосчитать среднее арифметическое, после цикла пишем :

average := summa / count ;

Всё решение задачи Pascal :

uses crt;
var
   summa , i , n, number , count : integer;
   average : real;
begin
clrscr;

write('Введите кол-во чисел : '); readln(n); // просим пользователя ввести число
summa := 0; // чтобы не было ошибок

for i:=1 to n do
   begin
      write('Введите ', i , ' число : '); readln(number);
      if (number < 10) then 
         begin      
            summa := summa + number;
            count := count + 1;
         end;
   end;

average := summa / count ;

writeln('Среднее арифметическое чисел меньше 10 = ', average:3:2);
readln; // чтобы программа не закрывалась
end.

cyber
Оцените автора
CyberLesson | Быстро освоить программирование Pascal и C++. Решение задач Pascal и C++
Добавить комментарий