Створення міні-ігри – Магічний квадрат
Відділ освіти Жлобинського райвиконкому
Державна установа освіти
«Середня загальноосвітня школа № 11 м. Жлобіна»
Навчально-дослідницька робота з інформатики
Створення міні-ігри "Магічний квадрат"
учениця 8 «А» класу
середньої школи № 11 м. Жлобіна
Чупругіна Наталія Анатоліївна
ЗОШ № 11 м. Жлобіна
Тема моєї науково-дослідної роботи "Створення міні-ігри "Магічний квадрат"". Я зацікавилася ідеєю створення математичної міні-ігри. Наявних знань мови програмування Pascal виявилося недостатньо, хоча б тому, що він не дозволяє створювати програми з привабливим і зручним інтерфейсом. Переді мною постали дві проблеми: 1) методи заповнення квадратної матриці; 2) вибір мови програмування для реалізації гри. Перша проблема легко зважилася після вивчення відповідної літератури. Над другою довелося попрацювати. Було обрано мову програмування Delphi, ядром якого є Pascal. Вивчалася спеціальна література, надали допомогу інтернет-форуми з деяких питань.
Робота актуальна для тих, хто хотів би розпочати оволодіння мовою програмування Delphi. Народна мудрість каже: «Нікого нічого не можна навчити, але всьому можна навчитися». Приклад створення міні гри «Магічний квадрат» можна навчитися використовувати компоненти, оформляти процедури, змінювати властивості об'єктів, обробляти події. А практичний вид пізнання – найефективніший вид пізнання.
Особисто для мене ця робота є великим кроком у вивченні і, найголовніше, у практичному застосуванні мови програмування високого рівня.
Об'єктом дослідження є програмування мовою Delphi.
Предмет дослідження – розробка програм створення міні-ігор мовою програмування Delphi.
Метою нашого дослідження було:
теоретичне обґрунтування та розробка програми створення міні гри «Магічний квадрат».
- проаналізувати призначення та можливості Delphi;
- проаналізувати шляхи вирішення проблем створення міні-ігор мовою Delphi;
- розробити програму міні-ігри «Магічний квадрат»
То це забезпечить
- розвиток та прикладне застосування навичок програмування;
- Отримання навичок програмування в популярній системі програмування Delphi;
- неформальне засвоєння матеріалу з програмування мовою Delphi.
Відповідно до мети і гіпотезою дослідження ставилися і вирішувалися такі:
Написати програму створення міні-ігри "Магічний квадрат", яка, по-перше, генерує поле магічного квадрата 3×3 з деякими порожніми клітинами; по-друге, перевіряє, чи є заповнена квадратна матриця «магічним» квадратом.
Теоретична частина
МАГІЧНИЙ КВАДРАТ, квадратна таблиця з цілих чисел, в якій суми чисел вздовж будь-якого рядка, будь-якого стовпця та будь-якої з двох головних діагоналей дорівнюють тому самому числу.
Магічний квадрат – давньокитайського походження. Згідно з легендою, за правління імператора Ю (бл. 2200 до н.е.) з вод Хуанхе (Жовтої ріки) випливла священна черепаха, на панцирі якої були накреслені таємничі ієрогліфи (рис. 1, а), і ці знаки відомі під назвою ло-шу і рівносильні магічному квадрату, зображеному на рис. 1, б. У 11 ст. про магічні квадрати дізналися в Індії, а потім у Японії, де у 16 ст. магічним квадратам була присвячена велика література. Європейців із магічними квадратамипознайомив у 15 ст. візантійський письменник Е.Мосхопулос. Першим квадратом, придуманим європейцем, вважається квадрат А.Дюрера (рис. 2), зображений на його знаменитій гравюрі Меланхолія 1. Дата створення гравюри (1514) вказана числами, що стоять у двох центральних клітинах нижнього рядка. Магічним квадратам приписували різні містичні властивості. У 16 ст. Корнелій Генріх Агріппа побудував квадрати 3-го, 4-го, 5-го, 6-го, 7-го, 8-го та 9-го порядків, пов'язаних з астрологією 7 планет. Було повір'я, що вигравіруваний на сріблі магічний квадрат захищає від чуми. Навіть сьогодні серед атрибутів європейських віщунів можна побачити магічні квадрати.


