Создание теста
Создание теста. Реализовать подсчет правильных ответов
Добрый день, подскажите как закончить программу с написанием теста в С++, начало я сделала, в концу.
Создание консольного теста: выводит задание и 4 варианта ответа
Дано задание сделать консольный тест на C++, который выводит вопрос и 4 варианта ответа. Вопрос и.
Из теста
Укажите наиболее старший (длинный) из перечисленных типов: Выберите один ответ: char long int.
Очередное, из теста
Текст вопроса При вызове multiply (X1=1, Y1=2) по форме описания: int multiply (X, Y) < X +=Y++.
Котовчанин
942 / 482 / 200
Регистрация: 16.02.2010
Сообщений: 3,338
Записей в блоге: 37
Думаю, что кто угодно сможет.
Регистрация: 24.02.2014
Сообщений: 329
Тамика, можешь помочь ?
Неэпический
17849 / 10617 / 2049
Регистрация: 27.09.2012
Сообщений: 26,686
Записей в блоге: 1
Выберите машинный язык программирования
1) Basic
2) Assembler
3) С++
4) Delphi
и какой из них машинный?
Котовчанин
942 / 482 / 200
Регистрация: 16.02.2010
Сообщений: 3,338
Записей в блоге: 37
Сообщение от NightSun 
Тамика, можешь помочь ?
Регистрация: 24.02.2014
Сообщений: 329
Croessmah, Вопрос составлен от балды) Assembler
Котовчанин
942 / 482 / 200
Регистрация: 16.02.2010
Сообщений: 3,338
Записей в блоге: 37

Сообщение было отмечено BoyStyle как решение
Решение
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
#include #include #include struct Question { std::string question; std::string var_answers; int answer; bool check_answer(int num) { if (answer == num) return true; return false; } }; int main() { setlocale (LC_ALL,""); int right = 0; int wrong = 0; int count_of_questions = 10; std::vectorQuestion> questions; questions.resize(count_of_questions); questions[0].question = "Первый вопрос\n"; questions[0].var_answers = "1) . \n2). \n3) . \n"; questions[0].answer = 1; // И так далее заполняешь массив нужным объекатми количеством count_of_questions. // Тут ручками поработать нужно будет. for (int i = 0; i count_of_questions; ++i) { std::cout [ i].question; std::cout [ i].var_answers; int ans; std::cin >> ans; if (questions[i].check_answer(ans)) ++right; else ++wrong; } std::cout <"\nПравильных ответов - " ; std::cout <"\nНеправильных ответов - " ; system("pause>>null"); }
Пишем программу для тестирования на С++
Рассказываем, как написать программу тестирования для проверки работы или знаний человека. В качестве языка программирования используем С++.
В современном мире эффективным способом проверки знаний считается тестирование. Тесты применяются практически во всех сферах: аттестация, образование, сертификация, психология, подбор персонала и т.д. Тестирование позволяет за короткий срок проверить знания человека и оценить его. Чтобы автоматизировать тестирование, разработчики создают специальное программное обеспечение.
Подготовительная работа
Для написания прототипа простого приложения для тестирования на языке программирования С++ мы создадим два текстовых файла.
В файл под именем test.txt запишем вопросы к тесту. Каждый вопрос в файле находится на двух строчках и состоит из вопроса и вариантов ответа.
При сохранении файла, выбираем пункт меню — Cохранить как, и устанавливаем кодировку символов ANSI для корректного отображения текста в консоли.
Во втором файле, назовём его answer.txt, в каждой строчке пропишем ответ на вопрос файла test.txt, выполняя заранее установленную последовательность.
При сохранении файла, как и ранее, выбираем пункт меню — Cохранить как, и устанавливаем кодировку символов ANSI, для корректного отображения текста в консоли.
Начинаем проектировать
В коде программы используем заголовочные файлы: iostream (обеспечивает ввод — вывод в консоль), fstream (предоставляет интерфейс для чтения или записи данных в файл), string (организовывает работу со строками). Команда using namespace std сообщает компилятору, что мы хотим использовать всё, что находится в пространстве имен std.
Функция void test()
Функция void test() читает из файла test.txt вопросы к тесту и выводит их в консоль. Открывает новый файл myanswer.txt и записывает в него ответы пользователя. По окончанию тестирования закрывает оба файла.
ifstream f — объекты класса ifstream предоставляют возможность для чтения файлов.
f.open(«test.txt») — с помощью данного объекта, используя метод open, открываем файл test.txt.
ofstream out — объекты класса оfstream позволяют нам открывать файлы для записи данных.
out.open(«myanswer.txt») — для открытия файла myanswer.txt используется метод open.
Для работы с прочитанными данными из файла test.txt, используем переменную строкового типа str, ответы пользователя будем сохранять в переменную строкового типа otv.
Каждый вопрос теста нумеруем целочисленной переменной z.
Перед началом работы с данными файлов проверяем, что все рабочие файлы открылись корректно — if (f && out) —, в ином случае выводим сообщение об ошибке и покидаем тело функции:
При каждой итерации цикла while, с помощью функции getline, читаем построчно данные с файла test.txt. Цикл while будет работать, пока не будут прочитаны все строки файла test.txt.
При каждой итерации цикла while в консоль выводится номер вопроса и запрос на ввод ответа.
После ввода ответа увеличиваем значение переменной z на единицу и очищаем консоль функцией system(«cls») .
По окончании работы цикла while закрываем текстовые файлы f.close(); out.close();
Функция void result()
Функция result() открывает файлы answer.txt и myanswer.txt, сравнивает ответы пользователя с правильными ответами в файле answer.txt и выводит результат на экран.
В коде функции создаём целочисленные переменные для подсчёта правильных ответов — переменная p и ошибочная переменная n.
«Разработка ядра Linux — это общение в клубе по интересам»
Для работы с правильными ответами и ответами пользователя используем строковые переменные str и otv.
С помощью классов ifstream f1(«answer.txt»), ifstream f2(«myanswer.txt») открываем файлы для чтения.
if (f1.is_open() && f2.is_open()) — проверяем, что все файлы открылись без ошибок, в ином случае покидаем функцию и сообщаем об ошибке
cout
В параметрах цикла while, используя функцию getline, читаем правильные ответы и ответы пользователя в строковых переменных str и otv.
В конструкции if (str == otv) сравниваем ответы и, если они совпадают, выводим ответ с указанием верного в консоль, а также увеличиваем значение переменной p на единицу, если это не так. Сообщаем, что ответ ошибочный и увеличиваем значение переменной n на единицу.
По окончании работы цикла while не забываем закрыть файлы f1.close(); f2.close();.
В конце работы выводим количество правильных и ошибочных ответов и выходим из тела функции.
Функция int main()
В функции main() с помощью функции system("chcp 1251>nul") устанавливаем используемый шрифт — кириллица.
Функция system(«color 1f») устанавливает цвет фона синий, а цвет букв — ярко белый.
Запускаем выполнение функций test() и result(). Устанавливаем паузу в консоли system("pause") , чтобы она не закрывалась, пока не будет нажата любая клавиша. Готово! Скачать код программы можно здесь.

