Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.94/18: Рейтинг темы: голосов - 18, средняя оценка - 4.94
40 / 44 / 1
Регистрация: 19.01.2021
Сообщений: 534

Пропускается ввод ответа на следующий вопрос

27.05.2021, 19:39. Показов 4450. Ответов 67
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Начал делать тест на ассамблер в Visual Studio. И проблема в том что когда написал код и написал в нём вопросы и ответы к ним, почему то при запуске программы при ответе на вопрос у меня не получается ответить на следующей, то есть если я отвечаю то отвечаю сразу же на два вопроса, а не на один. Нужна помощь как сделать чтобы можно было отдельно отвечать на каждый вопрос. Буду благодарен за помощь. Спасибо.
Вот код программы:
C++
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
#include <iostream>
#include <vector>
#include <string>
 
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::vector<Question> questions;
    questions.resize(count_of_questions);
    questions[0].question = "Вероятностью события называется:\n";
    questions[0].var_answers = "1) Произведение числа исходов, благоприятствующих появлению события на общее число исходов; \n 2) Сумма числа исходов, благоприятствующих появлению события и общего числа исходов;\n 3) Отношение числа исходов, благоприятствующих появлению события к общему числу исходов;\n";
    questions[0].answer = 3;
    questions.resize(count_of_questions);
    questions[1].question = "Вероятность невозможного события:\n";
    questions[1].var_answers = "1) Больше нуля и меньше единицы; \n 2) равна нулю; \n 3) равна единице; \n";
    questions[1].answer = 2;
 
 
    for (int i = 0; i < count_of_questions; ++i)
    {
        std::cout << questions[i].question;
        std::cout << questions[i].var_answers;
        int ans;
        std::cin >> ans;
        if (questions[i].check_answer(ans)) ++right;
        else ++wrong;
    }
 
    std::cout << "\nПравильных ответов - " << right;
    std::cout << "\nНеправильных ответов - " << wrong;
    system("pause>>null");
}
1
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
27.05.2021, 19:39
Ответы с готовыми решениями:

Ввод в эдит ответа на поставленный вопрос
Нужно решить такую задачу: Есть два Label1(x) и 2(y). В них я вывожу x-&gt;Caption = random(100); y-&gt;Caption = random(100); ...

Пропускается ввод
Собственно вопрос: почему при вводе второго элемента массива структур пропускается ввод имени? struct Student { string name; ...

Пропускается ввод
Есть код (пишу в Visual Studio 17 Enterprice) int dimension = 2; // если тут будут бОльшие значения, ситуация не изменится char buf;...

67
40 / 44 / 1
Регистрация: 19.01.2021
Сообщений: 534
29.05.2021, 21:41  [ТС]
Студворк — интернет-сервис помощи студентам
Folian, Я понял Вас

Добавлено через 2 минуты
Folian, Но как мне сделать вывод в котором будет написано кол-во правильных и кол-во неправильных ответов?
1
Гвоздь Задиров
 Аватар для Folian
1719 / 1118 / 337
Регистрация: 25.01.2019
Сообщений: 2,946
29.05.2021, 21:55
Цитата Сообщение от goodrogrammer Посмотреть сообщение
Но как мне сделать вывод в котором будет написано кол-во правильных и кол-во неправильных ответов?
Цитата Сообщение от goodrogrammer Посмотреть сообщение
C++
1
2
3
4
5
if (questions[i].check_answer(ans)) ++right;
        else ++wrong;
    }
std::cout << "\nПравильных ответов - " << right;
    std::cout << "\nНеправильных ответов - " << wrong;
Эт что?
Цитата Сообщение от Folian Посмотреть сообщение
C++
1
std::cout << "\n\nResult: W:" << wrong << " R:" << right << "\n\n";
Эт что?

Ты меня троллируешь?
2
40 / 44 / 1
Регистрация: 19.01.2021
Сообщений: 534
29.05.2021, 22:14  [ТС]
Folian, Всё заработало. Как сделать рандом и чтобы не 10 вопрос выдавалось, а 2 или 4 например разных вопроса?

Добавлено через 1 минуту
Folian, Вот код, я в него вписал вопросы и ответы и всё работает:
#include <iostream>
#include <vector>
#include <string>

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 = 11;

