Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Проверка на правдивый ввод - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Программа с массивами и метод пузырька http://www.cyberforum.ru/cpp-beginners/thread999692.html
Здравствуйте, помогите написать программу на C++ связанной с работой массивов. Никак не могу понять, с чего и как начинать. Постановка задачи 1. Разработайте программу, выполняющую обработку...
C++ синхронизация потоков Добрый день. Не могу никак врубиться как синхронизировать с помощью семафоров потоки. Требуется проверить по порядку элементы массива. Первый поток проверяет только чётные, второй только нечётные.... http://www.cyberforum.ru/cpp-beginners/thread999685.html
Чтение из файла и запись в файл C++
Доброго времени суток. Идея в чем: Пример входных данных из файла: 5 o 3 c 4 o 5 c 6 o 7
C++ Двойной связный список
Добрый день. Проблема со списком такая. Нужна проверка на повторение введённых чисел. Условие такое что числа не могут повторятся. Подскажите как это реализовать? #include <cstdlib> #include...
C++ Нужно из строки символов удалить символы которые встречаются в нем только один раз http://www.cyberforum.ru/cpp-beginners/thread999637.html
Помогите пожалуйста! Очень нужно.
C++ Составить программу выбирающего из введенного массива чисел, все, числа кратные 10 Составить программу выбирающего из введенного массива чисел, все, числа кратные 10 подробнее

Показать сообщение отдельно
Surges
1 / 1 / 0
Регистрация: 04.06.2013
Сообщений: 44

Проверка на правдивый ввод - C++

06.11.2013, 16:08. Просмотров 255. Ответов 0
Метки (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
    int N;
    cout << "Введите размер массива: ";
    cin >> N;
    int *p = new int [N];
    system("cls");
    for(int i(0); i < N; i++)
    {
        cout << "\nВведите " << i << " элемент массива: ";
        while(!(cin >> p[i]) || p[i] >= 2147483647 || p[i] <= -2147483647) // если есть символы в вводе, или значение i - ного элемента больше, или меньше двух миллиардов с лишнем(максимальное число для int)
        {
            cin.clear();
            while(cin.get() != '\n');
            system("color c0"); // сделать ярко - красный фон у консоли
            cout << "\nНеверный ввод. Введите заново: ";
            if(p[i]) // если он на этот раз ввел правильно
            {
                system("color 80"); // сделать серый цвет консоли (стандартный)
            }
        }
Как сделать так: "если он на этот раз ввел правильно, то сделать серый цвет консоли"? Я сделал подобное, но оно не работает (последние 4 строчки).
Также, пробовал данный вариант:
C++
1
2
3
4
if(cin >> p[i]) // если ввод удался
            {
                system("color 0"); // вернуть стандартный цвет консоли
            }
Но теперь к проблеме добавился дополнительный не нужный ввод, который указан в условии.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru