ПЕРЕЛІК ДИСЦИПЛІН:
  • Адміністративне право
  • Арбітражний процес
  • Архітектура
  • Астрологія
  • Астрономія
  • Банківська справа
  • Безпека життєдіяльності
  • Біографії
  • Біологія
  • Біологія і хімія
  • Ботаніка та сільське гос-во
  • Бухгалтерський облік і аудит
  • Валютні відносини
  • Ветеринарія
  • Військова кафедра
  • Географія
  • Геодезія
  • Геологія
  • Етика
  • Держава і право
  • Цивільне право і процес
  • Діловодство
  • Гроші та кредит
  • Природничі науки
  • Журналістика
  • Екологія
  • Видавнича справа та поліграфія
  • Інвестиції
  • Іноземна мова
  • Інформатика
  • Інформатика, програмування
  • Юрист по наследству
  • Історичні особистості
  • Історія
  • Історія техніки
  • Кибернетика
  • Комунікації і зв'язок
  • Комп'ютерні науки
  • Косметологія
  • Короткий зміст творів
  • Криміналістика
  • Кримінологія
  • Криптология
  • Кулінарія
  • Культура і мистецтво
  • Культурологія
  • Російська література
  • Література і російська мова
  • Логіка
  • Логістика
  • Маркетинг
  • Математика
  • Медицина, здоров'я
  • Медичні науки
  • Міжнародне публічне право
  • Міжнародне приватне право
  • Міжнародні відносини
  • Менеджмент
  • Металургія
  • Москвоведение
  • Мовознавство
  • Музика
  • Муніципальне право
  • Податки, оподаткування
  •  
    Бесплатные рефераты
     

     

     

     

     

     

         
     
    Гра Що? Де? Коли? На Паскалі
         

     

    Інформатика, програмування

    Зміст

    ВСТУП 3

    1 Варіант завдання. 5

    2 Опис завдання 6

    3 Структури даних 8

    4 Опис програми. 10

    4.1 Загальні відомості. 10

    4.2 Функціональне призначення. 10

    4.3 Опис логічної структури програми. 10

    5 Розробка алгоритмів програми. 11

    6 Опис роботи основного модуля програми 18

    7 Керівництво користувача. 20

    8 Керівництво системного програміста. 21

    9 Результати налагодження програми. 22

    Висновок 23

    Література 24

    ВСТУП

    Будь-яка програма повинна взаємодіяти з периферійними пристроямиперсонального комп'ютера, зокрема з дисплеєм. Така взаємодіяздійснюється на трьох рівнях, що впливають на продуктивність імобільність програм на рівні операційної системи програма звертається допристрою через системне обслуговування. Такий спосіб забезпечуємаксимальну мобільність програми, але призводить до її мінімальноїпродуктивності. Крім того, операційна система MS DOS не маєграфічного інтерфейсу.

    Програма може взаємодіяти з пристроями графічного виводуінформації за допомогою базової системи введення/виводу. Цей спосіб маєдосить високу мобільність і прийнятну продуктивність. Однакграфічні можливості базової системи введення/виводу обмежені.

    У персональних комп'ютерах фірми IBM програмістам наданаможливість і прямого управління пристроєм через їх регістри. У рамкахданої курсової роботи всі операції з графічним інтерфейсом будемопроводити за допомогою графічного пакета мови програмування Turbo -
    Pascal. Оператори дозволяють визначати характеристики драйвера, режим йогороботи і відповідно налаштувати графічний пакет, команди переходу відграфічного режиму до текстового і навпаки. Основна група графічнихоператорів, які безпосередньо здійснюють висновок графічних примітивів
    (точок, ліній, ламаних, кіл) на екран графічного дисплея. Такожє оператори, що дозволяють встановлювати параметри промальовуванняграфічних примітивів (колір, товщина, тип лінії). Є оператори длявизначення параметрів графічних примітивів, які можуть бутивстановлені за замовчуванням. Один і той же графічний спостерігши може бутинамальований на екрані з використанням різних установок: колір, тип лінії,тип штрихування. Внесені до палітру зміни негайно відображаються наекрані.

    Також є процедури для виводу текстової інформації і встановленняпараметрів текстового виводу.

    У графічному режимі програма оперує кольором кожного пікселя.
    Благородія цього, з'являються можливості побудови на екрані складнихзображень, розмальовки різних областей екрану, формування рухомихоб'єктів.

    Однак ці можливості значно ускладнюють програмування тазнижують продуктивність персонального комп'ютера. Про цесвідчить просте порівняння обсягів інформації, з якими доводитьсяпрацювати в текстовому і графічному режимах. Так наприклад у разі 16-тикольорового графічного режиму з роздільною здатністю 640 * 350 пікселівнеобхідний обсяг відеобуфера збільшується до 112000 байт.

    Метою курсового проектування є розробка програмиімітує гру «Що? Де? Коли?». У процесі проектування слідрозглянути існуючі графічні примітиви, вивчити роботу зграфічними модулями. Основною метою використання програми єрозробка її в якості тренажера.

    1 Варіант завдання.

    Скласти програму, що моделює гру «Що? Де? Коли?». Для цьогопрограма повинна відобразити на екрані ігрове поле рулетки із зазначеннямцифр секторів і квітів, а також величини ставок для кожного сектора. Длякожного сектора з банку питань випадковим чином вибирається питання,складність якого пропорційна ставці.

    В ході гри випадковим чином вибирається номер сектора, і видаєтьсятекст відповідного питання. При цьому питання формулюється так, що нанього передбачений чіткий і ясний відповідь. У процесі гри фіксуєтьсясуми вірних та невірних відповідей і суми виграшів.

    2 Опис завдання

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

    1 побудови БД з питаннями і їх випадковим вибором і чергуванням;


    2 заповнення графічного екрану геометричними фігурами різної форми і циклічного обертання їх по колу, імітуючи обертання трубкикалейдоскопа і переміщення в ній різнокольорових геометричних елементів.

    Для побудови графічних примітивів слід визначити координатицентру графічного екрану і його максимальні координати по осі абсцис іпо осі ординат.

    Малюнок 1 Графічні координати.

    Отже координати центру екрану та центру будь-якого графічноговікна можна знайти за формулою:

    Для організації ігрового поля слід визначити наступні координати:
    1. - Координати прямокутника-графічного екрану;
    2. - Координати центру круглого ігрового столу
    3. - Радіус кола, описаної з центру примітиву і проходить через координати прямокутника.
    4. 0,0, X0, Y0 - рамка з рахунком гри.

    У цьому випадку ігрове поле набуде вигляду:

    Малюнок 2

    3 Структури даних

    Для зберігання описаної раніше інформації слід відзначити різнорідністьданих, які необхідно зберігати. Для роботи програми потрібнорозробити уніфіковану для всіх тестів структуру зберіганняінформації.

    Найбільш зручною формою зберігання різнорідних даних є типструктура (запис). У мові Borland Pascal 7.0 вона позначається так

    : record

    :;

    :;

    -------- -------------------------------------

    :; end;

    Для зберігання даних у програмі використовуємо наступні структуриданих:

    Trec_TST = record use: integer; name: string; (_наіменованіе питання) ans: string; (_наіменованіе відповіді) end;

    Trec_YN = record use: integer; name: string; (_наіменованіе питання) ans_int: integer; (відповідь Y/N) end;

    Trec_USR = record name: string; (_наіменованіе питання) psw: string; (_наіменованіе відповіді) ans_am: integer; (_наіменованіе відповіді) end;

    Як випливає з [1], поля можуть бути різного типу, і всі вонигрупуються під ім'ям запису. Як будь-який скалярнийтип.

    Для введення таких полів як «Найменування» достатньо 255 символів.
    Отже будемо використовувати тип String. На підставі наявноїінформації складемо структуру даних:
    | Назва поля | Примітка |
    | Name | Питання |
    | Ans | Відповідь |
    | Ans_RTIME | Відповідь по типу так/ні |

    Таблиця 1

    4 Опис програми.


    1 Загальні відомості.

    Для вирішення поставленої задачі, її найбільш трудомісткою части-введення ізберігання списку питань тестів. Його реалізуємо на мові Borland Pascal
    7.0 під операційну систему MS-DOS. Дана ОС найбільш підходить длярішення подібних задач і створення програмного забезпечення здатноговирішувати задачі по роботі зі структурами даних і запису їх у файл.

    2 Функціональне призначення.

    Програма призначена для вирішення конкретної задачі, описаноїраніше. У ній застосовуються оптимальні методи зберігання даних у файлах удвійковому вигляді. З її допомогою можна вирішувати завдання досить великийрозмірності - зберігати довгі списки питань. Зберігання питань утекстовому вигляді, а не в двійковому форматі дає додаткову можливість щодо редагування списку питань.

    Програма повинна підтримувати роботу в 2 режимах:введення даних;видача результатів за вказаними запитам.


    3 Опис логічної структури програми.

    Написання програми будемо вести тих, що сходять методом, поступово уточнюючизавдання. Для цього розіб'ємо завдання написання програми на кількапідзадач. Потім розробимо їх алгоритми та реалізуємо їх у вигляді окремихпідпрограм (процедур або функцій). В основному тілі програми організуємопромальовування меню, в якому перераховуються можливі дії і за їх кодувикликаються відповідні їм підпрограми.

    5 Розробка алгоритмів програми.

    Розділемо завдання на кілька підзадач. Виділимо наступні основніпідзадачі:побудова головного меню;організацію введення файлу з базою питань;проведення гри;роботу з користувачами (гравцями), їх ідентифікацію.

    підзадачі проведення гри розділимо на наступні підзадачі:завантаження 12 питань зі списку;побудова ігрового поля;проведення до 12 раундів гри;підрахунок очок.

    Розглянемо задачу проведення раунду гри докладніше. Вона складається з підзадач:

    1 вибору питання з 12 запитань випадковим чином;


    2 висновок вмісту питання на екран;


    3 введення відповіді.

    Кожну завдання реалізуємо як окремої, незалежноїпідпрограми, в якості параметрів до якої будемо передавати необхідні їйдані або використовувати для цього глобальні змінні.

    Далі розглянемо алгоритм роботи основного меню:

    Малюнок 3

    Потім розглянемо алгоритм введення нових питань:

    Малюнок 4

    Розглянь алгоритм введення рядка питання або відповіді на нього докладніше:

    Розглянемо введення пароля:

    Малюнок 5
    Як видно алгоритм введення рядка з інформацією і введення пароля відрізняєтьсятільки те, що замість введеного символу відображається «*». Ці алгоритмиможна реалізувати однієї підпрограмою, ввівши ознака що вводиться рядка
    (пароль/дані).

    Розглянемо алгоритм гри докладніше:

    Малюнок 6

    Розглянемо алгоритм реєстрації докладніше:

    6 Опис роботи основного модуля програми

    Основним модулем програми є модуль . Спочаткувикликаються подпограмма побудови основного меню.

    За допомогою натискання користувачем клавіші можна вибрати:

    1 введення і доповнення списку питань;


    2 перегляд заставки з правилами гри;


    3 проведення гри;


    4 реєстрація нового користувача.

    При виборі пункту «Проведення гри»:

    5 екран оновлюється;


    6 вибираються з файлу 12 питань по 1 на кожний гральний сектор. Післяцього випадковим чином вибирається будь-який з цих питань і виводиться внизу екрану;


    7 після введення та порівняння з правильною відповіддю, відбувається оновлення рахунку і завдання нового запитання. Так продовжується до тих пір, поки рахунок недосягне 6 очок з боку гравця або «телеглядача».

    При виборі пункту «Написання та доповнення списку питань»:

    8 програма запросить зміст запиту;

    < br>9 програма запросить правильну відповідь на нього;


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

    Введення продовжується до тих пір, поки користувач підтверджуєнеобхідність продовжувати введення даних, які додаються в основний файл.

    При виборі пункту «Реєстрація нового користувача» програмазапитає:

    11 ім'я нового користувача;


    12 пароль користувача (Зауважте, що ви на екрані не відображаються).

    Для полегшення роботи й налагодження, існує універсальний пароль дляреєстрації в системі. Він необхідний для того, що вперше запуститипрограму і почати її адмініструвати.

    При запуску програма запитає:

    13 ім'я нового користувача - слід ввести "1";


    14 пароль користувача - слід ввести "1".

    Після цього виводиться основне меню програми.


    7 Керівництво користувача.

    Після запуску програми для аналізу потрібно виконати наступнідії.

    1 Дочекатися появи підказки операційної системи MS DOS наступного виду

    :. . . .


    2 Набрати ім'я виконуваного модуля і запустити його навиконання. Якщо операційна система видала повідомлення про помилку запускуграфічної системи, слід перевірити наявність у робочому каталозі наявністьфайлу EGAVGA.BGI. Без нього робота програми неможлива. Починається робота з заставки, після проходження якої програма запросить ініціативукористувача. Після цього необхідно зареєструватися. Первіснареєстрація - 1,1. Подальші дії коротко описані в пункті головногоменю.


    3 У програмі передбачені пріоритети доступу до пункту головного меню: Назва реєстрації: admin

    Пароль: OpenAll - повний доступ;

    Відповідно для guest, guest або 1,1 - доступ закритий; при введенніімені та пароля містяться у файлі реєстрації Usr.ps буде запитанийпароль доступу OpenAll.

    8 Керівництво системного програміста.

    При установці і експлуатації цієї програми потрібно матинаступне апаратне та системне програмне забезпечення.

    1 IBM PC XT/AT сумісний комп'ютер;


    2 Операційну систему MS DOS v 6.22 або Windows 95 OEM;


    3 ОЗУ 640 Кбайт.

    Програма складається з файлів:

    4 K16.EXE - містить виконуваний модуль програми;


    5 K16.PAS - містить основний модуль програми;

    - Zast_uni.tpu - модуль заставки;

    - CGK_uni.tpu - модуль містить процедури виводу головного меню, підменю введення питань, реєстрації, довідки, і безпосередньо самої гри;

    6 Usr.ps - файл зі списком зареєстрованих користувачів;


    7 Vopr [1 .. 11]. Ps - файли зі списком питань відповідної ціни;


    8 Vopryn.ps - файл зі списком інтерактивних питань;

    EGAVGA.BGI - файл, необхідний для ініціалізації графічної системи.

    Файл EGAVGA.BGI повинен знаходитися в робочому каталозі, наявність файлу
    EGAVGA.BGI перевіряється при запуску програми. Без нього робота програминеможлива.

    9 Результати налагодження програми.

    У процесі написання і налагодження були виявлені такі помилки:

    - відсутність «;» після операторів (найбільш часта помилка) ;

    - зайва або відсутня операторна дужка «end»;

    - при роботі в графічному режимі дуже довго не працювала клавіша

    «Backspace» через неправильне вказівки координат стирання букви;

    - через неузгодженість глобальних змінних не працювало головне меню;

    - при установці синього кольору фону при зафарбовування фігур чорним кольором вони купували колір фону (була виправлена шляхом зміни темно-сірого кольору палітри на чорний і забарвлення цим кольором);

    - відбувалося зациклення програми через відсутність умови виходу з циклу;

    У результаті налагодження всі помилки були виправлені. У процесі налагодженнявикористовувалися всі можливі методи але найбільш часто застосовувалися покроковийзапуск програми (на початкових стадіях розробки) і розстановка точокзупину в сумнівних місцях »і перегляд поточного значення використовуванихзмінних;

    Висновок

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

    До переваг даної програми можна віднести:

    - програма візуально повністю виконана в графічному режимі, тому постає перед користувачем в досить благопристойному вигляді;

    -- передбачена повний захист від введення зайвих, неразумнодлінних і т.п. даних;

    - в процесі гри користувачеві надається шанс перевірити свої знання з різних галузей знання;

    - реалізовано інтуїтивно-зрозумілий інтерфейс в меню і в процесі введення даних; < p> - популярність програми забезпечує високий попит на подібного виду програми;

    - можливість безпосередньо з програми доповнювати список питань (якщо у вас є доступ до цього пункту меню);

    - прівлекающе для користувача реалізована заставка (єдина доступна функція при відсутності у користувача ім'я та пароль);

    - програма виконана в одному стилі, в результаті чого користувач не втомлюється від надлишку змінюють один одного палітр;

    -

    До недоліків даної програми можна віднести наступне:

    1 низька швидкість роботи;


    2 обмежений набір графічних примітивів;


    3 використання стандартного відеорежиму VGA, з роздільною здатністю 640 на 480пікселів і палітрою в 16 кольорів, замість більш високих дозволів (800 на
    600 пікселів) і палітри в 256 кольорів.

    Література

    1. Лукач Ю. С., Сибіряков А. Е. Програмно-технічні засобиперсональних ЕОМ сімейства IBM PC. Сведловск: Інженерно-технічне бюро.
    1990

    2. Нортон П. Персональний комп'ютер фірми IBM та операційна система
    MS-DOS. М.: Радіо і зв'язок. 1992

    3. Нортон П. Програмно-апаратна організація IBM PC. М.: Радио изв'язок. 1992

    4. Фаронов В. В. Турбо Паскаль. М. «Нолидж» 2001

    5. В.С. Новачків, Н.І. Парфілова, А.Н. Пилькин, Алгоритмічні мовив технікумі: Паскаль, М. «Вища школа» 1994

    6. В.С. Новачків, О.Г. Швечкова Методичні вказівки до курсовоїроботи: «Конструювання програм», № 2133, Рязань 1993

    7. В.С. Новачків, О.Г. Швечкова, Н.І. Парфілова, А.Н. Пилькин,
    Методичні вказівки до лабораторних робіт № 6-10: «Реалізація циклічнихалгоритмів на Турбо Паскалі », Рязань, 1998

         
     
         
    Реферат Банк
     
    Рефераты
     
    Бесплатные рефераты
     

     

     

     

     

     

     

     
     
     
      Все права защищены. Reff.net.ua - українські реферати ! DMCA.com Protection Status