std::vector<Question> questions;
questions.resize(count_of_questions);
questions[0].question = "Вероятностью события называется:\n";
questions[0].var_answers = "1) Произведение числа исходов, благоприятствующих появлению события на общее число исходов; \n 2) Сумма числа исходов, благоприятствующих появлению события и общего числа исходов;\n 3) Отношение числа исходов, благоприятствующих появлению события к общему числу исходов;\n";
questions[0].answer = 3;
questions.resize(count_of_questions);
questions[1].question = "Вероятность невозможного события:\n";
questions[1].var_answers = "1) Больше нуля и меньше единицы; \n 2) равна нулю; \n 3) равна единице; \n";
questions[1].answer = 2;
questions.resize(count_of_questions);
questions[2].question = "Вероятность случайного события:\n";
questions[2].var_answers = "1) Больше нуля и меньше единицы; \n 2) равна нулю; \n 3) равна единице; \n";
questions[2].answer = 1;
questions.resize(count_of_questions);
questions[3].question = "Событие это:\n";
questions[3].var_answers = "1) Элементарный исход; \n 2) Пространство элементарных исходов; \n 3) Подмножество множества элементарных исходов; \n";
questions[3].answer = 3;
questions.resize(count_of_questions);
questions[4].question = "Дисперсия случайной величины - это:\n";
questions[4].var_answers = "1) Начальный момент второго порядка; \n 2) Центральный момент второго порядка; \n 3) Произвольный момент второго порядка; \n";
questions[4].answer = 2;
questions.resize(count_of_questions);
questions[5].question = "Сумма частот признака равна:\n";
questions[5].var_answers = "1) Объему выборки n; \n 2) Среднему арифметическому значений признака; \n 3) Нулю; \n";
questions[5].answer = 1;
questions.resize(count_of_questions);
questions[6].question = "Какие из следующих утверждений являются верными:\n";
questions[6].var_answers = "1) Выборочное среднее является точечной оценкой математического ожидания M(X), а выборочная дисперсия - точечной оценкой дисперсии D(X); \n 2) Выборочное среднее является интервальной оценкой математического ожидания M(X), а выборочная дисперсия – точечной оценкой дисперсии D(X); \n 3) Выборочное среднее является точечной оценкой математического ожидания M(X), а выборочная дисперсия - интервальной оценкой дисперсии D(X); \n";
questions[6].answer = 1;
questions.resize(count_of_questions);
questions[7].question = "Чем отличаются друг от друга различные перестановки из “n” элементов?:\n";
questions[7].var_answers = "1) Только порядком расположения элементов; \n 2) Количеством и составом элементов; \n 3) Количеством элементов; \n";
questions[7].answer = 1;
questions.resize(count_of_questions);
questions[8].question = "Простейшими задачами математической статистики являются:\n";
questions[8].var_answers = "1) Выборка и группировка статистических данных, полученных в результате эксперимента; \n 2) Определение параметров распределения, вид которого заранее известен; \n 3) Получение оценки вероятности изучаемого события; \n";
questions[8].answer = 2;
questions.resize(count_of_questions);
questions[9].question = "Какие основные типы случайной величины встречаются исследователю?:\n";
questions[9].var_answers = "1) Дискретная; \n 2) Непрерывная; \n 3) Выборочная; \n";
questions[9].answer = 1;
questions.resize(count_of_questions);
questions[10].question = "Дайте определение случайной величины:\n";
questions[10].var_answers = "1) Появление некоторых числовых значений в результате эксперимента; \n 2) Величина, принимающая в результате эксперимента одно только значение из некоторой их совокупности ; \n 3) Величина, принимающая в результате эксперимента одно только значение из некоторой их совокупности и неизвестное заранее, какое именно; \n";
questions[10].answer = 3;

for (int i = 0; i < count_of_questions; ++i)
{
std::cout << questions[i].question;
std::cout << questions[i].var_answers;
int ans;
std::cin >> ans;
if (questions[i].check_answer(ans)) ++right;
else ++wrong;
}

std::cout << "\nПравильных ответов - " << right;
std::cout << "\nНеправильных ответов - " << wrong;
system("pause>>null");
}

Добавлено через 25 секунд
Folian, Как рандом сделать?

Добавлено через 13 минут
Folian,
std::cout << "\n\nResult: W:" << wrong << " R:" << right << "\n\n";
Это вывод результата, то есть правильный ответ или нет.

if (questions[i].check_answer(ans)) ++right;
else ++wrong;
- questions[i] это указатель за который в программе закреплены вопросы и ответы к ним, а после этого выполняется подсчёт правильных и неправильных ответов.


}
std::cout << "\nПравильных ответов - " << right;
std::cout << "\nНеправильных ответов - " << wrong;
1
Гвоздь Задиров
 Аватар для Folian
