[C++] Funkcje, a ich przydatność
Ostatnio zmodyfikowano 2013-01-23 12:07
Lukines Temat założony przez niniejszego użytkownika |
[C++] Funkcje, a ich przydatność » 2013-01-23 10:27:15 Witam mam pytanie czy robienie programu funkcjami jest bardziej optymalne/opłacalne/lepsze ? Czy lepiej zrobić jakiś program poprostu od tak dam niżej przykład i proszę o odpowiedz który jest lepiej napisany pierwszy przeze mnie drugi przez kolegę . Czy tak jak ja to napisalem to jest lepiej czy gorzej ? Czy lepiej pisac program prościej i krócej ? Pierwszy Mój: #include <iostream>
using namespace std;
int Odejmowanie( int & a, int & b ) { return( a - b ); }
int Dodawanie( int & a, int & b ) { return( a + b ); }
int Mnozenie( int & a, int & b ) { return( a * b ); }
int Dzielenie( int & a, int & b ) { return( a / b ); }
void Sprawdz( char & znak, int & a, int & b ) { switch( znak ) { case '+': { cout << "Dodaje : " << a << "+" << b << " Wynik : " << Dodawanie( a, b ) << endl; return; } case '-': { cout << "Odejmuje : " << a << "-" << b << " Wynik : " << Odejmowanie( a, b ) << endl; return; } case '*': { cout << "Mnoze : " << a << "*" << b << " Wynik : " << Mnozenie( a, b ) << endl; return; } case '/': { cout << "Dziele : " << a << " *" << b << " Wynik : " << Dzielenie( a, b ) << endl; return; } } }
void WczytajZnak( char & znak ) { cout << "Podaj Znak : "; cin >> znak; } void WczytajLiczbe( int & x ) { cout << "Podaj Liczbe : "; cin >> x; } int main() { int x, y; char znak; WczytajLiczbe( x ); WczytajLiczbe( y ); WczytajZnak( znak ); Sprawdz( znak, x, y ); return 0; }
I ten przez kolegę: #include<conio.h> #include<stdio.h> int a, b, wynik; char znak; main() { printf( "Wprowadz pierwsza liczbe \n" ); scanf( "%i", & a ); printf( "Wprowadz pierwsza liczbe \n" ); scanf( "%i", & b ); printf( "Wprowadz znak \n" ); scanf( "%s", & znak ); if( znak == '+' ) { wynik = a + b; printf( "Wynik dodawania: %i", wynik ); } if( znak == '-' ) { wynik = a - b; printf( "Wynik odejmowania: %i", wynik ); } if( znak == '*' ) { wynik = a * b; printf( "Wynik mnozenia: %i", wynik ); } if( znak == '/' ) { if( b != 0 ) { wynik = a / b; printf( "Wynik dzielenia: %i", wynik ); } else printf( "Nie dziel przez zero!" ); } while( !kbhit() ); }
|
|
jsc |
» 2013-01-23 11:04:45 Programowanie oparte na funkcjach to metoda organizacji kodu programu. W małych programach jeśli ci łatwiej to nie musisz korzystać, ale w dużych już od nich nie uciekniesz. |
|
DejaVu |
» 2013-01-23 11:09:31 Lepiej pisać kod w oparciu o funkcje po to, aby się do nich przyzwyczajać i po to, aby umieć go dzielić umiejętnie na funkcje. Każda aplikacja składa się z wielu funkcji. Być może nie ma uzasadnienia używania funkcji do operacji tak prostych jak dodawanie/odejmowanie dwóch liczb (poza walorami edukacyjnymi). No ale jeżeli będziesz miał potrzebę wykonywania wielokrotnie złożonych obliczeń, z różnymi argumentami to funkcje będą niezastąpione. |
|
Lukines Temat założony przez niniejszego użytkownika |
» 2013-01-23 11:21:14 Czyli lepiej pisać na funkcjach już teraz aby się uczyć ich wykorzystywania. Lecz w tak małych programach jest to bez różnicy. Czyli zostaje przy pisaniu na funkcjach ;D |
|
Berux |
» 2013-01-23 12:07:32 Przykładowo: Pisałem program i nie robiłem w nim funkcji (oprócz funkcji int main). Do powrotu do danej części programu używałem etykiety goto . Program stał się mało czytelny. Teraz wiem, że mogłem użyć funkcji. Funkcje ułatwiają zadanie :) Polecam używanie funkcji xD |
|
« 1 » |