Следите за новыми постами по любимым темам
Подпишитесь на интересующие вас теги, чтобы следить за новыми постами и быть в курсе событий.
Как сделать тест на С#?
Необходимо сделать тест Visual Studio на C# WinForm или WPF. Используя базу данных. Как использовать таблицы в базе данных для тестов. Как сделать бэкендом или напрямую? Код:
public void show(int n) < int next = n+1; label1.Text = "Тест " +next; switch (answers[n]) < case 0: buttonright.Checked = true; falseone.Checked = false; falseagain.Checked = false; break; case 1: buttonright.Checked = false; falseone.Checked = true; falseagain.Checked = false; break; case 2: buttonright.Checked = false; falseone.Checked = false; falseagain.Checked = true; break; >switch (n) < case 0: questone.Text = "первый вопрос"; break; case 1: questone.Text = "второй вопрос"; break; case 2: questone.Text = "третий вопрос"; break; >>
Отслеживать
47.5k 17 17 золотых знаков 56 56 серебряных знаков 99 99 бронзовых знаков
задан 15 июн 2020 в 12:20
Freshmathick Freshmathick
15 1 1 серебряный знак 5 5 бронзовых знаков
3 ответа 3
Сортировка: Сброс на вариант по умолчанию
Как уже Вам ответили выше, необходимо соблюсти некоторые условия:
- Определиться с методом хранения БД Вопросов: 1.1. Это может быть как какая-либо СУБД (e.g. MySQL , PostgreSQL , MS SQL & etc.); 1.2. Это может быть обычная локальная БД (e.g. SQLite к примеру); 1.3. Это могут быть файлы с вопросами (e.g. JSON , txt & etc.).
- Определиться со способом получения данных из БД Вопросов: 2.1. Если тестируемый будет подключен к сети, значит, для упрощения способа актуализации вопросов Вам подойдет хранение БД Вопросов методами 1.1 или 1.3, но тогда надо организовать сетевое размещение (e.g. организовать доступ к СУБД либо выдачу JSON-файла). 2.2. Если тестируемый не будет подключен к сети, значит вам необходимо выбрать один из вариантов 1.2. или 1.3., но тогда Вам будет необходимо либо вложить в БД Вопросы полный (исчерпывающий) перечень вопросов, либо автоматизировать актуализацию вопросов при подключении к сети.
- Необходимо определиться с технологией отображения, с помощью которой будет проводиться тестирование: 3.1. WinForm - лучшее решение для организации тестирования без подключения к сети (нет необходимости подтягивать дополнительное ПО для нормального функционирования) 3.2. Web - лучшее решение для организации тестирования в сети (нет необходимости в принципе ничего скачивать или устанавливать - нужен только браузер и не зависит от используемой операционной системы). 3.3. WPF - прогрессивно (сомнительное выражение), но необходимо предусмотреть возможность подтягивания дополнительного ПО, для нормального функционирования тестирования. 3.4. UWP - так же, как и предыдущее.
- Для использования способов 1.1. или 1.2. рекомендую смотреть в сторону EntityFramework Core с использованием Dependency Injection ;
- Если вы решили использовать JSON (способ 1.3.), то в c# масса примеров сериализации и десериализации объектов на лету.
- При разработке интерфейса способами 3.* не возникнет сложностей, т.к. все библиотеки входят в стандартную поставку Visual Studio 2019 Community edition
- При разработке способом 3.2. рекомендую сначала освоить AspNetCore . Идеальным решением при выборе из вариантов будет 3.2. + 1.1 - и опыту наберетесь, и тестирование будет проводиться с любого устройства (с условием использования адаптивного дизайна сайта), подключенного к сети.
Из личного опыта:
- (Не очевидное)
- Необходимо задать максимальную длину вопроса( string.Length ) и при разработке интерфейса отталкиваться от этой длинны, чтобы длинные вопросы не вылазили за границы форм.
- Правильные ответы на вопросы помечать свойством типа bool.
- При использовании для тестирования технологии Web свойство с правильным ответом ни в коем случае не передавать во View , т.к. можно будет его отследить. Валидацию ответа проводить на стороне контроллера по Submit .
- (Очевидное)
- Необходимо предусмотреть поля Категория вопроса и Стоимость вопроса для последующего возможного масштабирования приложения.
- При поточном тестировании (все вопросы выводятся один за одним) предусмотреть вывод вопросов в случайном порядке, чтобы повысить качество тестирования.
- По тем же причинам необходимо предусмотреть вывод ответов на вопросы в случайном порядке.
- (Самый простой способ) мною не рекомендуется. Использовать готовое решение - есть прекрасный экземпляр Moodle. В гугле ищется по первым ссылкам.
10 бесплатных программ для создания тестов с множественным выбором
Тесты с несколькими вариантами ответов — один из самых распространенных типов вопросов для проверки того, насколько хорошо понят материал. Их легко оценить, они могут охватывать множество тем и могут помочь в поиске информации, поскольку ответ виден. Хотя это может показаться достаточно простым, создание этих тестов может занять много времени и усилий из-за количества элементов и комбинаций, которые вы должны учитывать. С переходом на дистанционное обучение в эпоху цифровых технологий использование построителя тестов с множественным выбором может помочь вашим командам по обучению и развитию и обучению, автоматизировав определенные задачи, чтобы они могли больше сосредоточиться на содержании своих оценок для более эффективного тестирования и содействия обучению.
Чтобы найти идеальный инструмент для использования, мы сделали за вас домашнее задание и перечислили десять программ для создания тестов с несколькими вариантами ответов, чтобы оценить знания и понимание вашей команды. Прокрутите вниз, чтобы узнать больше.
1. ЭдПриложение
EdApp — это отмеченная наградами LMS со встроенным средством создания тестов с несколькими вариантами ответов под названием Rapid Refresh. Все, что вам нужно сделать, это ввести свой набор вопросов в простой для заполнения рабочий лист, и он будет преобразован в визуально привлекательный тест, готовый к реализации в одно мгновение. Через концепцию интервального повторения, тесты могут доставляться ежедневно или еженедельно, поэтому все, что вам нужно сделать, это установить предпочтительный интервал и позволить приложению сделать все остальное. Чтобы привлечь своих учеников и мотивировать их делать все возможное, вы также можете создать таблицу лидеров и предоставить настоящие призы и награды для лучших. У вас также будет доступ к аналитике в реальном времени, чтобы увидеть индивидуальную или общую производительность после завершения теста.
Время от времени напоминать пользователям о завершении их тестов требует больших усилий и может занять много времени. Но с помощью автоматизированного обучающего инструмента EdApp вы можете автоматизировать отправку push-уведомлений и напоминаний по электронной почте одним нажатием кнопки. Поскольку EdApp также удобен для мобильных устройств, пользователи могут сдавать тесты в любое время, что приводит к более высоким показателям завершения.
Стоимость: бесплатно Основные функции: оптимизированная для мобильных устройств, удобная для заполнения электронная таблица, автоматическая доставка, списки лидеров, push-уведомления.
2. EasyTest Maker
EasyTestMaker упрощает создание и управление различными цифровыми тестами и викторинами с несколькими вариантами ответов . Просто добавьте новые вопросы и разделы, измените их по мере необходимости, и пусть это программное обеспечение сделает всю остальную тяжелую работу за вас. Вы также можете создавать тесты, используя существующие вопросы из своего пула вопросов. Будет создана викторина, которая будет содержать случайный набор вопросов, если вам нужно их перепутать. EasyTestMaker также может экспортировать все ваши тесты, обзоры и результаты учащихся в PDF или Word, что идеально, если вы также хотите иметь печатную копию своих учебных материалов .
Единственным недостатком является то, что пользователи могут публиковать тесты онлайн только с 25 результатами тестов, по крайней мере, для их бесплатного плана. Если вы хотите распространять больше опросов одновременно, обратите внимание на их платные программы, которые предлагают пользователям больше гибкости.
Стоимость: бесплатные и платные планы
Основные характеристики: удобный интерфейс, набор вопросов, случайные вопросы
3. Форма типа
В Typeform есть инструмент перетаскивания, который поможет вам быстро создавать привлекательные онлайн-тесты . Это позволяет вам проходить интерактивные викторины с несколькими вариантами ответов, используя изображения, GIF-файлы и видео. Ваши викторины полностью настраиваются, поэтому вы можете настраивать цветовые схемы, добавлять фоновые изображения и изменять текст. Это предоставит вашим сотрудникам уникальный тест, который фиксирует вовлеченность учащихся . Использование функции Logic Jump в ваших викторинах также может постепенно усложнять или упрощать их. В конечном счете, это программное обеспечение позволит вам создавать хорошо разработанные тесты, обеспечивая при этом удовольствие для ваших сотрудников.
Стоимость: бесплатные и платные планы
Основные функции: инструмент перетаскивания, настраиваемые шаблоны, Logic Jump.
4. Маркер классов
ClassMarker — это еще одно программное обеспечение для онлайн-тестирования, которое позволяет вам легко создавать тесты с несколькими вариантами ответов и сохранять вопросы в свой банк вопросов, который вы можете использовать повторно в любое время. Викторины легко настраиваются, и вы можете задать вопрос, чтобы иметь более одного правильного ответа. КлассМаркерон также позволяет указать доступное время и дату, разрешенное количество попыток, проходной балл и многое другое. Чтобы сделать его визуально привлекательным, вы можете добавить тему для применения фирменного стиля и логотипа к вашим тестовым страницам. Тесты оцениваются автоматически, и результаты выдаются немедленно. Вы также можете видеть, были ли они завершены или все еще находятся в процессе, поэтому у вас всегда будет представление о том, как работает ваша команда.
Стоимость: бесплатные и платные планы
Основные функции: банк вопросов, автоматическое ранжирование, отчетность и аналитика.
5. Доказательства
С ProProfs у вас есть доступ к более чем 100 000 готовых к использованию вопросов, которые вы можете сразу развернуть или настроить в соответствии со своей темой и брендом. Вы также можете добавлять свои собственные изображения, выбирать их из библиотеки изображений или импортировать онлайн. ProProfs также предлагает возможность дать объяснение после того, как пользователь попытается ответить на вопрос, чтобы лучше укрепить содержание . Если вы хотите, вы также можете создать закрытый тест с множественным выбором, который представляет собой комбинацию множественного выбора и заполнения пустых типов вопросов.
Стоимость: бесплатные и платные планы
Основные функции: банк вопросов, отчеты и отслеживание, настраиваемые шаблоны.
6. Топка
Fyrebox — еще одно отличное программное обеспечение для создания интерактивных и красочных тестов с несколькими вариантами ответов . Есть два типа выбора: один правильный ответ и несколько правильных ответов. Вы также можете назначить баллы, которые каждый ответ приносит пользователю. С Fyrebox вы можете настроить внешний вид вашего теста, переместить кнопки и изменить их цвет, выбрать предпочитаемый шрифт и даже загрузить фоновое изображение. Есть также несколько настраиваемых шаблонов, которые помогут вам начать работу, если вы чувствуете себя немного потерянным в процессе.
Стоимость: бесплатные и платные планы
Основные характеристики: интерактивный интерфейс, шаблоны викторин, множественный подсчет очков.
7. 123 Конструктор форм
123 Form Builder стремится сделать создание тестов с множественным выбором простым и безболезненным. Как следует из названия, вы можете создавать викторины всего за три шага: выберите шаблон, добавьте контент и опубликуйте свою викторину. Чтобы привлечь испытуемых, вы также можете добавить изображения, графику и брендинг. У вас также будет возможность настроить таймер обратного отсчета, который автоматически отправляет викторину по истечении времени. Еще одна интересная особенность — условная логика, когда поле может активироваться при выполнении определенного действия. Например, если учащийся выбирает неправильный ответ, вы можете показать ему правильный ответ.
Стоимость: бесплатные и платные планы
Ключевые особенности: таймер обратного отсчета, условная логика, удобный интерфейс.
8. Стажировка мнений
Opinion Stage обещает взаимодействие с пользователями посредством визуальных и интерактивных тестов с множественным выбором. Если вы не хотите начинать сдавать тест с нуля, вы можете выбрать из более чем 100 предлагаемых шаблонов, которые вы можете полностью настроить. Вы можете редактировать текст, изображения, цвета и многое другое. Тесты, созданные в Opinion Stage, также хорошо работают на любой платформе, будь то мобильная или ПК, и даже оптимизируют изображения в зависимости от используемого устройства. С другой стороны, если вы беспокоитесь о конфиденциальности и безопасности, вам не о чем беспокоиться, поскольку все тесты, которые вы создаете, надежно хранятся в облаке.
Стоимость: бесплатные и платные планы
Основные характеристики: шаблоны викторин, облачное хранилище, оптимизация изображений
9. Глобальный вопросник
Quiz Global — одно из самых простых программ для создания викторин с несколькими вариантами ответов в списке, и его можно использовать совершенно бесплатно. Вы можете создавать неограниченное количество тестов с бесконечным количеством вопросов и включать изображения, объяснения ответов или советы. Он также имеет банк вопросов, где вы можете случайным образом генерировать вопросы викторины для своего теста. Уникальной особенностью Quiz Global является то, что пользователи могут играть или просматривать викторину с помощью голосовых команд, что идеально подходит для тестируемых с нарушениями зрения. Затем вы можете поделиться созданными тестами, используя ссылку, которую можно разместить на форумах и сайтах социальных сетей. Однако вы не сможете встраивать свои опросы, если у вас есть собственный веб-сайт.
Ключевые особенности: таймер обратного отсчета, банк вопросов, голосовые команды
10. Движение тела
Testmoz имеет простой интерфейс, но с мощными функциями. Вы можете настроить внешний вид своих тестов с помощью перетаскивания. У вас также есть возможность показать один вопрос на странице или все вопросы сразу. Если вы хотите повторно использовать свои старые тесты, то всего за несколько кликов вы импортируете их в новый экзамен или вы также можете удалить их из своего набора вопросов. Testmoz удобен для мобильных устройств и может быть доступен на любом устройстве даже с низкой пропускной способностью. Однако в бесплатной версии вы не сможете загружать изображения и можете выбирать только из тех, что доступны онлайн. Существует также ограничение в 50 вопросов и 100 результатов на тест.
Стоимость: бесплатные и платные планы
Основные функции: набор вопросов, инструмент перетаскивания, оптимизированный для мобильных устройств.
Вы также можете проверить: