Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЕТАП№3курсова.doc
Скачиваний:
0
Добавлен:
13.09.2019
Размер:
1.21 Mб
Скачать

Міністерство освіти і науки, молоді і спорту України

Хмельницький Національний Університет

Кафедра системного програмування

Пояснювальна записка

до курсового проекту

з навчальної дисципліни програмування

Виконав: ст. гр. КІ-11-3

Бабій І.М.

Перевірили: Савенко О.С.

Крищук А.Ф.

Хмельницький 2012

З міст

Вступ 3

1 Постановка задачі та вибір засобів для розв'язування 4

1.1 Стратегія розв’язку задачі 4

2 Структура розробленого програмного забезпечення 6

2.1 Модулі програми 6

2.2 Таблиця основних процедур і їх призначення в програмі 9

3 Алгоритми роботи програмного забезпечення 11

Використана література 23

Додаток А. Інструкція по користуванню розробленою програмою

Додаток Б. Теоретичні відомості,навчання(реферат)

Додаток В. Тести з варіантами відповідей

Додаток Г. Лістинг програмного забезпечення

ХНУ КІ-11-3

Навчально-контролююча програма

Савенко О.С.

.

КРКІ 011043.01.01 ПЗ

2

23

Бабій І.М.

.

Вступ

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

Яким би досконалим не був комп’ютер, без програмного забезпечення він є просто купу металу і пластика. Саме програми визначають, що і як робить комп’ютер, в якій послідовності він виконує ті чи інші операції. Перші мови програмування почали з’являтися на початку п’ятдесятих років і використовувалися для перетворення простих арифметичних виразів в машинний код. Машинний код — це система команд обчислювальної машини, що інтерпретуються безпосередньо мікропроцесором. Але людині писати програму в машинних кодах дуже незручно. Для того щоб полегшити працю програміста, і почали створюватися мови програмування.

Мови програмування поділяються на мови високого рівня і низького. Чим вище рівень мови, тим легше на ньому писати програмісту. Така мова більш зрозумілий людині, тому що дозволяє за допомогою простих смислових конструкцій задавати необхідну послідовність дій. Після створення програми відбувається її компіляція — тобто автоматичне переведення в зрозумілий процесору мову машинних кодів. Мови низького рівня знаходяться набагато ближче до мови машинних кодів, тому писати на них важче. Але у них є своя перевага — написані такою мовою програми виходять дуже швидкими і компактними. Найбільш популярним низькорівневим мовою є Assembler. Деякі його переваги настільки очевидні, що навіть в складних програмах, написаних на високорівневих мовах, часто застосовують вставки на Асемблері.

1 Постановка задачі та вибір засобів для розв’язування

Розробити навчально-контролюючу програму засобами мови Object Pascal, використовуючи середовище Lazarus. Програма повинна складатись із модулів, тип яких заданий згідно варіанту в таблиці (варіант 1):

  • Тип модуля – TPU;

  • модуль I – Навчання;

  • модуль II – Тестування, таймер;

  • модуль III – Редагування тестів, навчання;

  • модуль IV Доповнення тестів, навчання;

У програмі використовуються 3 файли:

  • 1-й призначений для відображення навчальної інформації

  • 2-й призначений для збереження бази тестів

  • 3-й призначений для збереження історії тестування (містить дату тестування, прізвище особи, що тестувалась та результат тестування)

У програмі використовується заданий варіантом тип меню – система вкладок (компонент TPageControl).

Програма повинна забезпечувати:

  • можливість авторизації користувача;

  • виведення інформації для вивчення із 1-го файлу (текстовий файл);

  • формування тестів із питань, що зберігаються в 2-му файлі

(типізований файл) і проведення тестування;

  • можливість внесення змін у інформацію для вивчення та тести;

    1. Стратегія розв’язку задачі

Lazarus і Delphi - це два продукти з абсолютно різними комерційними ідеологіями. Borland Delphi - це повністю комерційний, закритий продукт, щоб почати ним користуватися, потрібно його придбати. Мінімальна вартість Delphi становить 27 тис. рублів, але цього мало, тому що дуже часто потрібна система управління базами даних. Виробник рекомендує використовувати СУБД InterBase - це ще 6 тис. рублів. Тому для того, щоб отримати повний комплект сучасного розробника програмного забезпечення, потрібно мінімум

7 тис. грн.

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

Сумісність з операційними системами

Delphi - це продукт, розроблений під ОС Windows. З його допомогою можна розробляти програми лише для цієї операційної системи. При використанні створених програм на ПК з іншими ОС, потрібно застосовувати різні хитрощі: емулятори, середовища. Ще недавно існував проект Borland Kylix - Delphi для Linux, але він закрився. Що стосується Lazarus, то реалізація даного інструменту існує для всіх поширених операційних систем: Windows, Linux і т.д. Таким чином, розробивши програму для однієї ОС, її можна з легкістю перекомпілювати для іншої, що зручно для початківців програмістів.

В становлена ​​програма Lazarus займає більше 500 мб. пам'яті на жорсткому диску, а Delphi Portable-понад 350 мб.

Я використовував в курсовому проекті Lazarus – тому що він простий в користуванні, безкоштовний та знайомий мені.

За допомогою компонентів Lazarus були створені форми для виведення, введення, редагування тексту навчання та питань. Для обробки дій користувача були створені вкладки. Для виведення, редагування та доповнення тексту навчання використано компонент TMemo. Для виведення питань під час проведення тестування користувача використано компонент TRadioButton. Для виведення редагування та доповнення відповідей, а також номера правильної відповіді також використано компонент ТEdit. Для пояснювального тексту було використано компонент ТLabel. Для відображення малюнків було використано елемент ТImage.

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

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

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

2 Структура розробленого програмного забезпечення

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

Вся курсова робота розбита в цілому на 12 пунктів, де кожен пункт згідно до умови курсової має бути розташований в модулі

Це такі пункти:

  1. Меню редагування.

  2. Доповнення тестів.

  3. Ідентифікація користувача.

  4. Інформація про програму.

  5. Введення пароля.

  6. Навчання.

  7. Доповнення тестів.

  8. Тестування.

  9. Редагування тестів.

  10. Редагування навчання.

  11. Тестування.

  12. Заставка.

2 .1 Модулі

Основна програма створює форму і підключає перераховані вище модулі. Модулі ж виконують операції визначені у завданні на курсову роботу.

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

Модуль modul_2 - призначений для читання навчальної інформації з файла.

Модуль modul_1 - вивід питань на екран і також формування списку з випадковими питаннями.

Модуль modul_3 - вивід на екран питань для редагування, формування списку питань, запис питань у файл.

Модуль pass – пароль для редагування тестів.

Модуль main – основна програма, основний модуль.

Модуль Logo_ - лого.

Модуль autor – автор проекта.