Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Sasha0
0 / 0 / 1
Регистрация: 11.03.2017
Сообщений: 2
#1

Почему не работает программа? - C++

11.03.2017, 23:54. Просмотров 161. Ответов 5
Метки нет (Все метки)

Пожалуйста, подскажите, почему программа при введении 1 или 2 ничего не выводит?
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
#include <iostream>
#include <windows.h> 
 
using namespace std;
 
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    char a;
 
    cout << "Откуда считывать массив? 1 - из файла, 2 - с клавиатуры" << endl;
    cin >> a;
        while (a!='1' && a!='2') {
        switch (a)
        {
            case '1': cout << "Из файла" << endl; break;
            case '2': cout << "С клавиатуры" << endl; break;
            default:  cout  << "Введите только число 1 или 2" << endl;
        }
        cin >> a;
    }
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.03.2017, 23:54
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Почему не работает программа? (C++):

Почему программа не работает на MFC статичной библиотеки. а вот на стандартном мфс работает
почему программа не работает на MFC статичной библиотеки. а вот на стандартном...

Почему не работает программа?
что нужно изменить??? #include &lt;iostream&gt; using namespace std; class s...

Почему не работает программа?
//---------------------------------------------------------------------------...

Почему программа не работает?
Здраствуйте, я решил изучить с++, делал все упражнения по бесплатным урокам...

Почему программа Работает?
Объясните пожалуйста, как это может работать? Определять переменную вроде можно...

Почему не работает программа
задача взята из учебника Дейтел Х. Как програмировать на С++ рис 6.1 вроде все...

5
Azazel-San
Mental handicap
123 / 123 / 65
Регистрация: 24.11.2015
Сообщений: 819
Завершенные тесты: 1
12.03.2017, 00:01 #2
Условие в цикле мешает
0
Дмитрий8892
53 / 53 / 51
Регистрация: 05.07.2016
Сообщений: 180
12.03.2017, 00:15 #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
int main ()
{
setlocale(LC_ALL,"Russian");
int a;
 
    cout << "Откуда считывать массив? 1 - из файла, 2 - с клавиатуры" << endl;
    while (a!=1 && a!=2) {
        cin >> a;
        switch (a)
        {
            case 1: cout << "Из файла" << endl; break;
            case 2: cout << "С клавиатуры" << endl; break;
            default:  cout  << "Введите только число 1 или 2" << endl;break;
        }
    }
return 0;
}
0
Azazel-San
Mental handicap
123 / 123 / 65
Регистрация: 24.11.2015
Сообщений: 819
Завершенные тесты: 1
12.03.2017, 00:30 #4
Дмитрий8892, зачем здесь цикл вообще?
0
nd2
2828 / 2398 / 1052
Регистрация: 29.01.2016
Сообщений: 8,022
12.03.2017, 00:51 #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
    cout << "Откуда считывать массив? 1 - из файла, 2 - с клавиатуры" << endl;
    int a = 0;
    while (!(cin >> a) || (cin.peek() != '\n') || (a != 1 && a != 2))
    {
        if (!cin || cin.peek() != '\n')
        {
            cin.clear();
            while (cin.get() != '\n');
        }
        cout  << "Введите только число 1 или 2" << endl;
    }  
        
    switch (a)
    {
        case 1: cout << "Из файла" << endl; break;
        case 2: cout << "С клавиатуры" << endl; break;
        default:  break;
    }
0
Дмитрий8892
53 / 53 / 51
Регистрация: 05.07.2016
Сообщений: 180
12.03.2017, 01:19 #6
Azazel-San, при неправильном выборе, пользователь снова выбирает
0
12.03.2017, 01:19
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.03.2017, 01:19
Привет! Вот еще темы с решениями:

Почему не работает программа?
#include &lt;iostream&gt; #include &lt;cstdio&gt; #include &lt;string&gt; using namespace...

Почему программа не работает правильно?
У меня почему-то не корректно отображаются надписи в консоли.

Элементарная программа не работает. Почему?
Несколько лет не юзал плюсы. Что-то изменилось или я что-то забыл? Почему...

Почему программа работает неправильно
не могу понять почему программа работает не правильно # include &lt;stdio.h&gt; #...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru