Программеры ВЫРУЧАЙТЕ!Напишите программу, по которой будут введены данные из файла, и

Программеры ВЫРУЧАЙТЕ!
Напишите программу, по которой будут введены данные из файла, и выполнена последующая обработка: 1) определение среднего роста и среднего веса всех воспитанников; 2) вывод на экран и в файл rost.txt перечня (фамилии, имена, возраст) учеников, рост которых выше среднего; 3) вывод на экран и в файл ves.txt перечня воспитанников, вес которых ниже среднего.

Задать свой вопрос
Семик Ратенко
и на его подобие необходимо написать новейшую программу о росте и весе.
Нина Иосевич
И для чего он нужен, если совершенно напрасен?
Витя Шилакадзе
задание так звучит.
Тимур
Да наверняка Вы брали оба задания из разных вариантов, вот они и не стыкуются. Вы что, вправду так в предмете на разбираетесь, что не видите этого?
Лидия Бострыкина
придраться не к чему?
Тимур
теперь безмятежны?
Тимур Евлашев
То, что Вы представили в качестве задания, - это приблизительно как придти в портному и сказать: "Мне необходимо бальное платьице, вот Для вас примерный фасон на базе мужских трусов"
Арсений
если в учебнике так звучит, я что сделаю? все претензии к творцу. До свидания.
Авагимян Алексей
Рано прощаетесь. На этом Сервисе создатель вопроса - Вы, а не какой-то ваш источник заданий. Почему как раз претензии к Для вас.
Милена
до свидания.
1 ответ
//PascalABC.NET 3.0, сборка 1088
begin
  var a:=ReadLines('infile.txt').ToArray;
  var n:=a.Length;
  Writeln('*** Начальная информация ***');
  // фамилия, имя, возраст, рост, вес
  a.PrintLn(NewLine);
  Writeln('*** Задание 1 ***');
  var sves:real:=0;
  var srost:real:=0;
  foreach var s in a do begin
    srost+=StrToFloat(s.ToWords.ElementAt(3));
    sves+=StrToFloat(s.ToWords.ElementAt(4))
    end;
  Writeln('Средний рост равен ',srost/n:5:1);
  Writeln('Средний вес равен ',sves/n:4:1);
  srost/=n; sves/=n;
  Writeln('*** Задание 2 ***');
  var f2:=OpenWrite('rost.txt');
  foreach var s in a do begin
    var ss:=s.ToWords;
    var rost:=StrToFloat(ss.ElementAt(3));
    if rostgt;srost then begin
      var s0:=ss.Take(3).ToArray;
      var s1:=s0[0]+' '+s0[1]+', '+s0[2];
      Writeln(s1);
      Writeln(f2,s1)
      end
    end;
  f2.Close;
  Writeln('*** Задание 3 ***');
  f2:=OpenWrite('ves.txt');
  foreach var s in a do begin
    var ss:=s.ToWords;
    var ves:=StrToFloat(ss.ElementAt(4));
    if veslt;sves then begin
      var s0:=ss.Take(3).ToArray;
      var s1:=s0[0]+' '+s0[1]+', '+s0[2];
      Writeln(s1);
      Writeln(f2,s1)
      end
    end;
  f2.Close
end.

Тестовое решение:
*** Начальная информация ***
Иванов Игорь 14 158 47.4
Петров Павел 14 161 58.3
Козлов Кирилл 15 160 60.3
Сидорова Мария 14 156 45.9
Тяпкина Наталья 15 158 46
Ляпкин Алексей 15 161 58.6
Мамочкин Константин 14 157 52.8
*** Задание 1 ***
Средний рост равен 158.7
Средний вес равен 52.8
*** Задание 2 ***
Петров Павел, 14
Козлов Кирилл, 15
Ляпкин Алексей, 15
*** Задание 3 ***
Иванов Игорь, 14
Сидорова Мария, 14
Тяпкина Наталья, 15

, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт