ином, вигідно протягом одного ходу забивати відразу кілька куль. p>) При переході на наступний рівень кількість очок буде нараховуватися за формулою.
) При закінченні 99-го рівня, рівень переключиться в значення 01, а користувач отримає 10000 очок додатково.
1.2 Математичні моделі, що використовуються в програмі
Іншим найважливішим компонентів подібних ігор є фізико-математичний апарат. Стосовно до більярду слід виділити такі що вимагають особливої вЂ‹вЂ‹уваги моменти: визначення початкової швидкості кулі (коли його тільки що вдарили києм), визначення напрямку кулі при зіткненні зі стінкою і з іншими кулями, визначення такого зіткнення. p> Початкова швидкість б'є кульки повинна обчислюватися на основі наступних даних: вектор, проведений з центра кулі до покажчика, сила удару. Початкова швидкість знаходиться рішенням наступної системи рівнянь:
.
При зіткненні зі стінкою відповідна складова повинна міняти знак.
При зіткненні куль їх швидкості перераховуються за наступним алгоритмом:
impactx = ball [j]. vx-ball [i]. vx; = ball [j]. vy-ball [i]. vy; = RasstTT (ball [i]. x, ball [i]. y , ball [j]. x, ball [j]. y);// Відстань від точки до
1.3 Аналіз предметної області, з'ясування вимог до програмного продукту
Підсумком дослідження предметної області програмного продукту повинне бути виявлення вимог до функціональних можливостей проекту. Додавши сюди загальноприйняті, зрозумілі без доказів і коментарів вимоги, отримуємо наступний набір:
) Програма повинна реалізовувати гру в більярд в двомірному виконанні;
) Підрахунок очок повинен здійснюватися з урахуванням складності ходу і номери рівня;
) Розрахунок швидкостей куль повинен перераховуватися, виходячи з наведених законів фізики;
) Програма повинна мати таблицю кращих результатів за очками, зберігається на диску;
) Введення імені гравця повинен вводитися один раз перед грою, щоб не запитувати ім'я при кожному попаданні в таблицю рекордів;
) Програма повинна мати початкове меню, за допомогою якого можна буде запустити саму гру, змінити ім'я гравця, переглянути таблицю рекордів, а також вийти з програми.
Висновки
. Досліджено предметна область. Розглянуто можливі варіанти побудови комп'ютерної реалізації гри в більярд. p>. Побудовано математичну модель програми. p>. Визначено функціональні вимоги до проекту. br/>
2. Проектування програмного продукту
Для реалізації проекту на основі висунутих вимог слід спочатку визначити архітектуру програми. Побудова архітектури дуже важливо для програміста: на цьому етапі вся завдання структурується, визначаються компоненти програми та їх взаємодія. Результат саме етапу проектування використовується програмістом в якості відправної точки при реалізації проекту. Чим більше буде витрачено сил і часу на проектування, ...