2.3.2. Вопросы
Файлы, содержащие вопросы к разделам 3,4,5,6,7 являются так же как и файлы теории файлами типа запись. Они содержат по три поля.
Первое поле Р1 и под него выделен один символ. Поле используется как поле флагов. Значения этих флагов приведены в табл.6
Таблица 6
Значения флагов поля Р1Символ поля Р1 | Значение | Действия программы |
0 | Конец файла | При считывании записи с этим символом программа прекращает поиск нужного номера вопроса. |
* | Конец вопроса | Прекращается вывод содержимого поля РЗ (текста вопроса) на экран. |
Любой другой ASCII-символ | Признак наличия иллюстрации | CASE сравнивает этот символ с имеющимися у него константами и выводит соотв. иллюстрацию на экран. Если символ среди констант не обнаружен, это не мешает дальнейшему считыванию текста. Поэтому целесообразно иллюстрации обозначать сразу при написании БД,а затем вносить соотв. изменения в ПО. |
Второе поле - Р2. Оно состоит из двух символов и предназначено для обозначения начал и номеров вопросов. Поле может содержать номера с 01 по 99. При считывании записи программа анализирует поле Р2 и если считанный номер соответствует требуемому, то выводит содержимое поля РЗ (текст вопроса) на экран до тех пор, пока в поле Р1 не появится признак конца вопроса.
Третье поле - РЗ - содержит текст самих вопросов и под него выделено 69 символов. Аналогично полю Р2 файла теории это поле должно содержать ровно 69 символов и, в случае если значащих символов в строке меньше 69, следует "добить" символы "пробел".
В отличие от порядка считывания файла теории, файл вопросов имеет флаг признака конца вопроса. Таким образом на экран выводится текст вопроса начиная с нужного номера и до появления флага признака конца вопроса. Поэтому при наборе текста вопросов необходимо следить, чтобы вопрос поместился в поле экрана , т.е. не превышал 32 строк, имелись необходимые пустые строки, отступы, красные строки и т.д... Пустые строки в конце вопроса "добивать" не следует.
При внесении изменений в файл вопросов базы данных следует помнить следующее:
1) поле Р1 должно занимать 1 символ. В случае отсутствия в нем флага поле должно быть пустым;
2) поле Р2 должно занимать 2 символа;
3) поле РЗ должно занимать 69 символов. Если в строке необходимо поместить больше символов, то их следует перенести на другую строку, а если значащих символов меньше 69, то следует "добить" символы "пробел" так, чтобы строка составляла всего 69 символов;
4) текст вопроса должен начинаться номером вопроса, содержащимся в поле Р2 и кончаться символом '*' , содержащимся в поле Р1;
5) символ - признак иллюстрации можно ставить в любом месте поля Р1 напротив текста вопроса. Место нахождения иллюстрации будет определено программным путем;
6) в конце файла следует поставить значок '0' в поле Р1. Остальные поля этой записи считываться не будут ;
7) после окончания написания базы данных следует проверить еще раз соответствие всех строк необходимой длине (после нажатия клавиши END курсор должен останавливаться в позиции 72);
2.3.3. Справки
Файл справок является файлом типа запись и имеет пять полей. Первое поле - Р1 - поле флагов, под которое отведен один знак. Значение флагов поля Р1 приведено в табл.7
Таблица 7 Значения флагов поля Р1Символ поля Р1 | Значение | Действия программы |
0 | Конец файла | При считывании записи с этим символом программа прекращает поиск нужного номера вопроса. |
* | Конец вопроса | Прекращается вывод содержимого поля РЗ (текста вопроса) на экран. |
Любой другой ASCII-символ | Признак наличия иллюстрации | Оператор CASE сравнивает этот символ с имеющимися у него константами и выводит соответствующую иллюстрацию на экран. Если символ среди констант не обнаружен, это не мешает дальнейшему считыванию текста. Поэтому целесообразно иллюстрации обозначать сразу при написании базы данных, а затем вносить соответствующие изменения в программу. |
Поле Р2 содержит номера вопросов от 01 до 99. Под это поле отводится 2 знака. Программа, считывая поле Р2 анализирует его значение и, если оно соответствует нужному номер вопроса, то начинает поиск нужного номера ответа в поле РЗ вплоть до появления признака конца вопроса в поле Р1.
Поле РЗ - поле флагов. Под него отведен один знак. Числа 1,2,3,4 - номера ответов. При полном обновлении базы данных возможно увеличить или уменьшить количество вариантов ответов. Однако, необходимо при этом внести изменения и в программу. Поле РЗ содержит и признак конца справки. Таким образом, программа, найдя нужный номер ответа начинает считывать и выводить на экран справку -содержимое поля Р4 до появления значка '*' в поле РЗ.
Поле Р4 содержит текст справок. Под него отведено 68 знаков. Необходимо при написании базы данных четко соблюдать размеры всех полей.
Поле Р5 - поле оценки. Под него отведено 3 знака. Это обусловлено разницей в длине ASCIIZ-строки и строки типа string. Оценка должна выглядеть следующим образом: 001, 002, 003, 004, или 005. Программа обращается к этому полю когда находит нужный номер ответа Поэтому оценку следует помещать в поле Р5 в записях, содержащих номера ответов.
Как правило, текст справки не превышает текста вопроса, но следует помнить, что объем ее не должен превышать объема экрана, т.е. 32 строки.
При внесении изменений в файл справок следует помнить следующее:
1) поле Р1 должно занимать 1 символ. В случае отсутствия в нем флага поле должно быть пустым;
2) поле Р2 должно занимать 2 символа;
3) поле РЗ должно занимать 68 символов. Если в строке необходимо поместить больше символов, то их следует перенести на другую строку, а если значащих символов меньше 68, то следует "добить" символы "пробел" так, чтобы строка составляла всего 68 символов;
4) текст справки должен начинаться номером ответа и кончаться символом '*' , содержащимися в поле РЗ;
5) запись, содержащая в поле Р1 признак конца вопроса не считывается далее и не выводится на экран. Поэтому конец вопроса и конец последней справки в вопросе не должны попадать в одну запись, т.е. должны находится в разных строках.
6) символ - признак иллюстрации можно ставить в любом месте поля Р1 напротив текста справки. Место нахождения иллюстрации будет определено программным путем;
7) в конце файла следует поставить значок 'О1 в поле Р1. Остальные поля этой записи считываться не будут ;
8) после окончания написания базы данных следует проверить еще раз соответствие всех строк необходимой длине (после нажатия клавиши END курсор должен останавливаться в позиции 76);
Всякое внесение изменений в базу данный вплоть до ее полного обновления требует внимания и точности . Необходимо четко соблюдать размеры всех полей записи. В противном случае возможны ошибки. Например, появление значков конца строки в выводимом тексте, отсутствие вывода результатов работы и др..
... набор процедур и функций языков программирования Basic и Pascal, позволяют управлять графическим режимом работы экрана, создавать разнооборазные графические изображения и выводить на экран текстовые надписи. ГЛАВА 2. ГРАФИЧЕСКИЕ ВОЗМОЖНОСТИ ЯЗЫКА ПРОГРАММИРОВАНИЯ В КУРСЕ ИНФОРМАТИКИ БАЗОВОЙ ШКОЛЫ (НА ПРИМЕРЕ BASIC И PASCAL) 2.1 Разработка мультимедиа курса «Графические возможности языков ...
... деятельности во внешней речи про себя и этап выполнения деятельности в форме внутренней речи. Данные характеристики деятельности и этапы ее становления и определяют требования к составлению обучающих программ. 2. При оценке авторской технологии проверяйте ее на соответствие признакам педагогической (методической) технологии Классификационные параметры технологии По уровню применения: ...
... программирования Турбо Паскаль. Диалог между компьютером и играющим осуществляется как в меню, так и во время самой игры. 2. СПЕЦИФИКАЦИЯ ИГРОВОЙ ПРОГРАММЫ «SIEGE» 1. Название задачи Компьютерная игра. Название программы – «Siege». Система программирования Turbo Pascal. 2. Описание Игра начинается с заставки, где написано название игры. Затем следует главное меню, где ...
... следует курсор установит на отметку “Exit” и нажат клавишу <Enter>. 14. Для повторения работы необходимо выполнить последовательно пункты с 4-го по 13-й. §2.3 Текст анимационно-обучающей программы механической системы Program Water_Program; Uses Crt, Graph; Const { Vvod Unit Graphics } FunWeb='c:tpBgi'; Var Gd,Gm,I,X,Y,X1,Y1,XX,YY,Rad,J:Integer; Z,J1,J2,W,V,G:Integer; ...
0 комментариев