barexb Temat założony przez niniejszego użytkownika |
XVII funkcje - problem ze zrozumieniem » 2009-02-24 20:28:54 Witam... siedze już od 2 godzin nad funkcjami i nie mogę dojść do tego jak je wywołać w programie.... Może mi ktoś napisać jakąś prostą funkcje która dodaje 2 liczby i dzieli przez 3? i co najważniejsze żeby było wywołanie w programie. A liczby wpisuje użytkownik #include<iostream> #include<conio.h> using namespace std; void PodniesDoPotegiDrugiej( int & liczba ) { liczba *= liczba; } int main() { int liczba; cout << "Podaj liczbe: "; cin >> liczba; PodniesDoPotegiDrugiej( liczba ); cout << "Liczba=" << liczba << endl; getch(); return( 0 ); }
kod powyżej rozumiem bo w parametrach funkcji jest tylko (liczba). Ale takiego co by mial dwie różne liczby dodać to juz nie umiem wywołać....:( Proszę o jak najszybszą pomoc |
|
pekfos |
» 2009-02-24 20:37:25 wielka mi filozofia! po po prostu piszesz dwa parametry #include <iostream> int dodaj( int a, int b ) { return( a + b ); } int main() { int a, b; cin >> a; cin >> b; int c = dodaj( a, b ); cout << c; getchar(); return 0; } |
|
GoldWolf |
» 2009-02-24 20:40:42 Znowu się spóźniłem. Nie bądź taki do przodu bo cię z tyłu braknie, pekfos. Nie każdy od razu się rodzi Bilem. A o to moja propozycja: #include<iostream.h> using std::iostream;
int Dodaj_i_dziel( int liczba, int liczba1 ) { liczba =( liczba + liczba1 ) / 3; return liczba; } int main() { int liczba, liczba1; cout << "Podaj 1 liczbe: "; cin >> liczba; cout << "Podaj 2 liczbe: "; cin >> liczba1; cout << "Liczba =" << Dodaj_i_dziel( liczba, liczba1 ) << endl; system( "pause" ); }
|
|
GoldWolf |
» 2009-02-24 21:00:50 Może kilka słów wyjaśnienia: int Dodaj_i_dziel( int liczba, int liczba1 ) { liczba =( liczba + liczba1 ) / 3; return liczba; }
Przede wszystkim ta funkcja zwraca wartość int(liczbę), mówi o tym ten fragment "int Dodaj_i_dziel". Należy pamiętać, że jak robisz taką funkcję to powinna ona zawierać "return liczba;" - inaczej mówiąc co ma zwracać. Należy także pamiętać, że w tym konkretnym przypadku musi to być liczba(czyli int). Co się stanie jeśli nie będzie "return liczba;" to sobie sam sprawdź komentując ten fragment kodu. Funkcja może pobierać kilka wartości jednak w kursie jest to dość dobrze opisane, mam nadzieje, że nie poszedłeś na łatwiznę ..... |
|
barexb Temat założony przez niniejszego użytkownika |
» 2009-02-25 00:16:14 aa to teraz juz rozumiem... dzięki Dante:) a ty kolego pekfos chyba czegos nie rozumiesz..jestem nowy a autor odsyla do forum jezeli ma ktos problem, to moj 1 raz...Jak nie chcesz nie pisz, przecież to nie pcformat kto więcej postów uzbiera... luzu więcej.... |
|
DejaVu |
» 2009-02-25 01:55:22 Tak... pomagajcie sobie a nie szpanujcie wiedzą :) |
|
GoldWolf |
» 2009-02-25 16:10:24 Po prostu rozumiem co to znaczy siedzieć 2 - 3 h i czegoś nie czaić, chociaż nie ukrywam, iż w kursie jest to w miarę opisane. Ja nie mam czym szpanować chciałem tylko pomóc ....
IOSTREAM - to wpisz bez rozszerzenia i prze kompiluj, u mnie bez rozszerzenia nie działa ... |
|
GoldWolf |
» 2009-02-25 18:50:01 Nie znam się na tym ale u mnie działają np: #include <iostream.h> using std::iostream;
lub #include <iostream> using std::cout; using std::cin; using std::endl;
Żeby potwierdzić twoją tezę nie ufając ci przy tym, zainstalowałem Visual C++ 2005 Express oto wyniki testu:
#include "stdafx.h" #include <iostream> using std::iostream;
int Dodaj_i_dziel( int liczba, int liczba1 ) { liczba =( liczba + liczba1 ) / 3; return liczba; } int main() { int liczba, liczba1; cout << "Podaj 1 liczbe: "; cin >> liczba; cout << "Podaj 2 liczbe: "; cin >> liczba1; cout << "Liczba =" << Dodaj_i_dziel( liczba, liczba1 ) << endl; system( "pause" ); }
1>------ Build started: Project: mus, Configuration: Debug Win32 ------ 1>Compiling... 1>mus.cpp 1>d:\new folder\mus\mus\mus.cpp(17) : error C2065: 'cout' : undeclared identifier 1>d:\new folder\mus\mus\mus.cpp(18) : error C2065: 'cin' : undeclared identifier 1>d:\new folder\mus\mus\mus.cpp(23) : error C2065: 'endl' : undeclared identifier 1>Build log was saved at "file://d:\New Folder\mus\mus\Debug\BuildLog.htm" 1>mus - 3 error(s), 0 warning(s) ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ========== Więc też nie działa jak się spodziewałem. Działa tylko : #include <iostream> using std::cout; using std::cin; using std::endl;
A jak zrobię: #include <iostream.h> to mam:
Dlaczego to wszystko działa w moim przypadku to akurat wiem, tobie no cóż pozostaje zapytać na forum. PS nie lubię kłamstwa, żeby potwierdzić moją tezę chciałem zainstalować sobie jeszcze VC++ `08, ale powiem ci nie warto, pomyśl trochę nim coś napiszesz, a jak napiszesz to bądź pewien co ....... |
|
« 1 » 2 |