Технический форум

Технический форум (http://www.tehnari.ru/)
-   Форум программистов (http://www.tehnari.ru/f22/)
-   -   Помогите решить, пожалуйста. (http://www.tehnari.ru/f22/t36859/)

narkas 09.06.2010 22:34

Помогите решить, пожалуйста.
 
написать программу на паскале,которая использует файл записей следующей структуры:
-Имя;
-Возраст;
-Вес.
выводит все данные в табличном виде и определяет, чей вес превышает средний
:tehnari_ru_325:

MrSTEP 09.06.2010 23:00

А дайте-ка угадаю: вы студент, ваша будущая профессия не имеет отношения к компьютерам, и вы в программировании очень слабы, но преподы настаивают на сдаче?
Ну завтра выложу, если успею

narkas 10.06.2010 20:17

ну да я математик,с дополнительной специальностью информатика)))))))но матема больше изучаю)))))))

MrSTEP 11.06.2010 01:31

Коли уж доп.специальность идет как информатика, то вы должны хотя бы уметь составлять алгоритмы. итак, в кратце, что вам необходимо:
в цикле ввести поля для каждой записи; сразу же при вводе суммировать вес и по окончании поделить его на количество человек. Затем вывести все записи, после - имена тех людей, чей вес больше среднего. Ничего сложного в этом нет, с файлами и таблицами надо просто разобраться (да как, впрочем, и со всем остальным). Сегодня задачу не получилось выложить, но на днях постараюсь, уже решал похожую

MrSTEP 14.06.2010 13:57

Найти похожее не удалось, написал сам
Код:

uses crt;
type student=record
        name:string[20];
        age,weight:byte;
        end;
var group:array [1..50] of student;
      i,n:byte;
      averweight:real;
      f: file of student;
begin clrscr;
          write ('Enter amount of students: ');
          readln (n);
          writeln ('Enter the information about students:');
          assign (f,'group.dat');
          rewrite (f);
        for i:=1 to n do begin
          with group[i] do begin
          write ('Name: ');
          readln (name);
          write  ('Age: ');
          readln (age);
          write ('Weight: ');
          readln (weight);
          averweight:=averweight+weight;
          end;
          write (f,group[i]);
          writeln;
        end;
        clrscr;
        averweight:=averweight/n;
        writeln ('Average weight is ',averweight:4:2);
        close (f);
        reset (f);
        writeln ('N':5, 'Name':22, 'age':5, 'weight':8, 'Weight is above the averege':30);
        for i:=1 to n do begin
          read(f,group[i]);
          with group[i] do
          write (i:5, name:22, age:8, weight:5);
          if group[i].weight>averweight then
            writeln ('Yes':10)
          else
            writeln;
        end;
        close(f);
        readkey;
end.

Разбирайтесь


Часовой пояс GMT +4, время: 22:41.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.