|
#16
|
|||
|
|||
Цитата:
|
#17
|
|||
|
|||
Создание теста
У меня еще один вопрос возник. Если я не ошибаюсь то в Delphi можно создать свой тип файла со своей структурой. Возможно ли в нем сохранять результаты тестирования на каждого тестируемого человека отдельно, и в случае надобности просто из него вытаскивать информацию например для создания отчета и последующей распечатки? И возможно ли в структуре такого файла указать таблицу с закрашенными ответами?
|
#18
|
|||
|
|||
Поскольку тип файла определяешь ты сам, то, соответсвенно, в файле будет храниться то, что ты напишешь там хранить. Простейший вариант - файл с записями (record). В этом случае ты в программе создаешь запись для хранения данных об одном объекте (тестируемом), а для хранения данных о всех тестируемых создаешь массив. Одно замечание. Размер записи в таком случае должен быть фиксированный, т.е. например динамические массивы и AnsiString использовать нельзя.
Пример: Код:
type MyRecord = record Name : String[80]; // Pascal-строка, такие можно Result : Integer; Answer1 : Boolean; Answer2 : Boolean; ... end; var A :Array Of MyRecord; // массив для хранения данных F : File Of Myrecord; // файл для сохранения результатов ... // Запись в файл var I : Integer; begin AssignFile(F,'myfile.dat'); Rewrite(F); For I := Low(A) To High(A) Do Write(F,A[i]); CloseFile(F); end; С другой стороны можно использовать файловые потоки (TFileStream) для записи/чтения. Тут возможностей больше, но ты сам должен побеспокоиться об обепечении правильной записи/чтения данных. Например, сохраняя строку, сначала надо записать ее длинну, потом сами данные. Ну и при считывании в обратном порядке - сначала вычитывем сколько данных у нас хранится в файле, а потом читаем сами данные. |
Этот пользователь сказал Спасибо lmikle за это полезное сообщение: | ||
Vit614 (17.02.2015)
|
#19
|
|||
|
|||
Создание теста
Вот программа на основе которой я хочу сделать тест. В этой программе есть несколько тестов. Меня интересует Кетелл.
Последний раз редактировалось Vit614, 20.02.2015 в 12:16. |
#20
|
|||
|
|||
Создание теста
Пароль для вывода результата и просмотра архива ПСИХОЛОГ
|
#21
|
|||
|
|||
Создание теста
Возможно ли сделать программу чтобы она была запущена на нескольких компьютерах одновременно? Хочу разместить её в локальной сети, чтобы можно было тестировать несколько человек одновременно на разных компьютерах.
|
#22
|
|||
|
|||
Цитата:
Тогда либо городить свой сервер (в принципе, нужен только для работы с результатами тестов), либо использовать СУБД, можно какую-нить легковесную, типа FireBird (кстати, у нее есть как нормальная редакция, так и Embedded, соответсвенно, можно не меняя прогрпмму сделать как локальную версию, так и распределенную) или MS SQL Server (Express бесплатный, так же есть локальная редакция, раньше называлась MSDE, хотя, если не ошибаюсь, она все-таки требует установки, в отличии от Embedded Firebird, который достаточно просто "бросить" рядом). Но тогда можно и вопросы теста хранить в БД, не нужно будет обновлять все клиентские копии, обновил БД и у всех уже новая версия. |
Этот пользователь сказал Спасибо lmikle за это полезное сообщение: | ||
Vit614 (18.02.2015)
|
#23
|
|||
|
|||
Я делал систему тестирования, в том числе с вопросами с начислением баллов по общему принципу с последующим обчислением их в градации прохождения теста (градации дзадаются при создании теста составителем), причём непосредственно для психологического тестирования, делал как на файлах (но при много-клиентской работе надо отдельно потом с машин файлы собрать дополнительной прожкой для массовой обработки резалтов) так и бдшную версию.
Таблиц только цветных не делал, но всякие диаграммы, отчёты в куче разных вариантов. Самым хитрым считаю вопрос персистентности сущности теста - если тест сделали на Н вопросов, люди прошли тест, потом вопросы добавились - и уже заново картину тестирования тех людей получить проблематично, надо придумывать механизмы фиксации фактов прохождения тестов (сохранять какие-то данные из теста в сущности "результатов теста" для их фиксации). |