Реферат по предмету "Информатика, программирование"


Создание тестирующей программы

Содержание
Введение
РАЗДЕЛ1. Задача программы
1.1Постановка задачи
РАЗДЕЛ2. Обзор существующих тестирующих программ и обоснование выбора темы
2.1Тестирующая программа по английскому языку
РАЗДЕЛ3. Разработка программы
3.1Используемые методы
3.2Алгоритм реализации роботы
Заключение
Списоклитературы
Приложение1
1.1Код программы для создания файла с вопросами и ответами
1.2Код программы для чтения файла с вопросами и введения ответов
Приложение2
2.1Блок – схема программы
ВВЕДЕНИЕ
Оглядываясьназад, в эпоху становления средств вычислительной техники, можно условновыделить ступени развития автоматизированных обучающих систем.
Первые, самыеранние, представляли собой лишь электронные версии печатных изданий и содержалитолько текстовую информацию. Достоинством таких систем в сравнении с бумажнымианалогами, по существу, являлась лишь интеграция информации.
Постепенно, сразвитием вычислительной техники, их стали сменять системы, которыми можно былопользоваться и как справочниками, то есть поисковые системы. Далее арсеналавтоматизированных обучающих систем пополняется статической графикой,компонентами мультимедиа (звук и видео), компьютерной анимацией.
Таким образом,системы развивались в области информационных баз знаний, поддерживающих уже нетолько текстовое, но и аудио — видеовоздействие на обучаемого.
Колоссальныйскачок был сделан и в сфере развития систем контроля, ведь без них, посуществу, обучающая система мало чем отличается от справочного пособия. Итак,средства контроля обеспечивают ввод ответа обучаемого, обработку полученнойинформации и выдачу управляющего воздействия (например, вы вводите ответ, асистема одобряет или отвергает его).
Следуя дальшепо ступеням интеллектуализации обучающих систем, можно заметить, как плавномеханизмы контроля перетекают в механизмы анализа высказываний обучающегося.Отметим, однако, что не следует путать их с простым контролем как простойоценки единичного события с интегральным оцениванием, являющимся результатоманализа и систематизации множества разнородных ответов данных в разное время.Не вдаваясь в теорию обучения, давайте рассмотрим простой пример. Ведь чем посути отличается средство для создания обучающего курса от средства для созданиямультимедийных энциклопедий? Примерно тем же, чем учебник отличается от лектора,ведущего лекции в учебном заведении.
Ведь учебникдает ответы на конкретные вопросы, помогает решать конкретные задачи ипозволяет контролировать себя, заглядывая на последнюю страничку и сверяяправильный ответ с полученным. А как быть тем, кто не знает, какой вопросзадать или не может правильно его сформулировать? В классических учебныхзаведениях для этого существует лектор, который заботливо проводит студента покоридору знаний, понимает, с чего начать, и по ответам студента, на основесобственного опыта, делает выводы об уровне знаний студента в целом (то естьдает ему интегральную оценку).
Инымисловами, анализ высказываний обучающегося позволяет не только контролироватьучебный процесс, но и определяет стратегию обучения в зависимости от предысторииответов и исходя из определенного набора правил.
В свою очередь, из анализа высказываний обучаемого проистекаетуправляющее воздействие на него, которое в частном случае может быть иудаленным. Последний метод, который называется дистанционной формой обучения, внастоящее время находится в стадии становления. Вследствие данногообстоятельства в последнее время технологии автоматизированного обучения всебольше тяготеют к Internet -технологиям.

РАЗДЕЛ 1. Задачапрограммы
1.1 Постановка Задачи
Необходимо создатьтестирующую программу, которая будет проверять знания тестируемого человека.При этом должно быть не меньше двадцати вопросов. При завершение тестирования,программа должна выводить оценку тестируемого.

РАЗДЕЛ 2. Обзорсуществующих тестирующих программ
2.1 Тестирующаяпрограмма по английскому языку
Существует множестворазнообразных программ, которые производят проверку знаний учащихся, поразличны предметам обучения. Все обучающие программы могу быть написаны наразны языках программирования: Delphi,C++, С Sharp,Turbo Pascalидр.
Например: Тестирующаяпрограмма по английскому языку. Эта программа прописана на языке объектногопрограммирования Delphi.В среде Delphi существуют ужесозданные формы процедур, функций и др. Этот язык облегчает работу описанияпрограмм тем, что не нужно пописывать формы. Но, как и во всех других языках програмирования,Delphi содержит своинедостатки. Например: если программист укажет форму процедуры вручную, токомпилятор её не увидит. Для этого нужно в настройках отмечать, что указаннуюформу нужно прочитать.
TurboPascal – это основа всехязыков программирования, поэтому программа тестирования по математике написанана этом языке.

