Форум программистов, компьютерный форум, киберфорум
JavaScript для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.96/25: Рейтинг темы: голосов - 25, средняя оценка - 4.96
1 / 1 / 0
Регистрация: 26.04.2020
Сообщений: 22

JS Опросник для пользователя

28.04.2020, 19:29. Показов 5391. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
JavaScript
1
2
3
4
5
6
7
8
Опросник для пользователя
Реализовать опросник для пользователя.
Задать ему с помощью модальных окон несколько вопросов и оценить его ответы. За правильный ответ начисляется 10 очков, за неправильный - 0. После прохода всех вопросов вывести результат с помощью alert. 
При обработке ответа пользователя не забудьте про валидацию, что введенные данные соответствуют требуемому типу. По возможности сообщите пользователю, где он не прав.
Вопросы:
Сколько будет 2+2 - ответ: 4
Солнце встает на востоке? - это должен быть confirm - ответ 'OK'
Сколько будет 5 << 2 ? - ответ: 20
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
28.04.2020, 19:29
Ответы с готовыми решениями:

Опросник для пользователя v2
Реализовать опросник для пользователя. Задать ему с помощью модальных окон несколько вопросов и оценить его ответы. За правильный ответ...

Опросник для пользователя
Реализовать опросник для пользователя. Задать ему с помощью модальных окон несколько вопросов и оценить его ответы. За правильный...

Написать опросник для студентов
Помогите написать опросник для студентов в vba

13
супермизантроп
Эксперт JS
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
28.04.2020, 20:48
Цитата Сообщение от PROSTOANONIM Посмотреть сообщение
Задать ему с помощью модальных окон несколько вопросов
для начала уточните -- о каких именно модальных окнах идет речь?
настоящих модальных окон в браузере имеется всего три штуки: alert (), confirm () и prompt (). Однако, некоторые туповатые разработчики тем же термином (и исключительно для звучности) именуют свои всплывающие контейнеры, реализованные средствами js (или -- значительно реже -- css)
1
1 / 1 / 0
Регистрация: 26.04.2020
Сообщений: 22
28.04.2020, 21:46  [ТС]
Да одно с помощью конфига, а одно вроде с алертом, просто у меня не получилось
0
супермизантроп
Эксперт JS
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
29.04.2020, 00:18
Лучший ответ Сообщение было отмечено PROSTOANONIM как решение

Решение

Цитата Сообщение от PROSTOANONIM Посмотреть сообщение
а одно вроде с алертом
вот именно alert () вам для вопросов не нужен, он пригодится лишь для демонстрации оценки
итак, для вопросов, которые требуют ответа "Да" или "Нет", нужно модальное окно confirm (), а для вопросов, требующих ответа в виде числа или какого-то слова, нужно использовать prompt ()
Кроме списка вопросов, вам нужно внести в скрипт правильные ответы, чтобы сверить их с теми, что дал пользователь
Ну и, наконец, нужна какая-то система выставления итоговой оценки, например, если будет всего 5 разных вопросов, то оценка будет равна количеству верных ответов, или как-то по-другому... подумайте над этим

