Термінова допомога студентам
Дипломи, курсові, реферати, контрольні...

Из досвіду створення універсальних тестових редакторов

РефератДопомога в написанніДізнатися вартістьмоєї роботи

Ядром", осуществлявшим всі процеси та функції редактора. У наступному розділі з точністю наведено текст структурної програми. 2. Розбивка суцільного тексту програми на процедури. Отже, текст став займати значно менше місця, зник оператор варіанта, багато мітки, посилання тощо. п. Треба сказати, чимало програмістів воліють вводити процедури у програмі. Це значно спрощує її. 3. Запровадження… Читати ще >

Из досвіду створення універсальних тестових редакторов (реферат, курсова, диплом, контрольна)

Предисловие.

Як відомо, нині найпоширенішими алгоритмічними мовами є Паскаль і Сі. Саме це мови використовуються на всіх діючих обчислювальних системахвід супер-ЭВМ до персональних комп’ютерів. Що стосується ПЕОМ, то лідером сімейства мов Паскаль їм, безперечно, є Турбо Паскаль 7.0, розроблений фірмою Borland. Ця остання версія дозволила поєднати у межах єдиної системи потужний алгоритмічний потенціал мови, методи объектно-ориентированного програмування, сучасну графіку, зручні кошти тестування і налагодження програм, і навіть забезпечити дружній інтерфейс з пользователями. 1] Тому мені вибрав цю мову програмування як основу створення тестового редактора.

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

Розробляючи програму крок по кроку, я виділив основні функції, наявні у будь-якому редакторі й, звісно, у моїй, саме: 1. створення нової файла тесту 2. відкриття тіста й тестування 3. редагування тесту 4. перегляд результатів 5. печатку файла 6. вихід із программы.

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

Почнемо дослідження зі статті про конструюванні программ.

Конструювання программ.

Конструювання програм — одне з найважливіших розділів сучасної інформатики. Бурхливий розвиток програмно-апаратних коштів, поява нових стилів і технологій програмування, як не парадоксально, не знижують, а підвищують рівня вимог до масової алгоритмічної культурі. Практично всі діалогові системи є програмованими. Методика конструювання програм легко переноситься інші процедурні мови програмування, зокрема і объектно-ориентированные. 2].

Відповідно до технологією конструювання програм побудована програма тестового редактора. Я розділив в етапи: 1. Створення структурної програми, багато в чому незручною використання зза відсутності діалогу, упорядкованого введення та виведення інформації та багато іншого. Вихідна програма мала основні функції. Вона была.

«ядром», осуществлявшим всі процеси та функції редактора. У наступному розділі з точністю наведено текст структурної програми. 2. Розбивка суцільного тексту програми на процедури. Отже, текст став займати значно менше місця, зник оператор варіанта, багато мітки, посилання тощо. п. Треба сказати, чимало програмістів воліють вводити процедури у програмі. Це значно спрощує її. 3. Запровадження віконній системи з допомогою доступних можливостей языка.

(оператор Window). Це дозволило б значно спростити роботу, створити діалог користувача з програмою, зменшити кількість інформації, котра надходить до користувача і кількість її «потоків». 4. Запровадження об'єктапанелі управління. Можете бачити її внизу экрана.

Вона взяла він управління функціями редактора. Причому запровадження об'єкта значно спростило програму. Методи роботи з об'єктами ви можете прочитати у розділі «Об'єктне програмування». 5. Оформлення работы.

Структурне программирование.

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

Турбо Паскаль сприяє впровадженню сучасної технології програмування, заснованої за принципами структурного програмування і пошаговом методі проектування програм. Основні оператори мови є хорошою ілюстрацією базових управляючих конструкцій структурного програмування. Їх використання дозволяє записувати складні алгоритми обробки даних в компактній форме. 3].

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

Бейсикмову програмування ПЭВМ.

Бейсик — діалоговий мову високого рівня, орієнтований користувачів ПЕОМ, непрофесіоналів у сфері обчислювальної техніки. Бейсік — переважно интерпретирующая програма, що дозволяє виробляти построчную налагодження текстів програм. Цей спосіб набагато зручніше для початківців програмістів, ніж компіляція (компілятор виробляє налагодження лише цілої програми, а чи не частинами), і дуже використовують у Паскале. Суттєвою рисою структурних мов є стислі однозначні оператори (на відміну тривалих команд об'єктного программирования)*.

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

Здебільшого, Паскаль виконує самі функції як і Бейсік. Проте Паскаль має більший потенціал на областях програмимирования, роботи з «комп'ютерним залізом», створення власних модулів і систем.

Структурна программа.

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

Нижче приведено схема структурної програми тестового редактора, пояснює відповідний підхід до програмування. Основний список операторів вирізаний і замінили. Кінцевий вид програми буде приведено у розділі «Об'єктне програмування» об'єктів. Program redactor; uses crt, printer; {підключення модулів} label l1, l2,l3,l4; {мітки} Var a, f, f1,a2:string; {розділ описів} b, k: char; c, u, y, a1, b1:text; d, e, i, j, p, z: integer; c1: boolean; Procedure oform; {процедуру оформлення початку программы}.

Begin.

End;

Begin oform; {оформлення початку программы}.

Writeln («Новий файл (New), Открыть файл (Open), Редактирование (Redact), «); {вывод.

альтернативних функций}.

Writeln («Перегляд результатов (Search), Выход (Any key) »); b:=readkey; {вибір потрібної функції} case b of {оператор варіанта} По натискання відповідної клавіші відбувається вибір функції. «n », «в » :Begin l1: {виконання функции}.

End; «o », «і «:Begin l2: {виконання функции}.

End; «r », «Є «:Begin l3: {виконання функции}.

End;

" p. s ", «и » :Begin l4: {виконання функции}.

End;

End;

Writeln («Новий файл (New),)Открыть файл (Open), Редактировать (Redact) »); {запит про вибір перед.

выходом}.

