2 yığına eklemeye çalışıyorum, ancak programın çalıştırılmasının nedenlerinden dolayı ilk döngü çalışıyor ve ikinci döngüyü atlıyor.2 farklı yığına farklı değerler eklemek için iki kez nasıl döngü yapılır
do
{
cout<<"enter data: ";
cin>>data;
cout<<data<<endl;
if (cin.fail()){
cin.clear();
break;
}
else{
stack1.push(data);
}
}while(cin.good());
//stack 2
do
{
cout<<"enter data: ";
cin>>data;
cout<<data<<endl;
if (cin.fail()){
cin.clear();
break;
}
else{
stack2.push(data);
}
}while(cin.good());
Eğer "cin.good()" yanlış olursa, ikinci döngüyü hiçbir zaman başlatmaz. Belirli bir girişi kontrol edebilir ve bu –
'u okuduğunuzda ikinci döngüye gidebilirsiniz. İlk döngü sonunda cin.good() yanlıştır. Belki ikinci döngüden önce tekrar cin.good() yapmayı deneyin. –
Neden escond döngüsünü girmez ?, bu bir do-while, her zaman ilk döngüyü yapar. –