РАЗДЕЛ 3. Разработкапрограммы
3.1 Используемые методы
В программе используетсяследующий алгоритм работы с данными;
Использование записей.Записи — это структура данных, состоящая из фиксированного числа компонентов,называемых полями записи. В отличие от массива, компоненты (поля) записи могутбыть различного типа. Чтобы можно было ссылаться на тот или иной тип компонентзаписи, поля именуются.
Использование файловойсистемы. Файл – это создаваемый документ, при дальнейшем его использовании впрограмме. Все данные тестирования хранятся в файле name.datи загружаются в программу при помощи инициализации файлов. Для этого нужноуказать направление передачи данных для этого файла. В турбо Паскале можнооткрыть файл для чтения. Записи информации, а также для чтения и записиодновременно.
Использование модуля CRT.Модуль CRT содержит мощныеподпрограммы, которые предоставляют возможность полного управления PC.Подпрограммы модуля CRT обеспечиваютконтроль над текстовыми режимами экрана, расширенными кодами клавиатуры,цветами, окнами и звуком.
Использование процедур.Процедура – это независимая именованная часть программы, которую можно вызватьиз любой части программы по имени для выполнения определённой в нейпоследовательности действий.
3.2 Алгоритм реализацииработы
Для реализацииалгоритма создадим две программы:
1.        Программа«Vvod» – это программа,которая создаёт файл с вопросами и ответами;
2.        Программа«Initialization»– при запуске программы выводится сообщение о начале тестирования и производитсяинициализация файла, т.е считывание вопросов и даётся возможность ввести своиответы на вопросы.
1. «Vvod».Создаём запись. Раздел записи состоит из нескольких идентификаторов полей, заидентификатором ставится двоеточие, и описание типа полей.
Typerec=record
vopros:string;
otvet:string;
end;
Здесь показано, что recестьзапись с полями vopros,otvet стриговоготипа.
·         Vopros – будетсодержать вопрос;
·         Otvet – будетсодержать ответ;
Создадим переменные:
ü  f – файлстрингового типа;
ü  x — целого типа,используется в качестве счётчика, который используется в цикле ввода вопросов;
ü  q — содержитзапись типа rec, для ввода записи вфайл;
Тело программы:
В начале программы,счётчик х обнуляем: х:=0. С помощью операторов Assignи Rewrite создается файл даннаяпрограмма создоёт запись в файл name.dat.Создаём цикл с пост условием(repeat).
Счётчику х присвоим шаг+1: х:=х+1: т.е после каждого прохода цикла, х будет на одну единицу больше. Длятекстовых файлов, открытых процедурой RESET, нельзя использовать процедуруWRITE или WRITELN. Нужно использовать стандартную процедуру REWRITE.

