[C++] problem w pobieraniem danych

0

Poniżej zamieszczam tylko fragment programu. Problem polega na tym, że przy pierwszym podaniu poprawnej wartości liczbowej program nie dochodzi do instrukcji switch. Gdy drugi raz podam to wtedy przechodzi do switcha. Gdzie tkwi problem ?


do
{
		    
       cout<<"\n\nPodaj akcje do wykonania: \n\n";
       cin>>co;
			
       while(!(cin >> co))
       {
				
            cin.sync();
	    cin.clear();
            cout<<"\n\nPodaj akcje do wykonania: \n\n";
				
	}
  
 }while(!((co >= 1) && (co <= 9)));
		   
			
     switch(co)
     {   

      //itd.
0

Przekombinowałeś troszkę.
Zabezpieczenie przed wpisywaniem liter
Więc wystarczy tak:

cout<<"\n\nPodaj akcje do wykonania: \n\n";
//bez tego cin>>
while(!(cin >> co))
{
  cin.sync();
  cin.clear();
  cout<<"\n\nPodaj akcje do wykonania: \n\n";
}

1 użytkowników online, w tym zalogowanych: 0, gości: 1