Как читать из cin, пока не введено что-то не числовое? - PullRequest
1 голос
/ 23 сентября 2019
#include<iostream>
#include<vector>
#include<limits>
#include<stdexcept>

int main()
{
    using namespace std;

    size_t i;
    int numVals;
    int min;

    vector<int> sequence(numVals);
    min = sequence.at(i);

    cout << "sequence: ";     
    for (i=0; i<sequence.size(); ++i)
    {            
        cin >> sequence.at(i);
        if (cin.bad()){
            break;
        }
        if (sequence.at(i) < min){
            min = sequence.at(i);
            cout << min << endl;
        }
    }
    return 0;
}

Я хочу, чтобы программа продолжала читать целые числа из cin до тех пор, пока не будет введено что-то не числовое, например 'q'.Я хочу найти второе самое маленькое из последовательности.Поэтому пользователь должен дать последовательность целых чисел.пользователь должен остановить последовательность с помощью q.как я могу это исправить?

1 Ответ

0 голосов
/ 24 сентября 2019
if (std::cin)
    // Input succeeded 

if (!std::cin)
    // Input failed 

Попробуйте включить это где-нибудь в свой код.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...