Ĺadny brzuch
Witam!
Mam tu kawalek kodu programu:
cout << "-----------------------------------------------------------------------------\n\n" ; cout << "Wybierz typ figury\n \n"; cout << "1.Kwadrat\n"; cout << "2.Prostokat\n"; cout << "3.Trojkat\n"; cout << "4.Trapez\n"; cout << "5.Rownoleglobok\n"; cout << "6.Kolo\n"; float a = 0; cout << "\nCo wybierasz?(1,2,3,4,5...)\n" << endl; cin >> a; if (a == 1) { float c; int aa; cout << "Wybrales(as) kwadrat\n" << endl; cout << "Jakie obliczenie chcesz wykonac?\n \n" << endl; cout << "1.Pole \n2.Obwod \n3.Przekatna, znajac dlugosc boku \n4.Przekatna, znajac pole" << endl; cout << "5.Pole, znajac dlugosc przekatnej\n6.Bok, znajac dlugosc przekatnej\n" << endl; cout << "\n Co wybierasz?\n" << endl; cin >> aa; if (aa == 1) { cout << "\n!Wybrales(as) obliczanie pola!" << endl; cout << "\nPodaj dlugosc boku kwadratu\n" << endl; cin >> c; cout << "\n ------------------------------------------------------------\n" << endl; cout << "\n!!!Pole kwadratu wynosi:!!!" << c * c << "\n \n" << endl; wroc(); } else if(aa == 2) { cout << "\n!Wybrales(as) obliczanie obwodu!" << endl; cout << "\nPodaj dlugosc boku kwadratu\n" << endl; cin >> c; cout << "\n ------------------------------------------------------------\n" << endl; cout << "\n!!!Obwod kwadratu wynosi:!!!" << c * 4 << "\n \n"; } }
No i mam też problem(normalne :D ):
Jeżeli nacisnę np.1,2,3,4,5 to wszystko dobrze, ale jak wpiszę np. - , albo jakąś liczbę to program zaczyna wywoływać ekran początkowy cały czas i trza od nowa uruchamiać.
Czy jest jakiś sposób w C++sie by zablokować wpisywanie liter i znaków niealfanumerycznych, tak by wpisywały sie tylko cyfry?
Z góry dziękuje.
możesz dodać taki warunek
if((a==1) % (a==2) % (a==3) % (a==4) % (a==5) % (a==6)) {
tutaj są te instrukcje które mają się normalnie działać}
else cout<<"musisz wpisać 1,2,3,4,5,6";
a pewnie da się blokować ale ja nie umiem
Ja proponuję:
... instrukcja ... if (a == 1) { float c; int aa; cout << "Wybrales(as) kwadrat\n" << endl; cout << "Jakie obliczenie chcesz wykonac?\n \n" << endl; cout << "1.Pole \n2.Obwod \n3.Przekatna, znajac dlugosc boku \n4.Przekatna, znajac pole" << endl; cout << "5.Pole, znajac dlugosc przekatnej\n6.Bok, znajac dlugosc przekatnej\n" << endl; cout << "\n Co wybierasz?\n" << endl; cin >> aa; if (aa == 1) { cout << "\n!Wybrales(as) obliczanie pola!" << endl; cout << "\nPodaj dlugosc boku kwadratu\n" << endl; cin >> c; cout << "\n ------------------------------------------------------------\n" << endl; cout << "\n!!!Pole kwadratu wynosi:!!!" << c * c << "\n \n" << endl; wroc(); } else if(aa == 2) { cout << "\n!Wybrales(as) obliczanie obwodu!" << endl; cout << "\nPodaj dlugosc boku kwadratu\n" << endl; cin >> c; cout << "\n ------------------------------------------------------------\n" << endl; cout << "\n!!!Obwod kwadratu wynosi:!!!" << c * 4 << "\n \n"; } else { cout << "\nWprowadziłeś błędną liczbę" << endl; } ... instrukcja ...
Dzięki depresz!
Twój sposób jest bardzo dobry!
Heh, nie rozumiem w jaki sposób może to zablokować wpisanie liter; o ile jeszcze inną liczbę ścierpi, to jak wpiszesz znak nienumeryczny, to program się zapętli.
Rozwiązanie na ten drugi problem podałem w ostatnim poście tematu pod adresem: http://forum.ks-eksp...showtopic=41326 ;).
[Zakładam, że tym postem wnoszę coś do tematu :)]
Pozdrawiam.
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
Mam tu kawalek kodu programu:
cout << "-----------------------------------------------------------------------------\n\n" ; cout << "Wybierz typ figury\n \n"; cout << "1.Kwadrat\n"; cout << "2.Prostokat\n"; cout << "3.Trojkat\n"; cout << "4.Trapez\n"; cout << "5.Rownoleglobok\n"; cout << "6.Kolo\n"; float a = 0; cout << "\nCo wybierasz?(1,2,3,4,5...)\n" << endl; cin >> a; if (a == 1) { float c; int aa; cout << "Wybrales(as) kwadrat\n" << endl; cout << "Jakie obliczenie chcesz wykonac?\n \n" << endl; cout << "1.Pole \n2.Obwod \n3.Przekatna, znajac dlugosc boku \n4.Przekatna, znajac pole" << endl; cout << "5.Pole, znajac dlugosc przekatnej\n6.Bok, znajac dlugosc przekatnej\n" << endl; cout << "\n Co wybierasz?\n" << endl; cin >> aa; if (aa == 1) { cout << "\n!Wybrales(as) obliczanie pola!" << endl; cout << "\nPodaj dlugosc boku kwadratu\n" << endl; cin >> c; cout << "\n ------------------------------------------------------------\n" << endl; cout << "\n!!!Pole kwadratu wynosi:!!!" << c * c << "\n \n" << endl; wroc(); } else if(aa == 2) { cout << "\n!Wybrales(as) obliczanie obwodu!" << endl; cout << "\nPodaj dlugosc boku kwadratu\n" << endl; cin >> c; cout << "\n ------------------------------------------------------------\n" << endl; cout << "\n!!!Obwod kwadratu wynosi:!!!" << c * 4 << "\n \n"; } }
No i mam też problem(normalne :D ):
Jeżeli nacisnę np.1,2,3,4,5 to wszystko dobrze, ale jak wpiszę np. - , albo jakąś liczbę to program zaczyna wywoływać ekran początkowy cały czas i trza od nowa uruchamiać.
Czy jest jakiś sposób w C++sie by zablokować wpisywanie liter i znaków niealfanumerycznych, tak by wpisywały sie tylko cyfry?
Z góry dziękuje.
możesz dodać taki warunek
if((a==1) % (a==2) % (a==3) % (a==4) % (a==5) % (a==6)) {
tutaj są te instrukcje które mają się normalnie działać}
else cout<<"musisz wpisać 1,2,3,4,5,6";
a pewnie da się blokować ale ja nie umiem
Ja proponuję:
... instrukcja ... if (a == 1) { float c; int aa; cout << "Wybrales(as) kwadrat\n" << endl; cout << "Jakie obliczenie chcesz wykonac?\n \n" << endl; cout << "1.Pole \n2.Obwod \n3.Przekatna, znajac dlugosc boku \n4.Przekatna, znajac pole" << endl; cout << "5.Pole, znajac dlugosc przekatnej\n6.Bok, znajac dlugosc przekatnej\n" << endl; cout << "\n Co wybierasz?\n" << endl; cin >> aa; if (aa == 1) { cout << "\n!Wybrales(as) obliczanie pola!" << endl; cout << "\nPodaj dlugosc boku kwadratu\n" << endl; cin >> c; cout << "\n ------------------------------------------------------------\n" << endl; cout << "\n!!!Pole kwadratu wynosi:!!!" << c * c << "\n \n" << endl; wroc(); } else if(aa == 2) { cout << "\n!Wybrales(as) obliczanie obwodu!" << endl; cout << "\nPodaj dlugosc boku kwadratu\n" << endl; cin >> c; cout << "\n ------------------------------------------------------------\n" << endl; cout << "\n!!!Obwod kwadratu wynosi:!!!" << c * 4 << "\n \n"; } else { cout << "\nWprowadziłeś błędną liczbę" << endl; } ... instrukcja ...
Dzięki depresz!
Twój sposób jest bardzo dobry!
Heh, nie rozumiem w jaki sposób może to zablokować wpisanie liter; o ile jeszcze inną liczbę ścierpi, to jak wpiszesz znak nienumeryczny, to program się zapętli.
Rozwiązanie na ten drugi problem podałem w ostatnim poście tematu pod adresem: http://forum.ks-eksp...showtopic=41326 ;).
[Zakładam, że tym postem wnoszę coś do tematu :)]
Pozdrawiam.