Автор работы: Пользователь скрыл имя, 08 Октября 2013 в 22:52, курсовая работа
Тестування може бути різне за своїм типом, але методики його проведення мало чим відрізняються між собою. Для проведення тестування необхідно скласти (або використати готові) тести, які в своєму вигляді найчастіше є на паперовому носії, в достатній кількості. Але бурхливий прогрес в області розвитку персональних комп'ютерів виводять педагогів на необхідність створення електронних тестуючих програм для самоконтролю і самоперевірки знань студентів.
Порівнюючи тестування з іншими методами можна виділити наступні особливості комп’ютерного тестування:
оперативність отримання оцінки (наприклад, у порівнянні з письмовим опитуванням);
можливість частіше проводити контроль знань (при наявності готового тестового матеріалу);
ВСТУП 6
1 ПОСТАНОВКА ЗАДАЧІ 9
2 ПРОГРАМНА РЕАЛІЗАЦІЯ ПОСТАВЛЕНОЇ ЗАДАЧІ 11
2.1 Алгоритм рішення задачі 11
2.2 Структура програми 13
2.3 Компоненти Delphi, використовані для розробки програми 15
2.4 Виправлення помилок у програмі 20
3 ОПИС ІНТЕРФЕЙСУ ПРОГРАМНОГО ПРОДУКТУ 22
ВИСНОВКИ 26
СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ 28
Компонент Delphi Edit призначений для введення даних користувача і являє собою однорядкове полі. Основною властивістю edit'a є text типу даних string тобто для введення чисел потрібно використовувати функції FloatToStr (дробові числа) і IntToStr (цілі числа). Перенесення рядків у цьому компоненті в порівнянні з label неможливий. Текст, що не помістився по довжині в компонент, просто зрушується вліво і користувач може курсором переміщатися по цьому тексту. Властивості компоненту Edit наведені у таблиці 2.2.
Таблиця 2.2
Властивості компоненту Edit
Властивість |
Значення |
Text |
містить відображений компонентом рядок |
MaxLegth |
максимальна довжина тексту, якщо значення дорівнює 0, то можна вводити необмежену кількість символів |
Font |
властивість дозволяє встановлювати шрифт тексту, розмір і його колір |
ReadOnly |
якщо значення цього властивість одно true, то текст в поле введення користувач змінити не зможе |
AutoSize |
автоматично підлаштовує під розмір тексту висоту поля, а ширина вікна не змінюється ні за яких умов |
BevelEdges |
ці властивості визначають ефекти об'ємності поля введення |
BorderStyle |
вид рамки, поля введення |
PasswordChar |
властивість дозволяє зробити поле для введення пароля, за замовчуванням стоїть значення рівне # 0 (нульовий символ), для відображення зірочок необхідно в це поле поставити відповідний |
Продовження таблиці 2.2 | |
символ | |
AutoSelect |
якщо значення дорівнює True то при отриманні фокусу компонентом весь текст буде виділений |
CharCase |
дозволяє вводити текст певного регістра. це властивість може приймати наступні значення: ecUpperCase - текст перетвориться у верхній регістр; ecLowerCase - текст пишеться в нижньому регістрі; ecNormal (за замовчуванням) - розмір символом не змінюється. |
HideSelection |
якщо False, то виділений текст зберігається виділеним при втраті компоненту фокусу введення |
Компонент Delphi Memo є вікном редагування багаторядкового тексту який можна завантажувати з файлу або зберігати введену інформацію у файл текстового формату. У Memo формат тексту (шрифт, вирівнювання, колір і т.д.) однаковий для всього тексту та визначено вони у властивості Font. Збережені текст з Memo в файл не зберігає елементи форматування (шрифт, розмір тощо) При наступному відкритті цього файлу, в Memo формат тексту буде визначатися поточним властивістю Font компоненту Memo, а не в тому форматі в якому був збережений раніше.
Текст в Memo розміщений порядково. Тому є доступ до рядків тексту окремо. Рядки Memo є об'єктами Lines [i] тип якого String, де i - номер рядка, звіт починається від нуля. Lines [i] доступний як для читання, так і для запису. Тому текст в компоненті Memo є можливість редагувати не тільки за допомогою клавіатури, а й програмно. Властивості компоненту Memo наведені у таблиці 2.3.
Таблиця 2.3
Властивості компоненту Memo
Властивість |
Значення |
Text |
текст, що знаходиться в полі Memo |
Lines |
масив рядків доступ до яких здійснюється за номером. нумерація починається з нуля |
Lines.Сount |
кількість рядків у полі |
Продовження таблиці 2.3 | |
Font |
шрифт, застосовуваний для відображення виведеного тексту |
ParentFont |
ознака наслідування властивостей шрифту від батьківської форми |
Компонент Delphi Button це стандартна кнопка Делфі, кнопка має на поверхні напис (що описує її призначення при натисканні). Основна подія для кнопки є OnClick, що виконується при натисканні, при цьому кнопка змінює зовнішній вигляд, підтверджуючи цим відбувається дія візуально. Відразу після відпускання кнопки, виконується дії в обробнику OnClick. Кнопку можна натиснути не тільки клацанням миші але і комбінацією клавіш, що б задати комбінацію необхідно перед символом використовуваний в комбінації поставити символ амперсанта «&». Після чого користувач замість клацання миші може використовувати клавіші Alt і клавішею виділеного символу. Властивості компонента Button наведені у таблиці 2.4.
Таблиця 2.4
Властивості компонента Button
Властивість |
Значення |
Cancel |
якщо встановлено true, то натискаючи клавішу «Esc» буде виконано натискання на цю кнопку. Це властивість краще задавати для кнопок «Відмінити»; |
Caption |
задає назву кнопки |
Default |
якщо встановлено в true, то при натисканні клавіші Enter буде виконано натискання на цю кнопку, навіть якщо в цей момент дана кнопка чи не знаходиться у фокусі. Але якщо в момент натискання у фокусі знаходиться інша кнопка, то спрацює кнопка перебуває у фокусі. |
Hint |
підказка - текст, який буде з'являється поруч з курсором миші при наведенні покажчика на кнопку (для того що б текст відображався, властивість ShowHint має бути <true>) |
ShowHint |
дозволяє або забороняє відображення підказки при наведенні покажчика на кнопку |
Компонент Delphi CheckBox - незалежний перемикач. Цей компонент використовується для включення / виключення будь-яких опцій або для індикації стану, при цьому на формі CheckBox'ов може бути кілька, і кожен можна включати і вимикати незалежно один від одного. Властивості компоненту CheckBox наведені у таблиці 2.5.
Таблиця 2.5
Властивості компоненту CheckBox
Властивість |
Значення |
Action |
визначає дію, пов'язане з цим індикатором |
Alignment |
визначає, положення напису (ліворуч або праворуч) по відношенню до індикатора |
Caption |
напис індикатора |
Checked |
визначає чи вибраний індикатор |
State |
визначає стан індикатора (вкл / викл) |
TabOrder |
вказує позицію CheckBox в списку табуляції (при натисканні Tab перемикається між компонентами починаючи з компонента у якого TabOrder дорівнює нулю) |
AllowGrayed |
визначає, чи доступний прапорець у проміжному стані, при AllowGrayed рівним False прапорець може бути встановленим або скинутим, при AllowGrayed одно True прапорця доступно проміжний стан |
TabStop |
визначає доступність до кнопки за допомогою клавіші Tab |
Компонент delphi Image призначено відображення на формі графічних зображень за замовчуванням виводить на поверхню форми зображення представлених у bmp форматі. Для виведення зображень в jpg форматі необхідно в Деректіву uses підключити модуль JPEG. Після розміщення на формі компонента Image, він приймає вигляд виділеної прямокутної області. Властивості компоненту Image наведені у таблиці 2.6.
Таблиця 2.6
Властивості компоненту Image
Властивість |
Значення |
Picture |
зображення відображаються в полі компонента |
Width, Height |
розміри компонента. Якщо ці розміри менше розміру ілюстрації, а значення властивостей Strech, AutoSize і Proportional рівні False, то відображається частина зображення |
Proportional |
дозволяє автоматично масштабувати картинки без спотворення. Для виконання масштабування, значення властивості AutoSize має бути рівним False |
Strech |
дозволяє автоматично масштабувати (стискати або розтягувати) зображення відповідно до розміру компонента Image. Якщо розмір компоненту не пропорційний розміру зображення, то зображення буде спотворено |
AutoSize |
дозволяє автоматично змінювати розмір компонента відповідно до розміру зображення |
Center |
дозволяє визначати розташування зображення в полі компонента Image по горизонталі, якщо ширина картинки менше ширини компонента. Якщо властивості одно False, то зображення притиснуто до правої межі, якщо True то зображення розташовується по центру |
Canvas |
поверхня, що дозволяє вивести графіком |
Transparent |
вказує прозорий колір фону зображення |
Налагодження починається з усунення з програми синтаксичних помилок, тобто таких, які можуть бути визначені компілятором. Перед виконанням програми її треба компілювати і компонувати. Якщо ми відразу запустимо програму на виконання, то компіляція і компонування відбуваються автоматично [4]. Звернімо увагу на те, що компілятор Delphi крім повідомлень про помилки може видавати ще й попередження. Попередження видаються до таких конструкцій програми, які є формально правильними (з точки зору синтаксису), але компілятор "підозрює" у них семантичну помилку. Програма з помилками не може компонуватися і виконуватися. Якщо відразу (без виконання компіляції окремим кроком) запускаємо програму на виконання, ми не побачимо попереджень компілятора, тобто ризикуємо виконувати програму з тими помилками, які могли бути виявлені заздалегідь. Виконуємо компіляцію окремим кроком і не переходити до наступного кроку, поки не переконаємось в тому, що попереджень компілятора немає або його "підозри" безпідставні.
При налагодженні програми
використовувалися вбудовані
До них можна віднести трасування програми (виконання по кроках), використання точок зупину, виконання програми до курсору. При цьому значення змінюваних змінних відслідковуються в спеціальному вікні [6].
Були проведені наступні
тести для перевірки
На підставі проведених тестів робиться висновок про коректність роботи програми.
Лістінг програми наведений у додатку А.
Тестуюча ілюстративна оболонка для контролю знань з дисципліни «Основи алгоритмізації та програмування» складається з чотирьох форм.
Головна форма, з якої починається виконання програми, наведена на рисунку 8.
Рисунок 8 – Головна форма тестуючої оболонки
Якщо на головній формі обрати «Тестування», відкривається форма введення особистих даних та вибору варіанту, див. рис. 9.
Рисунок 9 – Форма введення особистих даних та вибору варіанту
Кнопка «Далі» неактивна поки не обраний варіант тестування. Також якщо користувач заповнив не всі поля, але клацнув на кнопку «Далі», з’явіться повідомлення про те, що потрібно заповнити всі поля, див. рис. 10.
Рисунок 10 – Повідомлення про необхідність заповнити всі поля
Коли користувач заповнив всі необхідні поля, обрав варіант та кликнув «Далі» з’являється третя та основна форма тестуючої програми, див. рис. 11.
Рисунок 11 – Третя форма програми
По клику «Далі» на цій
же формі починається
Рисунок 12 – Початок тестування
Якщо користувач обрав варіант відповіді, кнопка «Наступне питання» активується, та можливий перехід далі, див. рис. 13.
Рисунок 13 – Якщо обраний варіант відповіді, кнопка «Наступне питання» активується
Після закінчення тестування програма виводить результати тесту: кількість правильних відповідей та оцінку, див. рис. 14.
Рисунок 14 – Результат тестування, виведений на форму
Після тестування користувач може вийти із програми або повернутись на головну сторінку. Кнопка «Вихід» також доступна на будь-якому кроці роботи програми.
Інформація про автора програми знаходиться на окремій формі, потрапити на яку можливо з головної сторінки, клацнувши на кнопку «Про автора», див. рис. 15.
Рисунок 15 – Форма «Про автора»
Даний курсовий проект полягає в створенні тестуючої ілюстративної оболонки для контролю знань з дисципліни «Основи алгоритмізації та програмування». Поставлена на початку мета була досягнута з використанням середовища об’єктно-орієнтованого програмування Delphi. Отриманні теоретичні знання застосовані на практиці, тобто програма була розроблена відповідно до завдання, отриманого до роботи.
В результаті курсової роботи були виконані наступні етапи:
Информация о работе Розробка засобами Delphi тестуючої ілюстративної оболонки