REWRITE()
инициирует записьинформации в файл, связан с sqранее с файловой переменной .Процедурой REWRITE нельзяинициировать запись информации в ранее существовавший дисковый файл: привыполнении этой процедуры старый файл уничтожается и никаких сообщений об этомв программу не передается. Новый файл подготавливается к приему информации иего указатель принимает значение 0.
При запуске программына экране будет выводиться сообщение «ввести вопрос». Послесчитывания переменной q.vopros происходитзапись в файл и на экране выводится новое сообщение «введите ответ» считыванияпеременной q. otvetпроисходитзапись в файл. На экране выводится новое сообщение «ввести вопрос».
Эти два сообщения будутвыводиться на экран и записываться в файл name.datдо тех пор, пока вы не введёте двадцать вопросов и ответов, т.е пока х не будетравен n(Условиевыхода из цикла: untilx=n).
После окончанияколичества сеансов ввода, файл закрывается. Функция close(f)– закрывает файл, однако связь файлов с именем файла, установленная ранеепроцедурой ASSIGN, сохраняется. Вызовпроцедуры Close необходим при завершении работы с файлом. Если по какой-то причинепроцедура Close не будет выполнена, файл все — же будет создан на внешнемустройстве, но содержимое последнего буфера в него не будет перенесено. Длявходных файлов использование оператора закрытия файла необязательно.
programVvod;
typerec=record
vopros:string;
otvet:string;
end;
varf:file of string;
x:integer;
q:rec;
begin
x:=0;
assign(f,'name.dat');
rewrite(f);
repeat
x:=x+1;
writeln('введитевопрос');
readln(q.vopros);
write(f,q.vopros);
writeln('введитеответ');
readln(q.otvet);
write(f,q.otvet);
untilx=n;
close(f);
end.
2 «Initialization»
В начале этой программына экран выводится сообщение процедуры «MainMenu».Дляначала тестирования нажмите «y».Для редактирования вопросов или выхода из программы нажмите «R».Чтобы создать эту процедуру, нужно в теле основной программы подключить модуль «crt»,описать константы, в описании переменных указать ключ символьного типа:
usescrt;
constsimbol:set of char=['y','Y','n','N',’r’,’R’,’t’,’T’];
….
var… key:char;
ProcedureMainMenu(posmaster:word);
В описании констант мыуказываем ['y','Y','n','N',’r’,’R’,’t’,’T’]– это символы вводимые с клавиатуры. Далее начинаем цикл с пост условием
Repeat
Ключу (key)присвоим значение считать ключ (readkey), при этом условие выхода ключ указанный в списке констант (untilkey insymbol):
key:=readkeyuntil key in simbol;
По нажатию клавиши 'y','Y'– происходит дальнейшее считывание. Срабатывает процедура«Test».
casekey of
'y','Y':writeln;
…;
end;
Понажатиюклавиши'r','R' -
casekey of
'r','r':begin
на экран выводитсясообщение «Для завершения программы нажмите – n»«Для редактирования вопросов –T».При нажатии «n» происходитзавершение программы и, всех процедур и функций.
casekey of
'n','N':halt;
При нажатии «T»– происходит редактирование вопросов и ответов.
casekey of
't','T':begin
…;
End;
Вы должны указатьколичество вопросов, после чего будет совершена перезапись файла. Для этого втеле основной программы нужно указать счетчик «x»– целого типа, он указывает количество вопросов; и счетчик «j»– для использования в качестве условия выхода из цикла
until j=x;
После пререзаписи файластарые данные файла не сохраняются. При повторном запуске программыиспользуется уже вновь записанные данные.
Процедура «umnogenie»
Эта процедураразработана для вывода на экран сообщения – предупреждения, о том что знакумножения (shift+8) обязателен, иначеответ не будет считатьс правильным.
Procedureumnogenie;
Begin
Writeln(‘учтите,что при вводе ответа знак умножения "*" (shift+8)– обязателен’);
Writeln(‘иначе ответ не будет считаться правильным. ‘);
Writeln(‘Для продолжения нажмите ENTER’);
End.

Процедура " Test"
Создадим переменные:
·         Readstring – переменная,для считывания переменной стрингового типа из файла;
·         Otv – переменная стринговоготипа, для ввода ответа;
·         Otvfile – переменнаяответа из файла, для сравнения правильности ответов на вопросы;
·         z,e, u – переменные целого типа (счетчики). «z»– Количество вопросов; «е» – Счётчик правильных ответов; «u»– Оценка;
·         z1, z2,z3 – переменные действительноготипа, для определения количества правильных ответов на оценку.
Переменные z1,z2, z3описываем в теле основной программы
Var… z1, z2, z3: integer;
Эти переменные зависятот того сколько вопросов «x»вы ввели. Количество вопросов делим на заданные числовые переменные. Встроеннаяфункция «round» округляет полученные ответы до ближайшего целого
z1:=round(x/4);
z2:=round(x/2);
z3:=round(x/1.3);
Переменные z, e, u такжеописываются в теле основной программы.
Var… z, e, u :integer;
Начало процедуры: обнуляемсчетчики «z», «е» (для корректной работы программы).

e:=0;z:=0;
Далее с помощью процедуры«ASSIGN» связываем ранее объявленные файловые переменные с именем ужесуществующего файла.
assign(f,'name.dat');
Cпомощью стандартной процедуры RESET,инициализируем файл. Инициировать файл означает указать для этого файланаправление передачи данных.
reset(f);
При выполнении этойпроцедуры дисковый файл подготавливается к чтению информации. В результатеспециальная переменная-указатель, связанная с этим файлом, будет указывать наначало файла, т.е. на компонент с порядковым номером 0.
Начинаем цикл спредусловием: пока не конец файла, начинаем подпрограмму.
Whilenot eof(f) do begin
Логическая функция EOF(varf): Boolean возвращает значение TRUE, когда при чтении достигнут конец файла. Этоозначает, что уже прочитан последний элемент в файле или файл после открытияоказался пуст.
Счетчик «z»– количество вопросов, присвоим шаг +1т.е после каждого прохода цикла, «z»будет на одну единицу больше.
z:=z+1;

