Курсовая работа: Програма яка зображає хід променя в оптичному прозорому середовищі

Список вхідних даних програми складається з: кількості поверхонь, кута падіння променя, коефіцієнта переломлення для кожного середовища.

Після вводу всіх даних програма починає вираховувати всі кути, і координати точок, через які проходить промінь.

Спочатку промінь падає з верхньої точки екрану з координатами (320,0) т.О1. Для знаходження кожної іксової координати точки Оn, використовується формула:

Xn=Xn-1 +∆X;


Де ∆X різниця в одиницях на осі Х між точками Оnі On-1.

∆X=50*cos(αn)/(sin(αn)+0.0000000001);

В останній формулі до sin(αn) додається число 0.0000000001, це робиться для того, щоб при вводі αn=90 уникнути ділення на нуль, так як число дуже маленьке воно не вплине на кінцевий результат. ∆Y=50;

Де ∆Y – різниця на осі Y між точками Оn і On-1, так як поверхності розміщені на однаковій відстані ∆Y= const.

Кожний наступний кут знаходиться за формулою:

αn = π/2 – arcsin (sin(π/2 – αn-1)*kn-1/kn)

Функція arcsin описана в вихідному тексті програми.

Таким чином необхідно побудувати ланцюжка ліній, для проведення кожної із них необхідно вирахувати координати точок, через які будуть вони проведенні.

Описання змінних

Найменування величини Ідентифікатор Тип Коментар
Кількість шарів n Integer Вхідний тип
Кут заломлення A[i] Real Вхідний тип
Показник переломлення A1 Real Вхідний тип
Ініціалізація графічного режиму Gd, gm Integer Вхідний тип

3. Описання алгоритму

Головна програма

Крок 0: Процедура вводу inp;

Крок 1: Процедура розрахунку даних raz4et;

Крок 2: Процедура ініціалізації графіки prepare;

Крок 3: Процедура виводушарів Lines;

Крок 4: Процедура виводукута Out;

Описання процедури inp:

Крок 0: Ввід кількостішарів;

Крок 1: Ввід кута паденняпроменя;

Крок 2: Цикл «for» iвід 1 до n:

Крок 3: Вводимо i-й коефіц. заломлення

Описання процедури raz4et:

Крок 0: Ініціюємо початкову точку випроміненняпроменя;

Крок 2: Переводимокут падіння з градусів в радіани;

Крок 3: Розраховуємо різницю координат по іксу;

К-во Просмотров: 189
Бесплатно скачать Курсовая работа: Програма яка зображає хід променя в оптичному прозорому середовищі