помогите с конструктором тестов, нужна помощь |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
помогите с конструктором тестов, нужна помощь |
glebik |
Сообщение
#1
|
Новичок Группа: Пользователи Сообщений: 19 Пол: Мужской Репутация: 0 |
нужна прога - конструктор тестов на pascal
в ней используются разные типы вопросов,программа создаёт и проводит тест . помогите пожалуйста ,если есть готовая прога или наработки. Сообщение отредактировано: glebik - |
Артемий |
Сообщение
#21
|
Помощник капитана Группа: Пользователи Сообщений: 601 Пол: Мужской Реальное имя: Артем Репутация: 2 |
Руки мне надо поотбивать.... Очень сорри, больше так не буду...
Глебик, вот пахалка: Первая: type Вторая: type P.S. Label 10 - это метка для оператора безусловного перехода goto. -------------------- Dum spiro spero!
|
volvo |
Сообщение
#22
|
Гость |
glebik, если тебе все-таки интересна реализация моего метода - см. у меня на сайте:
Здесь |
glebik |
Сообщение
#23
|
Новичок Группа: Пользователи Сообщений: 19 Пол: Мужской Репутация: 0 |
Нет слов просто СПАСИБО!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
glebik |
Сообщение
#24
|
Новичок Группа: Пользователи Сообщений: 19 Пол: Мужской Репутация: 0 |
Volvo в 4-м типе вопросов есть проблема, я не понял структуру его ввода.
Например, при вводе теста я выбрал 4-й тип и 4 варианта ответов, мне казалось что комп должен спросить 2 пары соответствий(первый - второй), но он запрашивает 4 пары, почему? |
volvo |
Сообщение
#25
|
Гость |
Ну, если у тебя 4 варианта ответов, КАЖДЫЙ из которых состоит из одной опции, а не из ПАРЫ "первый столбец - второй столбец" (как у меня сделано, более логично, не так ли? Если есть 4 варианта - это значит, 4 пары соответствий, или я должен догадаться, что если я ввел 3 варианта решений, то введу полтора соответствия?), тогда да - надо вводить n / 2 пар...
Это уже додумывай сам, я привел ПРИМЕР решения программы, а не программу "под ключ". |
glebik |
Сообщение
#26
|
Новичок Группа: Пользователи Сообщений: 19 Пол: Мужской Репутация: 0 |
Привет , это снова я появилась новая проблема с конструктором тестов. Программа Volvo отличная, но проблема в том что мне необходимо чтоб 2-я часть программы перемешивала ответы. А в программе ответы в файл записываются числами , как их перемешать чтоб всё работало я не знаю. Помогите!
|
-Volvo- |
Сообщение
#27
|
Гость |
Перемешивала ответы - это что значит? Может, перемешивала вопросы? То есть, тебе нужно чтобы случайно выбирался один вопрос из всех ранее введенных?
|
glebik |
Сообщение
#28
|
Новичок Группа: Пользователи Сообщений: 19 Пол: Мужской Репутация: 0 |
Вопросы тоже надо перемешать(но это второстепенно).
Важнее перемешать варианты. Напишу на примере. Пусть тип вопроса 1 правильный из многих вариантов. Я ввожу вопрос: кто написал война и мир?( в голову нового ничо не полезло поэтому написал старый пример). Пусть вариантов ответов 4. 1 glebik 2 лермонтов 3 толстой 4 Volvo правильный ответ:3. если я правильно понял в файл записывается 3 ,а не толстой. А теперь надо чтобы варианты при выводе вопроса на экран перемешались. Это должно выглядеть так, я запускаю сам тест и на экране появ-ся: кто написал война и мир? 1 лермонтов 2 glebik 3 Volvo 4 толстой (варианты перемешались) Но в файле записана 3 и если я введу 4 то ответ правильным уже не будет(в этом сложность). |
Алена |
Сообщение
#29
|
Гость |
Смотри, что надо сделать: в функции get_answer есть вложенная процедура print_options, которая отвечает за вывод вариантов ответа... Так вот. Эту процедуру немного переделываем:
procedure print_options(b: boolean; var new_ans: integer); Но этого недостаточно. Теперь надо еще переделать все вызовы print_options на вот такие: во всех местах Case, кроме ans_2 перемешивать варианты не надо, поэтому вызываешь так: print_options(false, new_ans); а в случае ans_2, там где перемешать-таки надо, делаешь:
(new_ans - новая переменная, типа Integer) |
glebik |
Сообщение
#30
|
Новичок Группа: Пользователи Сообщений: 19 Пол: Мужской Репутация: 0 |
Спасибо за помощь , но я не понял при помощи этих изменений я могу перемешивать варианты любого типа вопросов(1 не надо), а то 2-й тип я только для примера указал?
|
Алена |
Сообщение
#31
|
Гость |
Если бы ты говорил сразу, что ты хочешь получить, а не так как ты делаешь - в час по чайной ложке, то все было бы намного проще... Да, с помощью подобных изменений можно добиться того, что тебе надо, но делать этого я не буду... Потому, что потом опять выяснится, что надо добавить еще немного, потом - еще, и в итоге программа превратится в совершенно непонятную вещь, состоящую целиком из костылей, только для того, чтобы она отработала тестовый пример, сдать ее и забыть.
Я программы для "сдать и забыть" не пишу. Нужна помощь - говори СРАЗУ и ПОЛНОСТЬЮ, какие изменения тебе нужно внести в программу. Сообщение отредактировано: Алена - |
glebik |
Сообщение
#32
|
Новичок Группа: Пользователи Сообщений: 19 Пол: Мужской Репутация: 0 |
Прошу прощения за безграмотную постановку вопроса . Вообще мне нужно чтобы варианты перемешивались при выводе( в типах с 2-5) и всё вообщем-то никаких добавок и не надо.
|
glebik |
Сообщение
#33
|
Новичок Группа: Пользователи Сообщений: 19 Пол: Мужской Репутация: 0 |
Сроки поджимают. Помогите кто нибудь!!!!!!!!!!!!!!!!!!!!!! |
Артемий |
Сообщение
#34
|
Помощник капитана Группа: Пользователи Сообщений: 601 Пол: Мужской Реальное имя: Артем Репутация: 2 |
ну так что сложного посчитать сколько там в файле этих вариантов и сгенерировать вывод случайных чисел, а по числу уже смотреть, какой вопрос под этим номером выводить..
-------------------- Dum spiro spero!
|
glebik |
Сообщение
#35
|
Новичок Группа: Пользователи Сообщений: 19 Пол: Мужской Репутация: 0 |
Если бы я мог это сделать я бы и просить не стал. Я в Паскале полный ноль. Ну если это так легко и просто то помогите если не трудно.
|
Артемий |
Сообщение
#36
|
Помощник капитана Группа: Пользователи Сообщений: 601 Пол: Мужской Реальное имя: Артем Репутация: 2 |
Тогда приведи полный код того,что ты используешь..
-------------------- Dum spiro spero!
|
glebik |
Сообщение
#37
|
Новичок Группа: Пользователи Сообщений: 19 Пол: Мужской Репутация: 0 |
Всё что у меня есть это программа Volvo, ссылка как ты знаешь есть в этой теме.
У него в программе правильные ответы записываются числами. Мне нужно просто чтоб при выводе вариантов ответов они перемешивались случайным образом (2-5 типы). И всё вообщем-то. |
glebik |
Сообщение
#38
|
Новичок Группа: Пользователи Сообщений: 19 Пол: Мужской Репутация: 0 |
Неужели никто не поможет... Помогите, работу послезавтра показывать надо!
|
volvo |
Сообщение
#39
|
Гость |
Вечером (после 20-00 по GMT +2)... Раньше не вернусь...
|
volvo |
Сообщение
#40
|
Гость |
Как и обещал - вот решение:
quest.pas ( 7.33 килобайт ) Кол-во скачиваний: 461 Оно работает (тестировал) со всеми вариантами вопросов, единственное, что не стал делать - это переводить это опять на русский, смотри, где есть изменения (я подскажу, изменения - в добавлении в самом начале типа TArrType, добавлена функция find_shuffle, изменена функция print_options, ну, и естественно во всех трех случаях - вопросы №2, №3, №5 /в четвертом порядок не важен/ изменилась обработка полученного от пользователя ответа...) Можно было еще немного пошаманить и убрать совсем первый параметр в print_options, но это уже сам, если хочешь... |
Текстовая версия | 15.05.2024 5:17 |