
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
04.07.2009, 23:21
|
|||
|---|---|---|---|
Извращенская задача на HTML и JavaScript, которую надо решить |
|||
|
#18+
Задача: сейчас есть система тестирования через веб-интерфейс. Загружается вопрос, получается ответ, выводится результат. Сделана через Ajax. Т.е. на новый вопрос создается запрос и результаты загружаются в html. Всё вроде бы неплохо, и работает. НО необходимо сделать демо-тест (определённый список подготовленных вопросов), чтоб все эти вопросы, картинки к ним и ответы грузились только один раз всей пачкой (около 10 штук) при загрузке страницы, а сам тест к серверу больше не обращался. Т.е. тестирование происходило как бы на клиенте, т.е. в браузере. Какие есть предложения, как это пограмотнее и попроще реализовать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.07.2009, 05:02
|
|||
|---|---|---|---|
Извращенская задача на HTML и JavaScript, которую надо решить |
|||
|
#18+
CmeTanka, Я бы загрузил все данные в скрытые контейнеры можно в div'ы - по одному бы открывал, ответил на вопрос, скрываешь, открываешь следующий и так пока на все вопросы не будет дан ответ, затем проверка всех ответов и вывод результатов. но я так не сделаю ибо посморев исходник скрипта можно посмотреть правильные ответы и тогда смысл всего теста теряется. проверку надо делать на сервере. Хотя как вариант - получить ответы на все вопросы и потом это все отправить на проверку на сервер (но это противоречит условию CmeTanka а сам тест к серверу больше не обращался. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.07.2009, 11:50
|
|||
|---|---|---|---|
Извращенская задача на HTML и JavaScript, которую надо решить |
|||
|
#18+
eualexeyпосморев исходник скрипта можно посмотреть правильные ответы и тогда смысл всего теста теряетсяЕсли хранить не ответ, а хеш ответа, то пусть хоть ослепнет смотревши. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.07.2009, 13:10
|
|||
|---|---|---|---|
Извращенская задача на HTML и JavaScript, которую надо решить |
|||
|
#18+
Это будет демотест, так что подглядывать не имеет смысла, так как эти 10 вопросов всегда одинаковые и после неправильного ответа даётся правильный. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.07.2009, 23:53
|
|||
|---|---|---|---|
Извращенская задача на HTML и JavaScript, которую надо решить |
|||
|
#18+
Antonariyeualexeyпосморев исходник скрипта можно посмотреть правильные ответы и тогда смысл всего теста теряетсяЕсли хранить не ответ, а хеш ответа, то пусть хоть ослепнет смотревши. А вот это тема! не догадался. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.07.2009, 07:04
|
|||
|---|---|---|---|
Извращенская задача на HTML и JavaScript, которую надо решить |
|||
|
#18+
если только тестируемые не решит расхешировать)))посмотрев код можно определить алгоритм хеширования, а с его помощюь вскрыть результаты) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.07.2009, 10:49
|
|||
|---|---|---|---|
Извращенская задача на HTML и JavaScript, которую надо решить |
|||
|
#18+
Если результат тестирования это сдал/не сдал без подробностей, то количество вариантов, чьи хеши нужно сравнить с эталоном, рассчитывается по формулам: 2 X , где x - сумма ответов всех вопросов, для мексиканки, и X Y , где х - количество ответов в вопросе, y - количество вопросов (если во всех вопросах одинаковое количество ответов), для американки. Для тех, кто не в курсе: американка - один правильный из многих, мексиканка - несколько из многих. Допустим, в этом тесте из 10 вопросов везде по 4 ответа. Тогда для мексиканки это 1099511627776 вариантов (если калькулятор не врет), а для американки — 1048576. Рискну предположить, что даже второй вариант будет в js обсчитываться сравнимо со временем, отведенным на тестирование. Если нужно выводить ответ в виде n правильных из m, формулы такие: 2 X *Y для мексиканки и тупо X*Y для американки. Еще можно и хеши и функцию завернуть в несколько слоев какой-нибудь megaEncrypt, чтобы поиск решения растянулся вообще на часы. Так что выбор есть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.07.2009, 05:07
|
|||
|---|---|---|---|
Извращенская задача на HTML и JavaScript, которую надо решить |
|||
|
#18+
Я поражаюсь просто! Это — тест, а не список задач с полем ввода ответа. Значит, к каждому вопросу прикрепляется список ответов. Если результат проверяется уже на клиенте при помощи JS, то алгоритм хэширования известен не только по одному виду хэша. Т.о. в среднем достаточно перебрать N/2 вариантов (N - количество ответов в вопросе), чтобы найти правильный ответ: берете первый ответ, хэшируете, смотрите - если совпадает с результатом, то его и выбираете. Иначе берете второй ответ и т.д. Если при "нормальном" (а не тренировочном) тестировании передать клиенту ответ в любом виде (хоть в хэше), то это означает, что любой пользователь может его пройти успешно, ничего не зная по предмету - нашел все правильные ответы и их выбрал перед отправкой на сервер. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=22&mobile=1&tid=1454524]: |
0ms |
get settings: |
5ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
152ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
24ms |
get tp. blocked users: |
1ms |
| others: | 202ms |
| total: | 405ms |

| 0 / 0 |