Cпомощьюоператора «clrscr»- очищаем экрана, на протяжении всего цила. Это длятого, чтобы новый вопрос выводился на месте предыдущего.
Выводимсообщение о номере вопроса:
write('вопрос',z,':','');
С помощьюпорцедуры «read»– считываем связанную переменную из файла:
read(f,readstring);
read(f,namefile);
Далее на экранвыводится сообщение считанной переменной и сообщение про возможность вводаответа:
Writeln(readstring);
Write('Ответ');Readln(otv); writeln;
Оператора «Readln(otv)»считывает вводимый ответ с клавиатуры.
Для контролированияколичества правильных ответов и вывода на
экран оценки используемалгоритм с ветвлением.
«If»– операторветвления.
Ifx>=0 then y:=x else y=-x
Если введённый ответбудет соответствовать считываемому ответу из файла, то количество правильныответов будет увеличиваться, тем самым увеличивается оценка проверки знанийтестируемого.

ifotv = otvfile then begin e:=e+1; u:=u+1;
Для того чтобы оценкасоответствовала не количеству вопросов, а оценкам пяти бальной системы, нужноуказать условие: если количество ответов меньше либо равна z1,ваша оценка – 2 иначе, если ответов больше z1,но меньше либо равно z2,ваша оценка – 3 иначе, если количество ответов больше z2,но меньше либо равна z3,ваша оценка – 4 иначе, ваша оценка – 5;
ifu
If(u>z1) and (u
If(u>z2) and (u
Стандартной процедурой close(f)– закрываем файл.
Для вывода на экранпоказания счетчиков «e»«u», очистим экран «clrscr».Конец процедуры.
Clrscr;
writeln('Правильныответов ', e);
writeln('Вашаоценка ', p);
end;
Начинаем тело основнойпрограммы. После каждого выполнения цикла, очищаем экран. Всё тело программысостоит из процедур. Для выполнения процедур необходим их вызов. Вызовосуществляется по имени данной процедуры в теле программы. Имя процедуры воспринимаетсякак оператор. При его выполнении, выполняется вся подпрограмма. Посе процедуры «umnogenie»прописываем опрерато «readln»,для вывода на экран предупреждающего сообщения и задержки работы процедуры «Test».В конце программы ставится «end».

Заключение
Работа сделана на языкепрограммирования TurboPascal. Turbo Pascal являетсяреализацией Pascal'я. Самая первая версия Pascal была разработана на кафедреинформатики Стэндфордского университета швейцарским ученым Николаусом Виртом в1968 году.
С момента появленияPascal на рынке продуктов прошло много времени, прежде чем он получил всеобщеепризнание. В середине 80-х годов американской фирмой Borland International Incбыла создана реализация языка Pascal, известная и по сей день под именем TurboPascal. Эта фирма объединила очень быстрый компилятор с редактором текста идобавила к стандартному Паскалю мощное расширение, что способствовало успехупервой версии этого языка.
Язык программирования TurboPascal, является мощнойплатформой (родителем) для других языков программирования. Из TurboPascal’ ля развилосьмножество других языков, поэтому он есть составная часть всех языковпрограммирования.
В ходе разработкитестирующей программы проводилось обработка данных записи в файл, созданапрограмма для считывания созданного файла, разработана подпрограмма,обрабатываемая ответы и оценку тестируемого.
При выполнении даннойкурсовой работы были приобретены навыки работы с файлами и записями, изучёнсинтаксис данного языка программирования.
В ходе выполнения проектаданной курсовой работы:
·         былиизучены методы применения записей в файл;
·         разработанпрограммный код тестирующей программы.

Список литературы
1.Немнюгин С.А. TurboPascal. Программирование наязыке высокого
уровня:Учебник для ВУЗов
2.С.М.Окулов — 2 главы из школьного учебника по информатике;
3. C. А. Немнюгин — учебник TURBOPASCAL;
4. Delannoy C. Exercises en Turbo-Pascal, Eyrolles, Paris,1990;
5.Епанешников А. Программирование в среде Turbo-Pascal7.0 /
А.Епанешников, В. Епанешников. – М.: Диалог-МИФИ, 1993;
6.Фаронов В. В. TurboPascal 7.0. – М.: Надежда,2000;
7.Лукин С.Н. TurboPascal7.0. Самовчитель для початківців. – М.: «Діалог-МІФІ», 2002
8.. Пратт Т. Языки программирования: разработка и реализация;
9.Брукшир Дж. Гленн. Введение в компьютерные науки. – М.:
Вильямс,2001;
10. Miller L. N. Advanced programming: Design andStructure using
Pascal, Addison-Wesley publishing Company, 1986гина,М.Г.Громада.– СПб.:Наукаитехника,2001;
11Вирт Н. Алгоритмы и структуры данных. – М.: Мир, 1989.
Т.Пратт, М. Зелковиц. – СПб.: Питер, 2002;
12.Архангельский А. Я. Программирование в Delphi7. – М.: Би-
ном,2005;
13.Самуйлов С. В. Разработка программ в среде Турбо-Паскаля 7.0.
Лабораторныйпрактикум. – Пенза, 1996;
14.Есипов А. С. Информатика. Задачник;
15Марченко А. И. Программирование в среде TurboPascal 7.0 / Т. 1. – М.: Мир,1982;
16.А.Ф.Верлань, Н.В. Апатова «Информатика 10-11кл.», Киев 2001
17.С. А. Немнюгин «Учебное пособие», Санкт –Петербург 2004
18ФароновВ. В., серия: «В подлиннике», 2004 г., Изд.: БХВ-Петербург
19.Коффман Э., серия: «Руководство разработчика.», 2002 г., Изд.: Диалектика: Киев;
20.Кассера Винфрид и Фолькер «Turbo Pascal 7.0» 2003 г., Изд.: ДиаСофт;

Приложение 1
1.1 Код файла длясоздания файла с вопросами и ответами
programVvod;
typerec=record
vopros:string;
otvet:string;
end;
varf:file of string;
c:string;x:integer;q:rec;
begin
x:=0;
assign(f,'control.dat');
rewrite(f);
repeat
x:=x+1;
writeln('Введитевопрос');
readln(q.vopros);
write(f,q.vopros);
writeln('введитеответ');
readln(q.otvet);write(f,q.otvet); until x=20; close(f); end.
1.2 Код файла длячтения файла с вопросами и введения ответов
programinitialization;
usescrt;
constsimbol:set of char=['y','Y','n','N','r','R','t'];
typerec=record
vopros:string;
otvet:string;
end;
varf:file of string;z,e,u:integer;key:char;
z1,z2,z3:real;
x:integer;q:rec;j:integer;
ProcedureMainMenu;
begin
writeln('Дляначалатестированиянажмите- y');
writeln('Для редактирования вопросов или выхода из программы нажмите — R');
repeat
key:=readkeyuntil key in simbol;
casekey of
'y','Y':writeln;
'r','R':beginclrscr;
writeln('Длязавершения программы нажмите — n');
writeln('Дляредактирования вопросов -T');
repeat
key:=readkeyuntil key in simbol;
casekey of
'n','N':halt;
't','T':begin
j:=0;
assign(f,'control.dat');
rewrite(f);clrscr;
writeln('Введитеколичество вопросов');
readln(x);
repeat
j:=j+1;
writeln('Введитевопрос');
readln(q.vopros);
write(f,q.vopros);
writeln('Введитеответ');
readln(q.otvet);
write(f,q.otvet);
untilj=x;
close(f);begin halt; end;
end;
end;end;end; end;
procedureumnogenie;
begin
writeln('Учтитечтопривводеответовзнакумножения" * "(shift+8) обязателен');
writeln('иначеответ не будет считаться правильным');
writeln('Дляпродолжения нажмите — ENTER');
end;
ProcedureTest;
var
readstring,otv,otvfile:string;
begin
e:=0;z:=0;
assign(f,'control.dat');
reset(f);
Whilenot eof(f) do begin
z:=z+1;clrscr;
write('Вопрос',z,': ',' ');
writeln;writeln;inc(x);
read(f,readstring);
read(f,otvfile);
writeln(readstring);
Write('Ответ');Readln(otv);
ifotv = otvfile then begin e:=e+1;end;end;
z1:=round(x/4);
z2:=round(x/2);
z3:=round(x/1.3);
ife
if(e>z1) and(e
if(e>z2) and (e
close(f);
clrscr;
writeln('Правильныхответов’,e);
writeln('Вашаоценка',u);
end;
beginclrscr;
MainMenu;
umnogenie;readln;
Test;
end.

Приложение 2
2.1 Блок — схема
/>


Не сдавайте скачаную работу преподавателю!
Данный реферат Вы можете использовать для подготовки курсовых проектов.

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.