Читать курсовая по всему другому: "Создание тестирующей программы" Страница 4
констант (until key in symbol): key:=readkey until key in simbol; По нажатию клавиши 'y','Y' – происходит дальнейшее считывание. Срабатывает процедура "Test". case key of
'y','Y':writeln;
…;
end; По нажатию клавиши 'r','R' - case key of
'r','r':begin на экран выводится сообщение "Для завершения программы нажмите – n" "Для редактирования вопросов –T". При нажатии "n" происходит завершение программы и, всех процедур и функций. case key of
'n','N':halt; При нажатии "T" – происходит редактирование вопросов и ответов. case key of
't','T':begin
…;
End; Вы должны указать количество вопросов, после чего будет совершена перезапись файла. Для этого в теле основной программы нужно указать счетчик "x" – целого типа, он указывает количество вопросов; и счетчик "j" – для использования в качестве условия выхода из цикла until j=x; После пререзаписи файла старые данные файла не сохраняются. При повторном запуске программы используется уже вновь записанные данные.
Процедура "umnogenie"
Эта процедура разработана для вывода на экран сообщения – предупреждения, о том что знак умножения (shift+8) обязателен, иначе ответ не будет считатьс правильным. Procedure umnogenie;
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.
Начинаем цикл с предусловием: пока не конец файла, начинаем подпрограмму. While not eof(f) do begin Логическая функция EOF(var f): Boolean возвращает значение TRUE, когда при чтении достигнут конец файла. Это означает, что уже прочитан последний элемент в файле или файл после открытия оказался пуст.
Счетчик "z" – количество вопросов, присвоим шаг +1 т.е после каждого прохода цикла, "z" будет на одну единицу больше. z:=z+1;
C помощью оператора "clrscr" - очищаем экрана, на протяжении всего цила. Это для того, чтобы новый вопрос выводился на
Похожие работы
Интересная статья: Основы написания курсовой работы

(Назад)
(Cкачать работу)