Предмет: Информатика, автор: dmkukov

Pascal ABC. Решите задачу:

Пользователь вводит данные о результатах экзамена в 9-х классах.
В первой строке вводится количество сдавших экзамен (N). Число n не превышает 50.
В каждой из следующий N строк вводятся данные по каждому из сдававших
-фамилия
-имя
-отметки по четырем предметам (математике, русскому языку, информатике и обществознанию).
Все элементы В каждой строке разделены одним пробелом.
Для удобства входные данные можно считывать из файла.
Пример входных данных
4
Иванов Сергей 5 5 4 5
Петров Семен 3 3 4 3
Никонов Сергей 4 3 3 2
Аветисов Артем 5 4 5 5

К ЗАДАНИЮ:
Напишите программу, которая выводит на экран Средний бал по каждому предмету.
Пример входных данных
Средний балл
______________
Математика: 4.25
Русский язык: 3.75
Информатика: 4
Обществознание: 3.75

Приложения:

Ответы

Автор ответа: AnonimusPro
0

Program n1;

type x=record

name: string[50];

surname: string[50];

rus,mat,inf,obc: integer;

end;

var a: array[1..50] of x;

f: text;

s: string;

i,n,r,k: integer;

begin

assign(f,'input.txt');

reset(f);

readln(f,s);

val(s,n,i);

for i:=1 to n do begin

readln(f,s);

a[i].surname:=copy(s,1,pos(' ',s)-1);

delete(s,1,pos(' ',s));

a[i].name:=copy(s,1,pos(' ',s)-1);

delete(s,1,pos(' ',s));

val(copy(s,1,pos(' ',s)-1),r,k);

a[i].mat:=r;

delete(s,1,pos(' ',s));

val(copy(s,1,pos(' ',s)-1),r,k);

a[i].rus:=r;

delete(s,1,pos(' ',s));

val(copy(s,1,pos(' ',s)-1),r,k);

a[i].inf:=r;

delete(s,1,pos(' ',s));

val(s,r,k);

a[i].obc:=r;

end;

close(f);

writeln('Средний балл');

writeln('--------------------');

r:=0;

for i:=1 to n do r:=r+a[i].mat;

writeln('Математика: ',r/n);

r:=0;

for i:=1 to n do r:=r+a[i].rus;

writeln('Русский язык: ',r/n);

r:=0;

for i:=1 to n do r:=r+a[i].inf;

writeln('Информатика: ',r/n);

r:=0;

for i:=1 to n do r:=r+a[i].obc;

writeln('Обществознание: ',r/n);

r:=0;

end.


AnonimusPro: Данные вводятся из текстового файла imput
AnonimusPro: *input
Похожие вопросы
Предмет: Українська мова, автор: yanapodzigun2008