Практическое задание N 1. 23


 

1. Рассчитать средний балл по шести предметам для каждого из десяти учащихся. Массивы наименований предметов и фамилий учащихся задать в программе. Массив оценок "A" задать с использованием функции Random. Вывести на экран таблицу: Фамилии (по вертикали), предметы (по горизонтали), все оценки, а также колонку со средними значениями оценок каждого учащегося. Вывести фамилии учеников и наибольшим и наименьшим средним баллом.

2. Исходя из данных массива "A" п. 1, создать массивы "B", "C", "D", содержащие число пятерок, четверок и троек соответственно, полученных каждым учеником по всем шести предметам. Вывести на экран таблицу: фамилии, предметы, оценки с колонками данных массивов "B", "C", "D".

 

Примечание к п. п. 1- 2 : Вывести гистограммы с указанием фамилии ученика и его среднего балла, либо число троек полученных по всем предметам.

 

3. Модифицировать массив. Исходные данные п. 1. Вставить в список учащихся новую фамилию ученика с номером 5. Фамилию и оценки ученика ввести оператором Read. Убрать из таблицы предмет с номером два. Вывести на экран исходную и новую таблицы - фамилии, предметы, массив оценок.

4. К заданию п. 1. Создать два массива оценок учеников с четными и нечетными номерами. Вывести на экран таблицы - массивы оценок для каждой группы с указанием предметов и фамилий учащихся.

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

6. К заданию п. 1. Создать и вывести на экран таблицу фамилий десяти учеников, имеющих пятерки по шести, пяти, и т. д. предметам в порядке убывания.

Для этого создать линейный массив "B" - число пятерок у каждого ученика. Создание нового массива фамилий "S1" можно проводить используя циклы: k:=0; for i:=1 to 10 do for o:=6 downto 0 do if B[i]=o then k:=k+1; S1[k]:=S[i];

 

 

Создание баз данных с использованием массивов записей

 

 

При работе с записями можно использовать массивы в полях записи или создавать массивы записей. Приведем примеры операторов для обоих случаев.

 

Type Pupil = Record

Fam: String[20];{ Фамилия }

Name: String[10];{ Имя }

Otmetka: array[1..5] of Byte{ Отметки по пяти предметам }

end;

Var _10_A, _10_B: array[1..30]of Pupil;{Переменные типа массив записей }

N, i: byte;{ N - Число учеников в классе }

Begin N:= 13;

_10_A[1]. Fam:= 'Гришин';

_10_A[1]. Name:= 'Анатолий';

{ и т. д. }

Writeln ('Введите оценки учеников по первому предмету: ');

For i:= 1 to N do begin

With _10_A[i] do Begin

Write(Fam:21, Name:11, '_');

Readln(Otmetka[1])

End

End

End.

{---------------------------------------------------------------- }

Type pupil = Record{ массивы в полях записи }

Fam: array[1..30] of String[20];{ Фамилия }

Name: array[1..30] of String[10];{ Имя }

N: Byte;{ Число учеников в классе }

Otmetka: array[1..5, 1..30] of Byte{ Отметки по пяти предметам }

end;

Var _10_A, _10_B: Pupil;{ Переменные типа запись }

i: byte;

Begin

With _10_A do Begin N:= 13;

Fam[1]:= 'Гришин';

Name[1]:= 'Анатолий'; { и т. д. }

Writeln ('Введите оценки учеников по первому предмету: ');

For i:= 1 to N do begin

Write(Fam[i]:21, Name[i]:11,'_');

Readln(Otmetka[1, i])

End

End

End.



Дата добавления: 2016-06-29; просмотров: 1766;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.009 сек.