|
|
|
|
|
|
|
Рис.4.1. Схема взаимосвязей процедур и функций
Функции:
ReCalc (n: real; n1: real; alpha: real): real – возвращает угол преломления. n, n1 – показатели преломления, alpha – угол падения.
Menu(number: Integer): Integer – реализует работу с меню, возвращает выбранный пункт. number – предыдущий выбранный пункт меню.
ChangeN(flag: integer): real – возвращает новое значение показателя преломления. Если flag равен 1 – задается для первой среды, если 2 – для второй.
ChangeAl(n: real; n1: real; alpha: real): real – возвращает новое значение угла падения. n, n1 – показатели преломления, alpha – угол падения.
arcsin (x: real): real – возвращает арксинус аргумента x.
Процедуры:
MainCycle() – выполняет основной цикл программы.
GraphMode() – выполняет инициализацию графического режима.
Paint(n: real; n1: real; alpha: real) – отображает график, демонстрирующий преломление луча. n, n1 – показатели преломления, alpha – угол падения.
Recv() – выполняет вывод на экран реквизитов пользователя. Реквизиты хранятся в файле recv. txt.
SaveData(n: real; n1: real; alpha: real) – выполняет запись результатов в файл result. txt. n, n1 – показатели преломления, alpha – угол падения.
Info() – отображает на экран информацию о преломлении лучей.
LoadData(var n: real; var n1: real; var alpha: real) – выполняет загрузку данных из файла. n, n1 – показатели преломления, alpha – угол падения.
OutTextChangeAl() – выводит на экран вспомогательный текст при смене значения угла.