Funkcje kalkulator problem z kompilacja
Ostatnio zmodyfikowano 2016-09-09 22:52
silvergold Temat założony przez niniejszego użytkownika |
Funkcje kalkulator problem z kompilacja » 2016-09-09 22:12:08 Witam, nie wiem dlaczego program dziala niepoprawnie i konczy działanie po wypisaniu funkcji kalkulatora. Proszę o pomoc :) #include <iostream> #include <cstdlib>
using namespace std; void funkcje() { cout << "[1] dodawanie" << endl; cout << "[2] odejmowanie" << endl; cout << "[3] mnozenie" << endl; cout << "[4] dzielenie" << endl; } int Dzialanie() { do { int a; cin.clear(); cin.sync(); cin >> a; } while( !cin.good() ); return a; } int dodawanie() { do { int a; int b; cout << "podaj liczby ktore chcesz zsumowac:" << endl; cin >> a; cin >> b; } while( !cin.good() ); int wynik = a + b; return wynik; } int odejmowanie() { do { int a; int b; cout << "podaj liczby ktore chcesz odjac:" << endl; cin >> a; cin >> b; } while( !cin.good() ); int wynik = a - b return wynik; } int mnozenie() { do { int a; int b; cout << "podaj liczby ktore chcesz pomnozyc:" << endl; cin >> a; cin >> b; } while( !cin.good() ); int wynik = a * b; return wynik; } int dzielenie() { do { int a; int b; cout << "podaj liczby ktore chcesz podzielic:" << endl; cin >> a; cin >> b; } while( !cin.good() ); int wynik = a / b; return wynik; } int main() { cout << "Kalkulator" << endl; funkcje(); cout << "jakie dzialanie wybierasz ?:" << Dzialanie() << endl; switch( Dzialanie() ) { case 1: dodawanie(); break; case 2: odejmowanie(); break; case 3: mnozenie(); break; case 4: dzielenie(); break; default: cout << "Koniec programu"; } system( "pause" ); return 0; } [ \c pp ] |
|
kistel66 |
» 2016-09-09 22:23:17 #include <iostream> #include <cstdlib>
using namespace std; void funkcje() { cout << "[1] dodawanie" << endl; cout << "[2] odejmowanie" << endl; cout << "[3] mnozenie" << endl; cout << "[4] dzielenie" << endl; } int Dzialanie() { int a; do { cin.clear(); cin.sync(); cin >> a; } while( !cin.good() ); return a; } void dodawanie() { int a; int b; do { cout << "podaj liczby ktore chcesz zsumowac:" << endl; cin >> a; cin >> b; } while( !cin.good() ); int wynik = a + b; cout << "Wynik dodawania: " << wynik << endl; } void odejmowanie() { int a; int b; do { cout << "podaj liczby ktore chcesz odjac:" << endl; cin >> a; cin >> b; } while( !cin.good() ); int wynik = a - b; cout << "Wynik odejmowania: " << wynik << endl; } void mnozenie() { int a; int b; do { cout << "podaj liczby ktore chcesz pomnozyc:" << endl; cin >> a; cin >> b; } while( !cin.good() ); int wynik = a * b; cout << "Wynik mnozenia: " << wynik << endl; } void dzielenie() { int a; int b; do { cout << "podaj liczby ktore chcesz podzielic:" << endl; cin >> a; cin >> b; } while( !cin.good() ); int wynik = a / b; cout << "Wynik dzielenia: " << wynik << endl; } int main() { cout << "Kalkulator" << endl; funkcje(); cout << "jakie dzialanie wybierasz ?:" << endl; switch( Dzialanie() ) { case 1: dodawanie(); break; case 2: odejmowanie(); break; case 3: mnozenie(); break; case 4: dzielenie(); break; default: cout << "Koniec programu"; } system( "pause" ); return 0; }
|
|
silvergold Temat założony przez niniejszego użytkownika |
Odpowiedz » 2016-09-09 22:37:27 Wielkie dzięki za odpowiedź i pomoc ;) Możesz mi tylko jeszcze wytłumaczyć dlaczego w typie funkcji zamieniłeś int na void? |
|
kistel66 |
» 2016-09-09 22:45:28 Po prostu mam sentyment do voida ;) Można oczywiście zapisać tak: int dodawanie() { return a + b;
I potem w switchu switch( Dzialanie() ) { case 1: cout << dodawanie() << endl; break;
|
|
silvergold Temat założony przez niniejszego użytkownika |
» 2016-09-09 22:52:56 Super, teraz ogarniam. Jeszcze raz dziękuję za pomoc ;) |
|
« 1 » |