Привет! Помогите, пожалуйста, очень срочно!!! составить алгоритм, написать программу,...

0 голосов
51 просмотров

Привет! Помогите, пожалуйста, очень срочно!!!

составить алгоритм, написать программу, которая определяет количество учеников в классе из 25 человек, чей рост превышает средний. Исходные данные должны вводиться во время работы программы.

Спасибо!!!


Информатика (19 баллов) | 51 просмотров
Дано ответов: 2
0 голосов
Правильный ответ

Пишу задание вторым номером, поэтому постараюсь на качество.

Нам нужно найти сначала сумму всего роста, потом поделить его на общее количество учеников. Потом сопоставить каждый элемент со средним числом и высчитать количество высоких учеников.

Будет это выглядить так:

 

uses crt; //Если используете паскаль ABC, это строка нужна для удобства

Var a: array [1..25] of real; i,otvet: integer; h,s:real;

//Объявляем переменные. Массив,среднее число и суммарный рост - любые числа. Сам ответ - целые числа

Begin

  For i:=1 to 25 do begin
                      Writeln('Введите рост ученика номер  ',i); readln(a[i]); 

                           //Здесь мы вводим рост с клавиатуры
                    end;
  For i:=1 to 25 do
   s:=s+a[i];  

    //находим суммарный рост всех учеников
   h:=s/25;
   // делим на их количество. Теперь переменная h - это средний рост
 For i:=1 to 25 do
  if a[i]>h then otvet:=otvet+1;
  // А здесь проверяем каждый элемет массива. Если он выше значения среднего роста, мы прибавляем единицу к переменной "otvet". Там мы считаем количество высоких уч.
  Writeln('Средний рост в классе равен ',h);
 Writeln('Количество высоких учеников в классе равно  ',otvet);

//вывод данных
end.

(1.7k баллов)
0 голосов

var

  a:array [1..25] of integer;

  i,k:integer;

  s:real;

begin

  s:=0;

  for i:=1 to 25 do

   begin

     write ('A[',i,'] = ');

     readln(a[i]);

     s:=s+a[i];

   end;

  s:=s/25;

  k:=0;

  for i:=1 to 25 do

   if a[i]>s then k:=k+1;

  writeln ('Kol-vo: ',k);

  readln;

end.

(2.8k баллов)