Міністерство освіти і освіти України p>
Таганрозький державний радіотехнічний університет p>
Кафедра обчислювальної техніки p>
Курсова робота p>
За курсом «Технологія програмування» p>
Тема: "Ігрова програма" TETRIS " p>
Виконав: студент гр. ВЗ-107 Афонін В.Ю. p>
Проверил: к. т. н., Доцент Цехоня В'ячеслав p>
Іванович p>
Таганрог - 2000 p> < p> Завдання.
Написати на мові PASCAL і налагодити в інтерактивному режимі ігровупрограму TETRIS.
Основну увагу необхідно приділити процесу спадного поуровневогопроектування алгоритму. p>
Зміст.
1. Технічне завдання
.................................................. ............. ... ..........стор 3.
2. Практична частина.
2.1. Пояснювальна записка (технічний проект)
................. .... ... ........ стор 4.
2.2. Керівництво (системного) програміста
........................ ... .... ... ...... стор 7.
2.3. Керівництво оператора (користувача)
............................... ... ... ....... стор 8.
2.4. Опис програми
.................................................. .......... .... ... ..... стор
9.
3. Висновок
.................................................. ..........................< br>..... ... ........ стор 10.
4. Література
.................................................. ..........................< br>...... ... ........ стор 11.
5. Програми.
5.1. Текст програми
.................................................. ................... ... ......< br>.. стор 12. p>
Технічне завдання (ГОСТ 19.201-78).
1.Вступ.
Назва програми - "TETRIS". Застосування програми - в області ігровихпрограм.
2. Підстава для розробки.
Виконання курсової роботи.
3. Призначення розробки.
Дана програма є ігровий, вона застосовується для розвагикористувачів, вдосконалення їх координації руху і логічногомислення.
4. Вимоги до програми.
4.1. Вимоги до функціональних характеристик.
До складу програми входять функції відображення на екрані двужущіхся фігурок,паралельного перенесення їх вправо і вліво, повороту навколо власної осі,швидкого падіння на дно короба і ряд допоміжних функцій (контрольнакладення фігур, відображення елементів фігур і т.д.).
Вхідні дані - коди клавіш клавіш.
Вихідні дані - графічна інформація, що виводиться на екран.
У роботі програми тимчасові характеристики несуттєві.
4.2. Вимоги до надійності.
Надійне функціонування програми забезпечується перевіркою накладення припереміщення фігур і обмеженням, що накладається на набір вхідних даних
(коди натиснутих клавіш ігноруються, якщо ці клавіші не єкеруючими в грі).
4.3. Вимоги до складу і параметрів технічних засобів ЕОМ, зовнішніпристрої, їх характеристики.
Для функціонування програми потрібна персональна ЕОМ з процесором
8086/8088, від 640 кілобайт оперативної пам'яті, відеоадаптер VGA/EGA івідповідний монітор. Інші зовнішні пристрої для роботи програми непотрібні.
4.4. Вимоги до інформаційної та програмної сумісності ОС, системапрограмування, що використовуються програмні засоби, методи рішення,інформаційні структури і т.п.
Для функціонування програми потрібно ОС MS-DOS версії 3.30 або вище, від
32 кілобайт вільної оперативної пам'яті. Програма розроблена вінтегрірірованной середовищі Turbo Pascal версії 7.0.
4.5. Спеціальні вимоги.
Спеціальні вимоги відсутні.
5. Вимоги до програмної документації.
Вимоги до програмної документації відсутні.
6. Техніко-економічні показники. Орієнтовна економічнаефективність, переваги в порівнянні з аналогами.
Перевагою в порівнянні з аналогом є постійне збільшенняшвидкості гри. p>
Практична частина. p>
Пояснювальна записка (ГОСТ 19.404-79)
1. Введення
Назва програми - "TETRIS", основу розробки - виконаннякурсової роботи.
2. Призначення та область застосування програми.
Призначення програми - розвага тих, що грають, вдосконалення їхкоординації і логічного мислення. Програма може застосовуватися в якостіігровий на різних типах персональних комп'ютерів.
3. Технічні характеристики.
3.1. Постановка завдання на розробку, опис методів вирішення.
Розробити алгоритм програми, що здійснює пересування фігур по екранузверху вниз, координацію їх розташування відповідно до дійщо грає.
Фігури складаються з квадратів однакового розміру, набір фігур кінцевий,послідовність появи фігур повинна бути випадковою, причому появифігур повинні бути рівноймовірно. Гравець повинен укладати фігури на дноскриньки з найбільшою щільністю (кількість незаповнених квадратів маєбути мінімальним). При цьому якщо шар, повністю заповнений квадратами,повинен автоматично вилучатися з шухляди. Квадрати фігур не повиннінакладатися один на одного. Поворот фугри навколо своєї осі повиненздійснюватися таким чином, щоб не були зачеплені інші фігури, стінки,дно ящика.
3.2. Опис алгоритму і/або функціонування програми
p>
3.3. Опис і обгрунтування вибору методу організації даних.
| Дані | Метод організації |
| Постать | Двовимірний масив-найбільш |
| | Природне уявлення, |
| | Наприклад: |
| | |
| Ящик | Двовимірний масив, елемент |
| | Якого-ціле число - |
| | Відповідає вільною або |
| | Зайнятій комірці. |
| Каталог фігур | Масив з наведених вище матриць. |
| Ширина, висота скриньки, кількість | Константи |
| квітів і фігур; прапори накладення, | |
| досягнення дна ящика, вільної | |
| осередку та ін | | p>
3.4. Опис і обгрунтування вибору складу технічних і програмнихкоштів.
Для написання програми була вибрана мова Паскаль. Відмова від бібліотеки Turbo
Vision був продиктований неможливістю роботи з цією бібліотекою вграфічному режимі.
4. Очікувані техніко-економічні показники.
Очікувана розробка буде відрізнятися низькими вимогами до апаратноїчастини ЕОМ.
5. Джерела, використовувані при розробці.
При розробці використовується стаття "Новий мотор для старої ідеї" з журналу
"Монітор" № 3 за 1994 рік.
Програми відсутні. P>
Керівництво (системного) програміста (ГОСТ 19.504-79).
1. Призначення і умова застосування програми.
Призначення програми - розвага тих, що грають, вдосконалення їхкоординації і логічного мислення. Програма може застосовуватися в якостіігровий на різних типах персональних комп'ютерів і поширюється наумовах freeware.
2. Характрістікі програми.
Програма запускається під управлінням операційної системи MS-DOS версії
3.30 і вище з каталогу, в якому міститься версією драйвераegavga.bgi. Для її роботи потрібно від 32 кілобайт вільної оперативноїпам'яті, відеоадаптер EGA/VGA і процесор 8086/8088 і вище.
3. Звернення до програми.
Звернення до програми здійснюється командою tetris.
4. Вхідні та вихідні дані.
Вхідні дані - коди натиснутих в режимі реального часу клавіш. Вихіднідані - графічна інформація на дисплеї.
5. Повідомлення (повідомлення системному програмісту).
Для нормальної (без затримки) роботи програми на ЕОМ AT 286 або ЕОМ
PC XT рекомендується зменшити значення, що присвоюється змінної speed, у 2 - p>
3рази. За аналогією рекомендується збільшити це значення при використанніпрограми на ЕОМ AT 486 і PENTIUM. Після цього програму рекомендуєтьсяпереконфігурувати.
6. Структура програми.
Оригінальний текст програми зберігається в 1-м фото: tetris.pas.
Компіляція в турбо-середовищі здійснюється з використанням файлу tetris.pas.
7. Налаштування програми.
Програма готова до роботи, налаштування не вимагає.
8. Перевірка програми.
Перевірка працездатності програми здійснюється в наступних випадках:
- Незавісаніе фігури при падінні;
- Падіння фігури до дна ящика;
- Невихід фігури за кордону скриньки;
- Зрушення фігури і поворот її на відстані від стінок;
- Зрушення фігури поблизу стінки і поворот її (при цьому не повинно відбуватися накладення фігури на кордон скриньки);
- Ненакладення фігури при досягненні що лежать на дні скриньки інших фігур;
- Вилучення шару, що не містить порожніх клітинок (всі комірки заповненіквадратами фігур);
- "Осідання" шарів при вилученні шару, що не містить порожніх клітинок;
- Закінчення гри при заповненні скриньки або по команді гравця.
9. Додаткові можливості.
Додаткові можливості відсутні.
Програми відсутні. P>
Керівництво оператора (користувача) (ГОСТ 19.505-79).
1. Призначення програми.
Призначення програми - розвага тих, що грають, вдосконалення їхкоординації і логічного мислення.
2. Умови виконання програми.
Програма запускається під управлінням операційної системи MS-DOS версії
3.30 і вище з каталогу, в якому міститься версією драйвераegavga.bgi. Для її роботи потрібно від 32 кілобайт вільної оперативноїпам'яті, відеоадаптер EGA/VGA і процесор 8086/8088 і вище.
3. Виконання програми.
Запуск програми здійснюється командою tetris з каталогу, що міститьфайли tetris.exe і egavga.bgi. При запуску з'являється вікно з назвоюпрограми, припинити виведення якого можна натисканням на клавішу.
Після цього на екрані з'являється ящик з падаючими фігурами. Управліннягрою здійснюється наступними клавішами:
| Назва клавіші | Виконувана функція |
| Стрілка вправо | Зрушення фігури вправо |
| Стрілка вліво | Зрушення фігури ліворуч |
| Стрілка вгору | Поворот фігури навколо власної |
| | Осі |
| Стрілка вниз | Падіння фігури до дна ящика |
| ESC | Закінчення ігри | p>
4. Повідомлення оператору.
При роботі прогрмми на машинах PC AT 286 або PC XT рекомендується зменшитизначення, що привласнюються змінної speed в 2-3 рази для того, щобшвидкість падіння фігур була прийнятною для гри.
Програми відсутні. P>
Опис програми (ГОСТ 19.402-78)
1. Загальні відомості.
Програма називається "TETRIS", є класичною версією вітчизняноїгри тетріс. Програма написана на мові Pascal в інтегрованому середовищі
Turbo Pascal v7.0. Для її виконання потрібний компілятор з цієї мови і
ОС. Технічна документація написана з використанням програмнихпродуктів Microsoft Word 97 і Meta Design 4.0.
2. Функціональне призначення.
Дана програма є ігровий, вона застосовується для розвагикористувачів, вдосконалення їх координації руху і логічногомислення.
3. Опис логічної структури.
Опис логічної структури наведено на схемах, що знаходяться в додатку
(№ 3.1a)
4. Використані технічні засоби.
Програма була написана і відкомпілювати на ЕОМ Pentium-233
MMX/32/2.1/SVGA .28, оснащеної пристроєм друку HP LJ-6L.
5. Виклик і завантаження.
Програма зберігається в файлe tetris.pas; програма викликається на виконаннякомандою tetris.
6. Вхідні дані.
1) клавіші: "RIGHT", "LEFT", "UP", "DOWN" або "ESC" - що вводяться в процесігри в режимі реального часу. Організовано у вигляді символьних змінних.
7. Вихідні дані.
Інформація, що виводиться на екран у графічному режимі: малюнок скриньки,падають і лежать на дні фігури. Організовано у вигляді двовимірних масивів.
Додаток містить лістинг програми на мові Turbo Pascal.
Висновки по завданню.
У результаті іспользованггія бета-версії програми не було отримано скаргпро відхилення в правилах гри в порівнянні із загальноприйнятими стандартами,накладеними численними версіями гри TETRIS. Це дозволяє зробитивисновок про відповідність алгоритму постановки завдання. Видача інформаціїнаочна: на екрані постійно відображена ігрова ситуація. Текст програмилегким для читання, тому що містить коментарі, що пояснюють суть тієї чи іншоїситуації. Текст програми міститься у додатку. P>
Висновок.
В ході курсової роботи мною були вивчені деякі аспекти програмуваннямовою Turbo Pascal. При оформленні курсової роботи був отримані навичкиоформлення програмної документації відповідно до Єдиної Системою
Програмної Документації, а також великий практичний досвід роботи в Turbo
Pascal v7.0, Microsoft Word 97, Meta Design v4.0, Microsoft Excel 97 (хочаосвоєння цих програмних продуктів не було метою курсової роботи, данінавички не можна вважати марними). Теоретичні відомості булизакріплені практичними заняттями. p>
Література.
1. В. Сустаков. Мова програмування Pascal. М.: Радіо і зв'язок. 1994.
2. К. Ликов. А. Бабонін. Мова програмування Pascal для персональногокомп'ютера. М.: Радіо і зв'язок. 1993.
3. Н. Русаков та ін Довідник по функціях Borland Pascal 7.0. Київ:
Діалектика. 1994.
4. Р. Віземан. Word for Windows (програми для персональних комп'ютерів).
М.: Текст. 1994.
5. Excel 5.0 - англійська та російська версії. СПб: BHV-Санкт-Петербург. 1994. P>