1719 / 1118 / 337
Регистрация: 25.01.2019
Сообщений: 2,946
29.05.2021, 22:15
ANGELin04ka, пожалуйста, создай отдельную тему со своим вопросом - так будеет лучше и быстрее для всехю
1
30 / 24 / 6
Регистрация: 24.11.2020
Сообщений: 214
29.05.2021, 22:24
Folian, А я тут причём?
Я просто решила подсказать, ибо думала, что это требуется сделать, дальше сам пусть пытается
4
Гвоздь Задиров
 Аватар для Folian
1719 / 1118 / 337
Регистрация: 25.01.2019
Сообщений: 2,946
29.05.2021, 22:39
Цитата Сообщение от goodrogrammer Посмотреть сообщение
questions[i] это указатель за который в программе закреплены вопросы и ответы к ним, а после этого выполняется подсчёт правильных и неправильных ответов.
Ты вообще фишку не рубишь.
Цитата Сообщение от goodrogrammer Посмотреть сообщение
Как рандом сделать?
Легко.
Твои макароны без тэгов и отступов даже читать не буду.
Мой код тебя не устраивает? Чем?

Добавлено через 1 минуту
Цитата Сообщение от ANGELin04ka Посмотреть сообщение
Я просто решила подсказать, ибо думала, что это требуется сделать, дальше сам пусть пытается
Молодец!

Добавлено через 12 минут
goodrogrammer, знаешь, у меня сложилось стойкое впечатление что ты, ни черта не понимая в плюсах, толкаешь решения отсюда за реальные шекели. И пожалейка твоя в ЛС - фикция.
4
40 / 44 / 1
Регистрация: 19.01.2021
Сообщений: 534
29.05.2021, 22:40  [ТС]
Folian, А почему Ваша программа выводит и вопрос и ответ сразу же, а где ввод ответа?
1
404 / 261 / 168
Регистрация: 13.01.2021
Сообщений: 1,162
29.05.2021, 22:43
Folian, смотрю вижу делать почти нечего, но как же тебя долбят вопросами, аж смешно, ещё убило то что автор пытается на этом заработать. Удачи написать код который автору нужен хах.
2
40 / 44 / 1
Регистрация: 19.01.2021
Сообщений: 534
29.05.2021, 22:45  [ТС]
kirigaua, Не кто не на чём не пытается заработать, я просто решаю свой вопрос
1
404 / 261 / 168
Регистрация: 13.01.2021
Сообщений: 1,162
29.05.2021, 22:50
Folian, ещё топ что ты просишь ANGELin04ka, чтобы она создала тему, в которой будет объяснять что хочет автор, чтобы он тебя не бесил.

Добавлено через 2 минуты
goodrogrammer, я понимаю вас, но слишком задачами закидываете человека только написал вам свой вариант вывода вопросов уже сделать их рандом и что-то не так, а что вот тут вопрос.
1
40 / 44 / 1
Регистрация: 19.01.2021
Сообщений: 534
29.05.2021, 22:52  [ТС]
kirigaua, Но так извините что напряг
1
404 / 261 / 168
Регистрация: 13.01.2021
Сообщений: 1,162
29.05.2021, 22:54
goodrogrammer, да не у меня извиняйтесь, а у человека у который вам код писал, мне просто смешно .
1
40 / 44 / 1
Регистрация: 19.01.2021
Сообщений: 534
29.05.2021, 22:57  [ТС]
Folian, Извините, что я так Вас напряг и закидал вопросами

Добавлено через 1 минуту
kirigaua, Так вопрос из начально был один, я его решил сам, даже Folian, написал что не чего не делал. После этого у меня появился как сделать рандом, чтобы выдавались два вопроса из 10
1
404 / 261 / 168
Регистрация: 13.01.2021
Сообщений: 1,162
29.05.2021, 23:02
goodrogrammer, так попросите еще раз Folian, сделать вам его в данный момент сижу с телефона, помочь немогу
1
Гвоздь Задиров
 Аватар для Folian
1719 / 1118 / 337
Регистрация: 25.01.2019
Сообщений: 2,946
29.05.2021, 23:02
Цитата Сообщение от goodrogrammer Посмотреть сообщение
А почему Ваша программа выводит и вопрос и ответ сразу же, а где ввод ответа?
T_T
Миниатюры
Пропускается ввод ответа на следующий вопрос  
2
404 / 261 / 168
Регистрация: 13.01.2021
Сообщений: 1,162
29.05.2021, 23:08
Folian, ахахазах классный вопрос кстати. Так почему ?

