Задания уровня 1
Упражнение 1.
О каждом студенте известна следующая информация:
• фамилия, инициалы;
• год рождения;
• группа;
• отметка по математике;
• отметка по истории;
• отметка по ВТ;
• отметка по статистике.
Сформировать таблицу, записав в нее известную информацию о каждом студенте и его средний балл. Подсчитать средний балл по каждому предмету, вывести таблицу на экран дисплея в алфавитном порядке.
1. Наберите текст программы:
Program stud; uses crt; Type tablica=record {Описание записи о каждом студенте} name: string[15]; group: string[8]; god: integer; vt, history, stat, math: byte; sr_bal: real; end; var i, j, n :integer; a: tablica; mas:array [1..30] of tablica; {Таблица - массив записей} s_vt, s_history, s_stat, s_math: real; {Переменные для хранения средних значений по предметам} begin write('n='); readln(n); {Ввод количества записей} for i:=1 to n do{Ввод элементов массив записей} with mas[i] do begin writeln('i=',i:4); writeln('FIO'); readln(name); writeln('Group'); readln(group); writeln('Year'); readln(god); writeln('Otsenki'); readln(vt, history, stat, math); sr_bal:=(vt+history+stat+math)/4; end; s_vt:=0; s_history:=0; s_stat:=0; s_math:=0; for i:=1 to n do {Вычисление среднего балла по каждому предмету} begin s_vt:=s_vt+mas[i].vt; s_history:=s_history+mas[i].history; s_stat:=s_stat+mas[i].stat; s_math:=s_math+mas[i].math; end; for i:=1 to n do {Упорядочение записей массива в алфавитном порядке фамилий} for j:=1 to n-1 do if mas[j].name> mas[j+1].name then begin a:=mas[j]; mas[j]:=mas[j+1]; mas[j+1]:=a; end; clrscr; write(' ':4, 'FIO ',' ':4); {Вывод результатов} write(' ':2, ' GROUP ',' ':2); write(' ':2, ' GOD ' , ' ':2); write(' ':5, ' OTSENKI ',' ':5); writeln('Sr/ Bal '); for i:=1 to n do with mas[i] do begin write(name:7); write(' ',group:10); write(' ',god:10); writeln(' ',vt:6, ' ',history:3, ' ',stat:3, ' ',math:3, ' ',sr_bal:6:2); end; writeln(' Sr. Bal: ', ' ', s_vt:26:1, ' ', s_history:3:1, ' ', s_stat:3:1, ' ', s_math:3:1); end.
2. Запустите программу на выполнение и проверьте её работу: Ctrl-F9
3. Для просмотра результатов выполненной программы необходимо нажать: Alt-F5
4. Сохраните программу на своем диске: A:\P11PR1
Задания уровня 2
1. Создайте массив записей, содержащий сведения об альбомах различных групп:
• название группы;
• название альбома;
• год выпуска;
• стиль.
Выведите на экран все альбомы в стиле pop и rock. Сохранить программу под именем P11PR2
2. О сотрудниках некоторого предприятия известно следующее:
• фамилия, инициалы;
• год рождения;
• должность;
• пол.
Сформировать таблицу, записав в нее известную информацию о каждом сотруднике. Вывести на печать информацию о количестве пенсионеров – женщин старше 55 лет и мужчин старше 60 лет. Сохранить программу под именем P11PR3
Задания уровня 3
3. Известна информация о сотрудниках некоторого предприятия:
• фамилия, инициалы;
• год рождения;
• должность;
• стаж;
• оклад.
Сформировать таблицу, записав в нее известную информацию о каждом сотруднике. Создать поле «Зарплата», добавляя 10% к окладу, если стаж работы более 10 лет, и 15%, если более 20. Отсортировать таблицу в алфавитном порядке. Сохранить программу под именем P11PR4
4. Создайте массив записей, содержащий информацию о машинах:
• марка;
• год выпуска;
• цвет;
• номер;
Выведите на экран информацию о машинах черного цвета. Выведите на экран марки машин, номера которых начинаются на букву М. Упорядочьте записи в массиве по возрастанию года выпуска. Сохранить программу под именем P11PR4
Контрольные вопросы:
1. Понятие записи в Паскале.
2. Что называют комбинированным типом данных?
3. Как описывается комбинированный тип данных?
4. Назовите основные типы операций работы с записями.
5. С помощью какой процедуры производится прямой доступ к записям файла?
6. С помощью какого оператора осуществляется доступ к полям записи?