Мал. 2. КВАДРАТ ДЮРЕРА.
У 19 та 20 ст. інтерес до магічних квадратів спалахнув з новою силою. Їх почали досліджувати за допомогою методів вищої алгебри та операційного обчислення.
Кожен елемент магічного квадрата називається клітиною. Квадрат, сторона якого складається з n клітин, містить n 2 клітин і називається квадратом n-го порядку. Більшість магічних квадратів використовуються перші n послідовних натуральних чисел. Сума S чисел, що стоять у кожному рядку, кожному стовпці та на будь-якій діагоналі, називається постійною квадрата і дорівнює S = n(n 2 + 1)/2. Доведено, що n ≥ 3. Для квадрата 3-го порядку S = 15, 4-го порядку – S = 34, 5-го порядку – S = 65.
Дві діагоналі, що проходять через центр квадрата, називають головними діагоналями. Ломаною називається діагональ, яка, дійшовши до краю квадрата, продовжується паралельно першому відрізку від протилежного краю (таку діагональ утворюють заштриховані клітини на рис. 3). Клітини, симетричні щодо центру квадрата, називаються кососиметричними. Такі, наприклад, клітини a та b на рис. 3.
Мал. 3.ЛАМАНА ДІАГОНАЛЬ І КОСОСИМЕТРИЧНІ КЛІТИНИ
Магічні квадрати непарного порядку можна збудувати за допомогою методу французького геометра 17 ст. А. де ла Лубера. Розглянемо цей спосіб з прикладу квадрата 5-го порядку (рис. 4). Число 1 міститься в центральну клітину верхнього рядка. Всі натуральні числа розташовуються в природному порядку циклічно знизу нагору в клітинах діагоналей праворуч наліво. Дійшовши до верхнього краю квадрата (як у випадку числа 1), продовжуємо заповнювати діагональ, що починається від нижньої клітки наступного стовпця. Дійшовши до правого краю квадрата (число 3), продовжуємо заповнювати діагональ, що йде від лівої клітини рядком вище. Дійшовши до заповненої клітини (число 5) або кута (число 15), траєкторія спускається одну клітину вниз, після чого процес заповнення триває.

Мал. 4. МЕТОД ДІЛА ЛУБЕРА.
Практична частина
Програмування – це процес створення (розробки) програми, який може бути представлений послідовністю наступних кроків:
1. Специфікація (визначення, формулювання вимог до програми).
2. Розробка алгоритму.
3. Кодування (запис алгоритму мовою програмування).
6. Створення довідкової системи.
7. Створення інсталяційного диска (CD-ROM).
Специфікація
Специфікація, визначення вимог до програми — одне із найважливіших етапів, у якому докладно описується вихідна інформація, формулюються вимоги до результату, поведінка програми у випадках (наприклад, під час введення невірних даних), розробляються діалогові вікна, які забезпечують взаємодію користувача і програми.
На цьому етапі я визначила послідовність етапів створення програми.
1. Створення та оформлення вікна програми – головної форми.
2. Заповнення полів-клітин магічного квадрата (передбачити захист від введення користувачем символів, крім чисел).
3. Перевірка квадратної матриці на предмет, чи є магічним квадратом.
4. Оформлення діалогового вікна "Магічний квадрат", що викликається однойменною командою головного меню.
5. Оформлення діалогового вікна «Правила гри», що викликається однойменною командою головного меню.
Підібрала необхідну інформацію для створення програми. Визначила, як має виглядати результат (Малюнок 5).

Мал. 5. «МАГІЧНИЙ КВАДРАТ»
Розробка алгоритму
На етапі розробки алгоритму необхідно визначити послідовність дій, які треба виконати для отримання результату. Якщо завдання може бути вирішена декількома способами і, отже, можливі різні варіанти алгоритму розв'язання, то програміст, використовуючи певний критерій, наприклад, швидкість розв'язання алгоритму, вибирає найбільш відповідне рішення. Результатом етапу розробки алгоритму є докладний словесний опис алгоритму чи його блок-схема.
Далі наводиться словесний опис алгоритму
1. Створення та оформлення вікна програми – головної форми
1.1 Вибір та розміщення на формі компонентів
У ObjectInspector на вкладці Properties значення властивості Position встановити PoScreenCenter – щоб після запуску програми, форма з'являлася у центрі екрана. Name – Form1.