Курсовая работа: Разработка базы данных, отражающей учет успеваемости студентов
«Кто принимал экзамен» - фамилия преподавателя, принимавшего данный предмет.
«Найти размер стипендии» - размер стипендии выбранного студента.
«Вывод по оценке» - показать всех студентов, получивших данную оценку.
«Дата сдачи экзамена» - найти даты, когда принимался данный предмет.
В запросах используются реальные названия предметов, фамилии студентов, а не их номера (для студентов например номер соответствует номеру студенческого билета).
Больше в программе меню такого типа нет, но есть много строчного ввода, например выполним запрос с поиском оценок. После запроса экран будет выглядеть так (искали четверочников):
Результат запроса отображается красным цветом.
Описание используемых процедур.
В приложении используются как глобальные, так и локальные переменные. К глобальным переменным относятся:
1) names,namer:string[10] – строковые переменные, которые вынесены в глобальные, чтобы сделать программу более компактной. Иначе бы в разных процедурах надо было вводить аналогичные типы данных, а так можно обойтись лишь парой глобальных переменных.
2) key,kr:char – символьные переменные. В переменной key хранится код нажатой клавиши. А в переменной kr находится текущее положение звездочки. Звездочка будет рассмотрена ниже.
3) tek,i,j,izm:integer – целочисленные переменные. Из них i и j –циклические, временные переменные. Tek и izm показывают, какое меню активно в текущий момент. Они помогают понять программе от какого меню к какому перешли, тоесть помогает восстановить последовательность действий.
4) exist,vfile,issor:boolean – Логические переменные. Exist – служит для выхода из программы. Vfile – позволяет пускать одну процедуру по двум путям – либо выводить данные на экран, либо в файл. Issor – показывает меню выбора таблиц, что следующим шагом должна быть сортировка данной таблицы.
5) nast:pered – Типизированная переменная, в которой хранятся строки текущего меню. Описание типа pered имеется в модуле:
pered=record
st:array[1..12] of string;
m:byte; {количество строк в меню}
end;
temr,tt1,tt2,tt3,tt4:cc – Таблицы базы данных. Тут tt1 – таблица с данными о студентах, tt2 – предметы, tt3 – преподаватели, tt4 – оценки (успеваемость). Temr – временная таблица. Все эти переменные являются динамическими списками. Они описаны в файле tips.pas:
tabl2=record {Сама таблица }
t1, t2, t3, t4, t5: string[12]; {Состоит из строк}
end;
cc=^tab;
tab= record {Создание динамического списка}
tabl:tabl2;
sled:cc;
end;
Программа отвечает на то, какую клавишу нажал пользователь и передает управление процедуре main. Процедура readkey используется в основном блоке программы. Для работы с управляющими клавишами используются их коды в таблице ISCII. Тут:
80 – курсор вверх