Przekazywanie wartości funkcji main - wywołanie funkcji
Ostatnio zmodyfikowano 2016-01-09 23:27
yodaa Temat założony przez niniejszego użytkownika |
Przekazywanie wartości funkcji main - wywołanie funkcji » 2016-01-09 20:17:29 Hej :) mam problem z wywołaniem funkcji w funkcji main a dokładnie w switchu. Nie wiem co powinienem napisać w nawiasach. Proszę też o nakierowanie czy używam jakiś złych praktyk programistycznych - jeśli jesteście w stanie to wywnioskować po tym kodzie: #include <iostream> #include <math.h>
using namespace std; int dzielenie( int &, int & ); int pierwiastkowanie( int & x ); int potegowanie( int & x, int & y );
int main() { int zmienna = 0; cout << "Witaj w programie kalkulator" << endl; cout << "Wybierz dzialanie:" << endl; cin >> zmienna; switch( zmienna ) { case 1: cout << "wybrales dzielenie" << endl; dzielenie( x, y ); break; case 2: cout << "Wybrales pierwiastkowanie" << endl; pierwiastkowanie(); break; case 3: cout << "Wybrales potegowanie" << endl; potegowanie(); break; default: cout << "Zly wybor. Wybierz ponownie: "; break; } } int dostepneFunkcje() { cout << "1. Dzielenie" << endl; cout << "2. Pierwiastkowanie" << endl; cout << "3. Potegowanie" << endl; } int dzielenie( int & x, int & y ) { cout << "Podaj pierwsza liczbe: "; cin >> x; cout << "Podaj druga liczbe: "; cin >> y; int wynik = x / y; return wynik; } int pierwiastkowanie( int & x ) { cout << "Podaj pierwsza liczbe: "; cin >> x; int wynik = sqrt( x ); } int potegowanie( int & x, int & y ) { cout << "Podaj pierwsza liczbe: "; cin >> x; cout << "Podaj druga liczbe: "; cin >> y; int wynik = pow( x, y ); }
|
|
mateczek |
» 2016-01-09 20:27:32 jak piszesz procedury to tak!!! #include <iostream> #include <math.h>
using namespace std; void dzielenie(); void pierwiastkowanie(); void potegowanie();
int main() { int zmienna = 0; cout << "Witaj w programie kalkulator" << endl; cout << "Wybierz dzialanie:" << endl; cin >> zmienna; switch( zmienna ) { case 1: cout << "wybrales dzielenie" << endl; dzielenie(); break; case 2: cout << "Wybrales pierwiastkowanie" << endl; pierwiastkowanie(); break; case 3: cout << "Wybrales potegowanie" << endl; potegowanie(); break; default: cout << "Zly wybor. Wybierz ponownie: "; break; } } void dostepneFunkcje() { cout << "1. Dzielenie" << endl; cout << "2. Pierwiastkowanie" << endl; cout << "3. Potegowanie" << endl; } void dzielenie() { double x, y; cout << "Podaj pierwsza liczbe: "; cin >> x; cout << "Podaj druga liczbe: "; cin >> y; double wynik = x / y; cout << wynik << endl; } void pierwiastkowanie() { double x, y; cout << "Podaj pierwsza liczbe: "; cin >> x; cout << sqrt( x ) << endl; } void potegowanie() { double x, y; cout << "Podaj pierwsza liczbe: "; cin >> x; cout << "Podaj druga liczbe: "; cin >> y; cout << pow( x, y ) << endl; } |
|
yodaa Temat założony przez niniejszego użytkownika |
» 2016-01-09 20:36:59 @mateczek Dzięki. A jeśli chciałbym wszystkie wpisania do zmiennych x i y umieścić w funkcji main to co powinienem zastosować?
edit:
A nie lepiej by było zmienne x i y umieścić w funkcji main właśnie? |
|
carlosmay |
» 2016-01-09 22:47:30 A nie lepiej by było zmienne x i y umieścić w funkcji main właśnie? |
Jeżeli nic więcej nie robisz z tymi zmiennymi to nie ma znaczenia. Jeżeli będziesz używać gdzieś dalej tych zmiennych i wyniku zwracanego z funkcji to lepiej jest je zadeklarować, aby łatwo było nimi operować. |
|
yodaa Temat założony przez niniejszego użytkownika |
» 2016-01-09 23:08:11 Zadeklarować w main i jak się potem do nich odnieść w funkcjach? Z tym mam właśnie problem, nie wiem gdzie szukać rozwiązania. |
|
carlosmay |
» 2016-01-09 23:27:46 funkcje podstawy int dodaj( int a, int b ) { return a + b; }
int main() { int n, m, wynik; std::cin >> n >> m; wynik = dodaj( n, m ); std::cout << wynik << std::endl; std::cout << dodaj( n, m ) << std::endl; std::cout << dodaj( 12, 26 ) << std::endl; }
|
|
« 1 » |