Writeln («Перегляд результатов (Search), Выход (Any key) »); b:=readkey; {вибір варіанта} case b of {оператор варианта}.

" n ", «т » :GoTo l1; {посилання метку}.

" o ", «щ » :GoTo l2;

" r ", «до » :GoTo l3;

" p. s ", «и » :GoTo l4;

End; Набір операторів безумовного переходу повернення до тій чи іншій функции.

End.

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

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

Інтерфейс структурної программы.

Доопрацювання программы.

Після налагодження початковій програми знадобилося запровадити додаткові функції. Крім стандартної функції створення й несподівані відкриття готового тесту, з’явилися такі як редагування тестів, підрахунок результатів і виставляння оцінки, таймер, складання звіту, захист тестів від перегляду. Та найголовнішеце вдосконалення інтерфейсу, запровадження віконної діалогової системы.

Розглянемо перелічені функції. Функція підрахунку результату записана так: z:=p*100 divx z; {розрахунок кількості правильних ответов}.

Writeln («кількість правильних відповідей: », p);

Write («оцінка »); {виставляння оценки}.

If z>=90 Then Begin.

Writeln («5 »).

Writeln (b1,'5');

End; else If z>=70 Then Begin.

Writeln («4 »).

Writeln (b1,'4');

End; else If z>=40 Then Begin.

Writeln («3 »).

Writeln (b1,'3');

End; else Begin.

Writeln («2 »).

Writeln (b1,'2');

End;

Readln;

Write («Прізвище: »); {вписування фамилии}.

Readln (a); d:=length (a); {виставляння пробелов}.

Write (b1,a); {запис в файл}.

For i:=1 to 14-d do Write (b1, «»);

Write («Ім'я: »); {вписування імені, процедура повторяется}.

Readln (a);

Write (b1,a); d:=length (a);

For i:=1 to 11-d do Write (b1, «»);

Write («Отчесчтво: »); {вписування по батькові, процедура повторюється }.

Readln (a);

Write (b1,a); d:=length (a);

For i:=1 to 17-d do Write (b1, «»);

Write (b1,f); d:=length (f);

For i:=1 to 8 do Write (b1, «»);

GetDate (g1,g2,g3,g4); {проставление даты}.

Writeln (b1,g3, «. », g2, «. », g1); close (b1);

Window (15,10,50,19);

TextBackGround (black); clrscr;

Програма розраховує кількість правильних відповідей за такою формулою, в відповідно до цього виставляє оцінку, запитує ваші ФИО, записує в файл, проставляє назва тіста й час їх проходження. У цьому використовується метод роботи з рядками: конкатенация (слияние) рядків. Проблемою стало коректне вписування в файл рядки, бо літер може бути різною, тому програма проставляє прогалини у файл між даними, використовуючи даних про довжині рядків прізвища, імені, по батькові і віднімаючи їх із постійного числа.

Таймер, системне время.

Таймер розробили для відліку часу на тест, час вводиться попередньо упорядником тесту. З іншого боку, паралельно із конкретним висновком часу на тест виводиться поточне системне час. Дія таймера грунтується на переменной-счетчике, яка через певні проміжки часу зменшує своє значення на 1(секунду). Системне час виводиться завдяки процедурі GetTime. Repeat {цикл лічильника времени}.

Window (60,20,70,21); {вікно виведення времени}.

TextBackGround (black); clrscr; z2:=z2−1; {зворотний відлік секунд}.

If z22 Then Begin{проверка наявності у файлі пароля}.

Write («введіть пароль »);

Readln (f); {введення пароля}.

If af Then Begin.

Write («пароль зрадливий »);

GoTo l1; {вихід із процедуры}.

End;

End else Begin close (u);

Reset (u);

End;

Readln (c, f);

Writeln («тест на тему «», f, «» «); {висновок теми тесту} z2:=60; repeat.

Window (60,20,70,21); {закриття вікна пароля}.

TextBackGround (black); clrscr;

TextColor (yellow); z2:=z2−1; {включення таймера}.

If z2.

Показати весь текст
Заповнити форму поточною роботою