Добавлено через 3 минуты
goodrogrammer, наверное для того чтобы пользователь программы видел что какая цифра значит и там же видно, как минимум наскрине вижу ввод.
1
40 / 44 / 1
Регистрация: 19.01.2021
Сообщений: 534
29.05.2021, 23:08  [ТС]
Folian, Вот что мне выводит. Для того чтобы мне редактировать Ваш код, нужно понять что где и как поменять.
Миниатюры
Пропускается ввод ответа на следующий вопрос  
1
Гвоздь Задиров
 Аватар для Folian
1719 / 1118 / 337
Регистрация: 25.01.2019
Сообщений: 2,946
29.05.2021, 23:13
Verevkin, спасибо за гиф-прогу. Спрашивал давно - опробовал тоьлко сейчас - вещь-вещь, чо.

Добавлено через 3 минуты
Цитата Сообщение от goodrogrammer Посмотреть сообщение
Вот что мне выводит.
Потому что ты файл не создал. Прочитай вназад, я там описайл фала содержисое.
2
40 / 44 / 1
Регистрация: 19.01.2021
Сообщений: 534
29.05.2021, 23:17  [ТС]
Folian, В какой программе Вы работаете?

Добавлено через 2 минуты
Folian, скачал файл Ваш, прочитал, так всё равно нечего не понял

Добавлено через 46 секунд
Folian, кажется дошло
1
404 / 261 / 168
Регистрация: 13.01.2021
Сообщений: 1,162
29.05.2021, 23:18
goodrogrammer, самый наверное легкий вопрос темы на который даже я отвечу visual studio. Спросите откуда я знаю, а на скринах он полностью спалил свою среду разработки.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
29.05.2021, 23:18
Помогаю со студенческими работами здесь

Пропускается ввод с клавиатуры
Не считывает переменную name. Помогите, где ошибка import java.util.Scanner; public class test { public static void...

Пропускается ввод переменной
Здравствуйте, не понимаю из за чего пропускается ввод переменной var. #include&lt;stdio.h&gt; #include&lt;locale.h&gt; ...

Почему пропускается ввод с клавиатуры ?
Задача(не важна): Каждого студента можно описать при помощи следующих характеристик: ФИО, курс, специальность, предмет 1, предмет 2,...

В цикле пропускается ввод данных
В цикле пропускает ввод названия продукта и даты изготовления. Почему и как исправить? #include &lt;iostream&gt; #include...

Пропускается ввод первого элемента массива
#include &quot;pch.h&quot; #include &lt;iostream&gt; #include &lt;cstdio&gt; #include &lt;string&gt; #include &lt;stdio.h&gt; using namespace std; struct...


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

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Хитросплетение родственных связей пантеона греческих богов.
russiannick 14.05.2026
Однооконник, позволяющий узреть и изучить отдельных героев древней Греции. <!DOCTYPE html> <html lang="ru"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible". . .
[golang] Угол между стрелками часов
alhaos 12.05.2026
По заданным значениям часа и минуты необходимо определить значение меньшего угла между стрелками аналогового циферблата часов. import "math" func angleClock(hour int, minutes int) float64 { . . .
Debian 13: Установка Lazarus QT5
ВитГо 09.05.2026
Эта инструкция моя компиляция инструкций volvo https:/ / www. cyberforum. ru/ blogs/ 203668/ 10753. html и его же старой инструкции по установке Lazarus с gtk2. . .
Нейросеть на алгоритме "эстафета хвоста" как перспектива.
Hrethgir 06.05.2026
На десерт, когда запущу сервер. Статья тут https:/ / habr. com/ ru/ articles/ 1030914/ . Автор я сам, нейросеть только помогает в вопросах которые мне не известны - не знаю людей которые знали-бы. . .
Асинхронный приём данных из COM-порта
Argus19 01.05.2026
Асинхронный приём данных из COM-порта Купил на aliexpress термопринтер QR701. Он оказался странным. Поключил к Arduino Nano. Был очень удивлён. Наотрез отказывается печатать русские буквы. Чтобы. . .
попытка написать игровой сервер на C++
pyirrlicht 29.04.2026
попытка написать игровой сервер на плюсах с открытым бесконечным миром. возможно получится прикрутить интерпретатор питон для кастомизации игровой логики. что есть на текущий момент:. . .
Контроль уникальности выбранного документа-основания при изменении реквизита
Maks 28.04.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРемонтСпецтехники", разработанного в КА2. Задача: уведомлять пользователя, если указанная заявка (документ-основание). . .
Благородство как наказание
Maks 24.04.2026
У хорошего человека отношения с женщинами всегда складываются трудно. А я человек хороший. Заявляю без тени смущения, потому что гордиться тут нечем. От хорошего человека ждут соответствующего. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru