Wo ist der Fehler?
-
Hi,habe dieses kleine Programm hier geschrieben:
#include <iostream.h> int Multiplikation(int x,int y); void main(void) { int a; int b; int Ergebnis = Multiplikation(a,b); cout << "Zwei Zahlen zum multiplizieren eingeben\n"; cin >> a; cin >> b; cout << "Das Ergebnis lautet:"<<Ergebnis; } int Multiplikation(int x,int y,int Produkt) { int Produkt = x * y; return Produkt; }
Visual C++ zeigt nun beim Kompilieren diese Fehlermeldung:C:\Entwicklungen\HelloWorld\HelloWorld.cpp(20) : error C2082: Neudefinition des formalen Parameters "Produkt"
???
Wo ist der Fehler?
-
fehler nr1: du hast das schließende cpp-tag vergessen
also: du rufst Multiplikation mit zwei parametern auf.
in der untenstehenden definition stehen aber drei parameter.der compiler beschwert sich darüber, daß du erst int Produkt definierst und dann im funktionskörper nochmal definierst.
-
Wie soll der Code richtig lauten?
-
du läßt das int Produkt aus der parameterliste von Multiplikation raus.
-
Es geht aber wenn ich jetzt 4 und 5 eingebe kommt etwas als Ergebnis das in etwa so aussieht:Das Ergebnis lautet:625419
-
Tommy438 schrieb:
Hi,habe dieses kleine Programm hier geschrieben:
int a; //hier vereinbarst du eine variable a int b; //und hier eine b int Ergebnis = Multiplikation(a,b); //die variablen haben noch keinen wert zugewiesen bekommen, sei enthalten irgendwas. jetzt übergibts du also an die funktion zwei zufällige werte!
lösung: ERST die zuweisung der werte an a und b (durch eingabe des benutzers)
DANN das aufrufen der multipilkationsfunktion mit den parametern a und b
-
Das könnte daran liegen, daß du das Ergebnis berechnest, bevor die Zahlen überhaupt bekannt sind! Also erst Zahlen einlesen, dann Ergebnis berechnen.
-
Ok jetzt klappt alles,
Danke an alle!
Ihr habt ja echt was drauf