41 / 41 / 0
Регистрация: 19.01.2021
Сообщений: 496
1

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

27.05.2021, 19:39. Показов 3151. Ответов 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
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.05.2021, 19:39
Ответы с готовыми решениями:

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

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

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

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

67
41 / 41 / 0
Регистрация: 19.01.2021
Сообщений: 496
29.05.2021, 21:41  [ТС] 21
Folian, Я понял Вас

Добавлено через 2 минуты
Folian, Но как мне сделать вывод в котором будет написано кол-во правильных и кол-во неправильных ответов?
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
1
1475 / 932 / 282
Регистрация: 25.01.2019
Сообщений: 2,355
29.05.2021, 21:55 22
Цитата Сообщение от 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
41 / 41 / 0
Регистрация: 19.01.2021
Сообщений: 496
29.05.2021, 22:14  [ТС] 23
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
1475 / 932 / 282
Регистрация: 25.01.2019
Сообщений: 2,355
29.05.2021, 22:15 24
ANGELin04ka, пожалуйста, создай отдельную тему со своим вопросом - так будеет лучше и быстрее для всехю
1
30 / 24 / 6
Регистрация: 24.11.2020
Сообщений: 213
29.05.2021, 22:24 25
Folian, А я тут причём?
Я просто решила подсказать, ибо думала, что это требуется сделать, дальше сам пусть пытается
4
1475 / 932 / 282
Регистрация: 25.01.2019
Сообщений: 2,355
29.05.2021, 22:39 26
Цитата Сообщение от goodrogrammer Посмотреть сообщение
questions[i] это указатель за который в программе закреплены вопросы и ответы к ним, а после этого выполняется подсчёт правильных и неправильных ответов.
Ты вообще фишку не рубишь.
Цитата Сообщение от goodrogrammer Посмотреть сообщение
Как рандом сделать?
Легко.
Твои макароны без тэгов и отступов даже читать не буду.
Мой код тебя не устраивает? Чем?

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

Добавлено через 12 минут
goodrogrammer, знаешь, у меня сложилось стойкое впечатление что ты, ни черта не понимая в плюсах, толкаешь решения отсюда за реальные шекели. И пожалейка твоя в ЛС - фикция.
4
41 / 41 / 0
Регистрация: 19.01.2021
Сообщений: 496
29.05.2021, 22:40  [ТС] 27
Folian, А почему Ваша программа выводит и вопрос и ответ сразу же, а где ввод ответа?
1
390 / 253 / 161
Регистрация: 13.01.2021
Сообщений: 1,099
29.05.2021, 22:43 28
Folian, смотрю вижу делать почти нечего, но как же тебя долбят вопросами, аж смешно, ещё убило то что автор пытается на этом заработать. Удачи написать код который автору нужен хах.
2
41 / 41 / 0
Регистрация: 19.01.2021
Сообщений: 496
29.05.2021, 22:45  [ТС] 29
kirigaua, Не кто не на чём не пытается заработать, я просто решаю свой вопрос
1
390 / 253 / 161
Регистрация: 13.01.2021
Сообщений: 1,099
29.05.2021, 22:50 30
Folian, ещё топ что ты просишь ANGELin04ka, чтобы она создала тему, в которой будет объяснять что хочет автор, чтобы он тебя не бесил.

Добавлено через 2 минуты
goodrogrammer, я понимаю вас, но слишком задачами закидываете человека только написал вам свой вариант вывода вопросов уже сделать их рандом и что-то не так, а что вот тут вопрос.
1
41 / 41 / 0
Регистрация: 19.01.2021
Сообщений: 496
29.05.2021, 22:52  [ТС] 31
kirigaua, Но так извините что напряг
1
390 / 253 / 161
Регистрация: 13.01.2021
Сообщений: 1,099
29.05.2021, 22:54 32
goodrogrammer, да не у меня извиняйтесь, а у человека у который вам код писал, мне просто смешно .
1
41 / 41 / 0
Регистрация: 19.01.2021
Сообщений: 496
29.05.2021, 22:57  [ТС] 33
Folian, Извините, что я так Вас напряг и закидал вопросами

Добавлено через 1 минуту
kirigaua, Так вопрос из начально был один, я его решил сам, даже Folian, написал что не чего не делал. После этого у меня появился как сделать рандом, чтобы выдавались два вопроса из 10
1
390 / 253 / 161
Регистрация: 13.01.2021
Сообщений: 1,099
29.05.2021, 23:02 34
goodrogrammer, так попросите еще раз Folian, сделать вам его в данный момент сижу с телефона, помочь немогу
1
1475 / 932 / 282
Регистрация: 25.01.2019
Сообщений: 2,355
29.05.2021, 23:02 35
Цитата Сообщение от goodrogrammer Посмотреть сообщение
А почему Ваша программа выводит и вопрос и ответ сразу же, а где ввод ответа?
T_T
Миниатюры
Пропускается ввод ответа на следующий вопрос  
2
390 / 253 / 161
Регистрация: 13.01.2021
Сообщений: 1,099
29.05.2021, 23:08 36
Folian, ахахазах классный вопрос кстати. Так почему ?

Добавлено через 3 минуты
goodrogrammer, наверное для того чтобы пользователь программы видел что какая цифра значит и там же видно, как минимум наскрине вижу ввод.
1
41 / 41 / 0
Регистрация: 19.01.2021
Сообщений: 496
29.05.2021, 23:08  [ТС] 37
Folian, Вот что мне выводит. Для того чтобы мне редактировать Ваш код, нужно понять что где и как поменять.
Миниатюры
Пропускается ввод ответа на следующий вопрос  
1
1475 / 932 / 282
Регистрация: 25.01.2019
Сообщений: 2,355
29.05.2021, 23:13 38
Verevkin, спасибо за гиф-прогу. Спрашивал давно - опробовал тоьлко сейчас - вещь-вещь, чо.

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

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

Добавлено через 46 секунд
Folian, кажется дошло
1
390 / 253 / 161
Регистрация: 13.01.2021
Сообщений: 1,099
29.05.2021, 23:18 40
goodrogrammer, самый наверное легкий вопрос темы на который даже я отвечу visual studio. Спросите откуда я знаю, а на скринах он полностью спалил свою среду разработки.
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.05.2021, 23:18
Помогаю со студенческими работами здесь

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

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

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

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

Пропускается ввод одного из элементов структуры
Здравствуйте, в коде ниже ошибка- пропускается ввод одного из элементов структуры: #include...

После 1-го цикла пропускается ввод adres, почему так происходит?
#include&lt;iostream&gt; #include &lt;cstring&gt; using namespace std; struct anketa{ char fio;...


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

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru