Quantcast
Channel: Forum Pasja Informatyki - Najnowsze pytania
Viewing all articles
Browse latest Browse all 65225

Problem z walidacją danych wejściowych

$
0
0

Witam
Próbuję dodać walidację danych wejściowych w swojej funkcji. Wygląda ona tak:

void Builder::get_choice(){
    choice = getch();
    if((choice != '1') || (choice != '2')){
        bool valid = false;
        while(valid != true){
            cout << "Nieprawidlowy wybor. Wybierz ponownie"<< endl;
            choice = getch();
            if((choice == '1') || (choice == '2')) valid = true;
        }
    }
    cout << "Ok";
}

Otóż problem jest taki, że gdy na klawiaturze wcisnę "1" lub "2", to pętla zawarta w ifie się wykonuje. Dopiero po drugim wciśnięciu "1" lub "2" funkcja wyświetla "Ok". Dodam iż zmienna "choice" jest typem "char" w klasie "Builder", czyli tak jak powinno być. Jak rozwiązać ten problem?


Viewing all articles
Browse latest Browse all 65225

Trending Articles