Добавлено через 9 минут
Для варианта системы выставления итоговой оценки, предложенного выше, код может быть таким:
JavaScript
1
2
3
4
5
6
7
let result = 0;
if (confirm (Февраль -- это зимний месяц?')) result++;
if (prompt (' Введите число Пифагора с двумя знаками после запятой', '') == '3,14') result++;
if (!confirm (На шахматной доске 100 клеток?')) result++;
if (prompt ('Укажите количество планет в нашей Солнечной системе', '') == '8') result++;
if (confirm ('Рассказы про Чебурашку и про Простоквашино написал один и тот же детский писатель?')) result++;
alert ('Ваша оценка:' + result);
1
1 / 1 / 0
Регистрация: 26.04.2020
Сообщений: 22
29.04.2020, 09:33  [ТС]
Ooooo, спасибо огромное, я не знал как оценки делать, а не подскажешь как делать валидацию, типо если человек дал неверный ответ указать где была ошибка, или вернуть ему при неправильном ответе.
0
108 / 76 / 27
Регистрация: 14.11.2016
Сообщений: 260
29.04.2020, 13:18
PROSTOANONIM, а в этой теме для кого я ответ давал?
Опросник для пользователя v2
0
1 / 1 / 0
Регистрация: 26.04.2020
Сообщений: 22
29.04.2020, 13:19  [ТС]
Я, не понял как делать..;
Если неправильно отдает обратно;
Если правильно пропускает..
0
108 / 76 / 27
Регистрация: 14.11.2016
Сообщений: 260
29.04.2020, 13:21
В смысле? Просто вставить код в свой проект. Можно копировать и вставить в консоль браузера, он там выполнится
0
1 / 1 / 0
Регистрация: 26.04.2020
Сообщений: 22
29.04.2020, 13:25  [ТС]
Я имел ввиду если false - то то в конце показать где ошибка если true - то все

Добавлено через 39 секунд
Или если 2+2=5, то не пропускать дальше
0
108 / 76 / 27
Регистрация: 14.11.2016
Сообщений: 260
29.04.2020, 13:36
JavaScript
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
const questions = [ { question: 'Сколько будет 2+2?', answer: 4, type: 'prompt' },
{ question: 'Солнце встает на востоке?', answer: true, type: 'confirm' },
{ question: 'Сколько будет 5 << 2 ?', answer: 20, type: 'prompt' } ];
let points = 0;
 
const handleQuestion = question => {
let handler;
if (question.type === 'prompt') {
handler = prompt;
} else if (question.type === 'confirm') {
handler = confirm;
}
return(handler(question.question) == question.answer);
}
 
let q = 0;
while (q < questions.length) {
if (handleQuestion(questions[q])) {
points += 10;
q++;
} 
}
 
 
alert(`Ваш результат ${points} баллов!`);
Этот код не пропускает дальше, пока не дашь правильный ответ. Только тут теряется смысл в набранных баллах и в указании, где ошибка - если один и тот же вопрос выдается, то и ежу понятно, что ответ неправильный

Добавлено через 2 минуты
Вообще странный вы товарищ, уважаемый PROSTOANONIM, вам отвечают, время тратят, думают за вас, а от вас ни ответа, ни привета, ни спасибо, ничего, молча другую тему с тем же вопросом создал и все. Можно же уточняющие вопросы позадавать, если уж самому лень делать домашнее задание...
1
1 / 1 / 0
Регистрация: 26.04.2020
Сообщений: 22
29.04.2020, 13:39  [ТС]
Знаю, такое задание все и везде.. спасибо огромное

Добавлено через 2 минуты
Это просто 2 разных задания одно должно быть без валидацый(пртсто опрос), а 2 с валидацыец (v2)
0
108 / 76 / 27
Регистрация: 14.11.2016
Сообщений: 260
29.04.2020, 13:42
Кстати можно еще красивее сделать, чтобы не надо было вручную прописывать prompt/confirm:
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
const questions = [ { question: 'Сколько будет 2+2?', answer: 4 },
{ question: 'Солнце встает на востоке?', answer: true },
{ question: 'Сколько будет 5 << 2 ?', answer: 20 } ];
let points = 0;
 
const handleQuestion = question => {
let handler;
handler = (typeof question.answer) === "boolean" ? confirm : prompt;
return(handler(question.question) == question.answer);
}
 
let q = 0;
while (q < questions.length) {
if (handleQuestion(questions[q])) {
points += 10;
q++;
} 
}
 
 
alert(`Ваш результат ${points} баллов!`);
0
1 / 1 / 0
Регистрация: 26.04.2020
Сообщений: 22
29.04.2020, 13:46  [ТС]
СПАСИБО БОЛЬШОЕ ВАМ!!!
0
108 / 76 / 27
Регистрация: 14.11.2016
Сообщений: 260
30.04.2020, 16:40
про указание ошибки: самое простое - это код со строки 12 дополнить блоком else
JavaScript
1
2
3
4
5
6
7
8
9
let q = 0;
while (q < questions.length) {
if (handleQuestion(questions[q])) {
points += 10;
q++;
} else {
alert('Ответ неверный! Попробуйте еще раз!');
} 
}
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
30.04.2020, 16:40
Помогаю со студенческими работами здесь

Составить анкетный опросник для сбора требований к онлайн-магазину канцелярии
Незнаю с чего начать, может кто нибудь поможет?

Опросник
Хочу сделать опросник, чтобы в нем была такая фишка: если голосовать за один вариант, то прибавляется 1 голос, а если за другой -...

Опросник
Добрый день. есть форма логина, как лучше поменять панель после удачного входа? и как лучше загружат/показывать вопросы и варианты? ...

Опросник
ТОлько начал изучать php в общем задача следующая. Мне не нужен код только опишите алгоритм как все это делается. В общем есть форма...

Опросник Юнга
Опросник Юнга позволяет выявить типологические особенности личности - экстраверсию, интраверсию. Как правило, экстраверты направлены на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
Установка Emscripten SDK (emsdk) и CMake на Windows для сборки C и C++ приложений в WebAssembly (Wasm)
8Observer8 30.01.2026
Чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. Система контроля версиями Git. . .
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru