Witam. W moim przypadku w tym wejściu musi być koniecznie liczba nieujemna, oraz oczywiście nie może być innym znakiem niż liczba. Musi to być również liczba całkowita, czyli nie ma mowy o czymś takim jak 5.2. Moja walidacja nie obejmuje również przypadku gdy ktoś wpisze np. 5w. Napisałem walidację liczby ujemnej i znaku, ale z liczbą po przecinku i przykładowym 5w nie mogę sobie poradzić. Proszę więc was o pomoc.
Mój kod:
int ile_elementow;
cin>>ile_elementow;
do
{
if (ile_elementow<0)
{
cout<<"Ta liczba nie moze byc mniejsza od zera, wprowadz ja ponowownie!"<<endl;
cin>>ile_elementow;
}
while(cin.fail())
{
cout<<"To nie jest liczba, wprowadz liczbe ponownie!"<<endl;
cin.clear();
cin.ignore(256, '\n');
cin>>ile_elementow;
}
} while (ile_elementow<0);