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

altynai0504 altynai0504    3   13.07.2019 22:10    0

Ответы
Gasdsa Gasdsa  03.10.2020 03:22
Const n=10;
var
a: array[1..n] of integer;
i, km, kf, tm, tf: integer;
sm, sf: real;
begin
for i:=1 to n do
  readln(a[i]);  //считываем массив
km:=0; kf:=0; tm:=0; tf:=0;
for i:=1 to n do
//находим суммарный рост мальчиков
//и девочек, и количество
  if a[i] < 0 then
  begin
    km:=km+1;
    tm:=tm + abs(a[i]);
  end
  else
  begin
    kf:=kf+1;
    tf:=tf + a[i];
  end;
//находим среднее арифметическое
if km > 0 then
sm:=tm/km;
if kf > 0 then
sf:=tf/kf;
writeln('Средний рост мальчиков: ', sm);
writeln('Средний рост девочек: ', sf);
end.
Данные о росте учащихся класса хранятся в виде массива. рост мальчиков кодируется знаком минус, а ро
ПОКАЗАТЬ ОТВЕТЫ
лимпоьип лимпоьип  03.10.2020 03:22
// PascalABC.NET 3.0, сборка 1128
begin
  var n:=ReadInteger('Количество учеников: ');
  Writeln('Вводите рост учеников (девочек - с минусом)');
  var a:=ReadArrInteger(n);
  WriteFormat('Средний рост мальчиков {0}, девочек {1}',
    a.Where(x->x>0).Average,-a.Where(x->x<0).Average)
end.

Тестовое решение:
Количество учеников:  5
Вводите рост учеников (девочек - с минусом)
160 -156 162 -160 -158
Средний рост мальчиков 161, девочек 158
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика