powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Помогите с алгоритмом прохождения опросника.
17 сообщений из 17, страница 1 из 1
Помогите с алгоритмом прохождения опросника.
    #37062445
spudei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть опросник с x вопросов,
на каждый вопрос есть y вариантов ответов,
только один ответ правильный.

Студент не знает ответов ни на один вопрос,
но может проходить вопросник много раз.
В конце прохождения студент получает результат - процент правильных ответов.

Как найти правильные ответы (только методом повторного прохождения)?

Мой вариант.
Первый раз отвечать произвольно,
записывать свои ответы и результат прохождения.
Второй раз дать те же ответы, но один ответ изменить,
посмотреть результат, делать вывод о правильном ответе на вопрос.
Если результат не изменился - оба варианта не правильные.
Если ухудшился - предыдущий ответ был верный,
если улучшился - последний ответ правильный.
Ну и так дальше до момента нахождения всех правильных ответов.

Пожалуйста, подскажите лучший вариант.
...
Рейтинг: 0 / 0
Помогите с алгоритмом прохождения опросника.
    #37062985
Xordal
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spudeiЕсть опросник с x вопросов,
на каждый вопрос есть y вариантов ответов,
только один ответ правильный.

Студент не знает ответов ни на один вопрос,
но может проходить вопросник много раз.
В конце прохождения студент получает результат - процент правильных ответов.

Как найти правильные ответы (только методом повторного прохождения)?

Мой вариант.
Первый раз отвечать произвольно,
записывать свои ответы и результат прохождения.
Второй раз дать те же ответы, но один ответ изменить,
посмотреть результат, делать вывод о правильном ответе на вопрос.
Если результат не изменился - оба варианта не правильные.
Если ухудшился - предыдущий ответ был верный,
если улучшился - последний ответ правильный.
Ну и так дальше до момента нахождения всех правильных ответов.

Пожалуйста, подскажите лучший вариант.
Записать все вопросы и найти ответы в любых источниках ;)
...
Рейтинг: 0 / 0
Помогите с алгоритмом прохождения опросника.
    #37063028
spudei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
XordalЗаписать все вопросы и найти ответы в любых источниках ;)
Так нельзя.
...
Рейтинг: 0 / 0
Помогите с алгоритмом прохождения опросника.
    #37063073
Xordal
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spudeiXordalЗаписать все вопросы и найти ответы в любых источниках ;)
Так нельзя.
вариант "выучить" вы не рассматриваете?
...
Рейтинг: 0 / 0
Помогите с алгоритмом прохождения опросника.
    #37063090
Xordal
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вспомнил игру быки и коровы . Хорошо тренирует голову и если найдете алгоритмы для игры в нее, сможете решить свою задачу.
...
Рейтинг: 0 / 0
Помогите с алгоритмом прохождения опросника.
    #37066689
spudei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Xordal, спасибо за линк.
Действительно, похожая задача.
Только не понятно, какую стратегию стоит реализовать.
...
Рейтинг: 0 / 0
Помогите с алгоритмом прохождения опросника.
    #37066826
Быки и коровы здесь не подходят, так как количество коров никогда не сообщается.
Кстати, задача в исходной формулировке возможно не будет решена способом, указанным в оп посте: если проценты округляются до скажем целых, то 1.2% и 1.3% будут оба округлены до 1.
...
Рейтинг: 0 / 0
Помогите с алгоритмом прохождения опросника.
    #37066933
Фотография Павел Воронцов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
поищите по ключевым словам "генетические алгоритмы"
...
Рейтинг: 0 / 0
Помогите с алгоритмом прохождения опросника.
    #37074232
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Исходный вариант - всё-таки O(2)
Если опросник - web-based, то можно попробовать тупо написать скрипт с перебором всех вариантов и логирование результатов.
Если же это простое приложение, а X*Y достаточно велико - иногда реверс-инжиниринг приносит достаточно быстрые результаты, особенно если приложение написано такими же разработчиками...
...
Рейтинг: 0 / 0
Помогите с алгоритмом прохождения опросника.
    #37074852
spudei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Форум: Все форумы / ПрограммирКстати, задача в исходной формулировке возможно не будет решена способом, указанным в оп посте: если проценты округляются до скажем целых, то 1.2% и 1.3% будут оба округлены до 1.

Точность округления достаточная. Если число правильных ответов изменилось - отразится на результате.
...
Рейтинг: 0 / 0
Помогите с алгоритмом прохождения опросника.
    #37074882
spudei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndreTMЕсли опросник - web-based, то можно попробовать тупо написать скрипт с перебором всех вариантов и логирование результатов.
Если же это простое приложение, а X*Y достаточно велико - иногда реверс-инжиниринг приносит достаточно быстрые результаты, особенно если приложение написано такими же разработчиками...

Запоминание данных ответов не проблема.
Вопрос в том, как с них делать выводы и какую стратегию должен использовать студент.
...
Рейтинг: 0 / 0
Помогите с алгоритмом прохождения опросника.
    #37074983
spudei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть усложнений вариант, для которого не подойдет начальный вариант прохождения.

Опросник состоит с x вапросов с x' возможных (x' > x).
x - константа во всех вариантах опросника.
...
Рейтинг: 0 / 0
Помогите с алгоритмом прохождения опросника.
    #37095657
spudei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот, пример.
Колонка - экзамен, строка - вопрос.
Подскажите, пожалуйста, как проанализировать?


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
01	a	b	c	 	d	 	 	d
02	a	b	 	 	 	c	 	d
03	a	b	 	c	d	 	 	c
04	a	 	 	b	b	c	 	 
05	a	b	 	c	d	d	 	 
06	a	b	 	 	c	 	 	 
07	a	 	 	 	a	 	 	b
08	a	 	b	c	 	d	a	a
09	a	 	b	 	c	 	 	 
10	a	 	b	c	d	a	b	 
11	a	 	b	 	c	d	 	a
12	a	b	c	 	d	a	d	 
13	a	 	b	 	 	c	 	 
14	a	 	b	c	d	 	 	 
15	a	 	b	c	 	d	 	 
16	a	b	 	 	 	c	d	a
17	a	b	 	c	 	d	c	 
18	a	 	b	c	 	 	d	 
19	a	b	 	c	a	 	d	d
20	a	b	c	d	a	 	 	 
21	a	b	c	d	 	a	b	 
22	a	a	b	 	 	c	d	c
23	a	b	 	c	d	a	 	 
24	a	 	b	 	 	 	c	d
25	a	 	b	 	c	 	d	d
26	a	 	b	c	d	a	 	d
27	a	b	c	d	 	 	 	d
28	a	 	 	 	b	c	 	d
29	a	a	 	 	b	 	c	 
30	a	 	 	 	 	b	c	d
31	a	 	 	 	b	 	c	d
32	a	a	b	c	 	 	d	b
33	a	b	 	 	b	c	 	 
34	a	b	c	 	d	a	 	b
35	a	 	 	b	a	c	 	 
36	a	 	 	 	 	b	 	c
37	a	 	 	 	 	b	c	d
38	a	 	 	b	c	 	 	 
39	a	a	b	 	c	d	c	 
40	a	 	b	c	b	 	d	b
41	 	a	b	 	a	 	c	 
42	 	a	 	 	 	 	b	 
43	 	a	b	 	 	c	d	c
44	 	a	b	c	 	d	a	 
45	 	a	b	c	d	 	a	c
46	 	a	b	 	 	c	d	a
47	 	a	 	 	 	 	b	 
48	 	a	b	c	 	d	b	d
49	 	a	b	 	a	c	 	d
50	 	a	 	b	c	 	d	c
51	 	a	 	 	 	 	 	b
52	 	a	 	 	b	c	 	 
53	 	a	 	b	 	c	d	d
54	 	a	b	c	 	d	 	 
55	 	a	 	 	 	 	b	c
56	 	a	 	 	 	b	c	 
57	 	a	b	c	 	 	d	 
58	 	a	 	b	c	 	d	 
59	 	a	b	c	b	 	d	a
60	 	a	 	 	 	 	b	 
61	 	a	b	c	d	 	 	 
62	 	 	a	b	c	d	 	b
63	 	 	a	b	c	 	d	 
64	 	 	a	 	 	b	 	c
65	 	 	a	b	 	c	d	 
66	 	 	a	b	c	 	 	d
67	 	 	a	 	 	 	 	b
68	 	 	a	b	 	 	 	c
69	 	 	a	 	 	 	 	b
70	 	 	 	a	b	 	c	d
71	 	 	 	a	b	c	 	 
72	 	 	 	a	 	b	 	 
73	 	 	 	a	 	 	 	 
74	 	 	 	a	b	 	 	 
75	 	 	 	a	b	c	 	 
76	 	 	 	 	 	a	 	 
77	 	 	 	 	 	a	b	 
78	 	 	 	 	 	 	a	 
79	 	 	 	 	 	 	a	b
80	 	 	 	 	 	 	 	a

Рез.	32	22	28	20	32	22	28	20
...
Рейтинг: 0 / 0
Помогите с алгоритмом прохождения опросника.
    #37096955
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
spudeiВот, пример.
Колонка - экзамен, строка - вопрос.
Подскажите, пожалуйста, как проанализировать?
Никак. Неясны ваши данные. Как минимум, таблица должна быть вся заполнена "буковками".

Или вы хотите сказать, что на некоторые (или все) вопросы можно не давать ответ? - тогда алгоритм достаточно прост, и реализуется за x*y проходов...
...
Рейтинг: 0 / 0
Помогите с алгоритмом прохождения опросника.
    #37098901
spudei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В приведенном примере множество возможных вопросов больше числа вопросов в одном опроснике.
Но количество вопросов всех вариантов вопросника одинаковое и все вопросы равноценные.
Если в ячейке пусто - вопрос не попал в вариант опросника.
...
Рейтинг: 0 / 0
Помогите с алгоритмом прохождения опросника.
    #37099048
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1)
- пусть мы имеем X (количество) - множество всех вопросов (например, 80)
- пусть мы имеем y - количество вариантов ответов на вопрос (например, 4)
- пусть мы имеем (или вычисляем) x - количество вопросов из множества X, заданных в данном опросе (например, 40)
- дополнительно будем считать, что X <= 95, и ответ на вопрос нужно обязательно давать, ответ на вопрос может быть только один.
2)
- прогоняем тест один раз и заполняем первоначальную таблицу вопрос/ответ - x(i) - вопрос, ответ - первый, результат теста сохраняем в S (суммарный процент).
3) основной цикл "приближения к идеалу"
Итак, вся проблема заключается в том, что мы должны сначала давать ответы на вопросы, а потом только увидим результат. НО! - множество X ограничено, поэтому чем больше дальнейших тестов мы будем проводить, тем больше вероятность того, что x будет выбираться уже из известных X'.
- сохраняем копию текущего состояния, затем проходим итерацию текущего теста
- если встречаем уже заданный до этого вопрос - отвечаем следующим ответом, но только на первый раз (все следующие уже заданные до этого вопросы - пропускаем)
- с другой стороны, если встречаем новый вопрос - отвечаем на него первым ответом (добавив вопрос в таблицу), при этом, конечно, возникает неоднозначность (разберём её далее)
- итак, если мы в данной итерации не встретили нового вопроса, то по результату теста однозначно можем сделать вывод, была ли смена ответа на тот единственный вопрос правильной: если сумма изменилась - фиксируем ответ измененного вопроса (и далее его уже не затрагиваем), если нет - к следующей итерации
- если же в данной итерации был добавлен один (или несколько) вопрос(ов), и при этом был изменен ответ на один из уже имеющихся вопросов, то возникают следующие варианты:
-- результат уменьшился -> однозначно неверный ответ на имевшийся вопрос, откатываем и фиксируем
-- результат не изменился или увеличился -> неопределенность, измененный ответ откатывается, в новых вопросах тоже ставится признак повторной проверки

В-принципе, далее гоняйте до скончания века... - копия состояния в любой момент будет наилучшим результатом.

P.S. - если О-О-Очень надо пример - то не поленюсь настрадать его, с примерным исходником и реализацией алгоритма. Весь вопрос - в сумме, с которой вы готовы расстаться
...
Рейтинг: 0 / 0
Помогите с алгоритмом прохождения опросника.
    #37099187
LockWork
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Возможно, подойдет первоначальный алгоритм, только как-нибудь оптимизировать его, чтобы сократить количество проходов...

Вот, например, допустим 4 варианта ответа на каждый вопрос. Делаем четыре прохода, в первом отвечаем на всё "а", во втором - "б" и далее, запишем результаты и получим вывод, вроде такого: "в произвольном вопросе вероятность ответа "а" 20%, вер-ть "б" 23% ...."

Далее, сгенерируем линейку ответов, поьзуясь полученными вероятностями. Теоретически она должна иметь высокий процент правильных ответов. Далее применим алгоритм предложенный ТС.

Кроме того, можно генерировать таким образом несколько линеек до получения какого-то порогового результата, например 80% или 90% правильных ответов, а остальные "добить" приведенным ТС алгоритмом.
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Помогите с алгоритмом прохождения опросника.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]