[C++, konsola] Program nie działa prawidłowo, gdy poda się znak zamiast liczby
Ostatnio zmodyfikowano 2013-05-11 21:32
pawelw141 Temat założony przez niniejszego użytkownika |
[C++, konsola] Program nie działa prawidłowo, gdy poda się znak zamiast liczby » 2013-05-11 21:28:17 Napisałem kalkulator, ale mam z nim pewien problem. Po wprowadzeniu za x, bądź x1 np jakiejś litery zamiast liczby program się krzaczy. Jestem początkujący więc proszę o wyrozumiałość. #include <iostream> using namespace std; int x = 0; double x1 = 0; double x2 = 0; double x3 = 0; char flag = 'y';
int main() { char flag = 'y'; do { cout << "==============================\n"; ffflag: cout << "choose operation:\n\t1-addition\n\t2-subtraction\n\t3-division\n\t4-multiplication\n\t5-square\n\t6-square root\n\n"; cin >> x; switch( x ) { case 1: printf( "put x1\n" ); cin >> x1; printf( "put x2\n" ); cin >> x2; x3 = x2 + x1; break; case 2: printf( "put x1\n" ); cin >> x1; printf( "put x2\n" ); cin >> x2; x3 = x1 - x2; break; case 3: printf( "put x1\n" ); cin >> x1; printf( "put x2\n" ); cin >> x2; x3 = x2 / x1; break; case 4: printf( "put x1\n" ); cin >> x1; printf( "put x2\n" ); cin >> x2; x3 = x2 * x1; break; case 5: printf( "put x1\n" ); cin >> x1; x3 = x1 * x1; break; case 6: printf( "put x1\n" ); cin >> x1; sqrt( x1 ); break; default: cout << "mistake command, try again\n"; goto ffflag; break; } cout << "oto wynik:\n\n" << x3 << endl << endl; cout << "wanna try again? Y/N\n"; cin >> flag; cout << "==============================\n"; } while( flag == 'y' || 'Y' ); cout << "==============================\n"; system( "pause" ); return 0; } |
|
pekfos |
» 2013-05-11 21:32:02 |
|
« 1 » |