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

Глюк при вводе через консоль

02.04.2016, 12:15. Показов 531. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Как можно обеспечить правильный ввод?

При вводе цифр все нормально, а вот когда ввести символ или строку то прога слетает.

Вот код :

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 <cstdlib>
#include <windows.h>
#include <conio.h>
 
using namespace std;
 
int main()
{
    setlocale(0, "");
 
    unsigned int choice = 0;
 
    while(choice != 1 and choice != 2 and choice != 3 and choice != 4 and choice != 5)
    {
        system("cls");
        cout << "1. Купити квиток\n";
        cout << "2. Офоримити повернення\n";
        cout << "3. Обмiняти\n";
        cout << "4. Подивитись виїзди\n";
        cout << "\n\n";
        cout << "5. Вихiд";
 
        cout << "\n\n";
        cout << "Ваш вибiр: ";
        cin >> choice;
    };
 
    switch(choice)
    {
        case 1: {
            cout << "виберiть маршрут";
            }; break;
        case 2: {
            cout << "виберiть маршрут";
            }; break;
        case 3: {
            cout << "виберiть маршрут";
            }; break;
        case 4: {
            cout << "виберiть маршрут";
            }; break;
        case 5: {
            exit(1);
            }; break;
 
    }
 
    return 0;
}
Добавлено через 13 минут
Смена переменной на char не поможет, при таком вводе : 222ddssaa будет 2, а должна быть ошибка.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.04.2016, 12:15
Ответы с готовыми решениями:

Кирилица отображается нормально при выводе из программы, но иероглифы при вводе в консоль
Что надо подключить что бы в консоли писать русскими буквами? cin &gt;&gt; kol; cin &gt;&gt; x; cout &lt;&lt; &quot;У...

Некорректно отображаются русские символы при вводе в консоль
#include &quot;stdafx.h&quot; #include &lt;conio.h&gt; #include &lt;iostream&gt; using namespace std; int...

При вводе массива, на консоль выводятся совершенно одинаковые большие числа
При вводе массива, в 4м задании на консоль выводятся совершенно одинаковые большие числа. ...

Ошибка при вводе данных в двумерный массив через консоль
Здравствуйте. Есть класс, в котором мне надо забить массив данными с клавиатуры и кое-что...

1
116 / 106 / 51
Регистрация: 29.03.2016
Сообщений: 480
02.04.2016, 12:34 2
у вас программа требует ввести целочисленный тип
unsigned int choice = 0;
cin >> choice;

используйте тип string и конвертируйте в требуемы целочисленный, например, как здесь:
Организовать ввод в однонаправленный список; подсчитать сумму чисел списка
0
02.04.2016, 12:34
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.04.2016, 12:34
Помогаю со студенческими работами здесь

Глюк при вводе строки?
Условие задачи: Вводится предложение. Посчитать колиечство подряд идущих пар, начинающихся с одной...

Закрывается консоль при вводе первого элемента массива
ребят, когда ввожу первый элемент массива, то закрывается консоль! что не так? program Project2;...

Как породить исключение EOFError при вводе в консоль?
# -*- coding: utf-8 -*- try: a=input(&quot;Введите a:&quot;) b=input(&quot;Введите b:&quot;) except...

Как вводить символы с клавиатуры на консоль, чтобы при вводе они шифровались?
Как вводить символы с клавиатуры на консоль, чтобы при вводе они шифровались (вместо символа...


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

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

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