C++ Fehler im Programm: "Ausdruck ergibt keine Funktion"

Abcd12345

Lt. Junior Grade
Registriert
März 2006
Beiträge
483
Hi,

Sorry muss aber nochmal nerfen^^

Ich hab zu Übungszwecken nochmal ein Programm geschrieben

Nach 41 Fehlern die ich berichtigen konnte bleibt ein Fehler über, den ich nicht weg bekomme :(

C:\Program Files\Microsoft Visual Studio\MyProjects\mein progi\code.cpp(41) : error C2064: Ausdruck ergibt keine Funktion
Fehler beim Ausführen von cl.exe.

Code:
//Quizmaster v 1.0

# include <iostream>

using namespace std;

// Prototype's

int Game ();
int Highscore (int Punkte,int Highscore);

// Main

int main ()
{
	
	//Variablen deklaieren
	
	char chMenue;
	int Punkte = 0;
	int Highscore = 0;
	
	//Schleife Menü
	do {
			cout << "Math Quizmaster " << endl;
			cout << "----------------" << endl;
			cout << "(S)piel starten" << endl;
			cout << "(H)ighscore" << endl;
			cout << "(E)nde" << endl;
			
			cout << "Bitte Menüpunkt eingeben";
			cin >> chMenue;

			switch (chMenue)
			{
				//Spiel wird gestartet
				case ('S'):
				case ('s'):
				{
					Punkte =  Game ();
					Highscore = Highscore (Punkte, Highscore);
				}break; //Spiel
				
				//Highscore wird aufgerufen
				case ('H'):
				case ('h'):
				{
					
					cout << "Der Aktuelle Highscore liegt bei ";
					cout << Highscore << " Punkten" << endl;
					
				}break; //Highscore


			}
	} while( chMenue != 'E' && chMenue != 'e');
cout << "\nDanke fürs spielen!!!!";

return 0;
}//Main


//Funktionen defenieren

int Game ()
{
	int Punkte;
	int Auswaehler;

	cout << "Mit Welcher Zahl wird follgende logische Reihe vortgesetzt? (1,2,3,4..)" << endl;
	cin >> Auswaehler;

	if (Auswaehler == 5)
	{	
		cout << "Super die antwort ist richtig"; Punkte++;
	}	
	else
		cout << "Leider nicht die richtige Antwort";

	cout << "Mit Welcher Zahl wird follgende logische Reihe vortgesetzt? (2,5,3,6,4,7..)" << endl;
	cin >> Auswaehler;
	
	if (Auswaehler == 5)
	{	
		cout << "Super die antwort ist richtig"; Punkte++;
	}	
	else
		cout << "Leider nicht die richtige Antwort";

	cout << "Mit Welcher Zahl wird follgende logische Reihe vortgesetzt? (2, 4, 16..)" << endl;
	cin >> Auswaehler;
	
	if (Auswaehler == 256)
	{	
		cout << "Super die antwort ist richtig"; Punkte++;
	}	
	else
		cout << "Leider nicht die richtige Antwort";

	cout << "Mit Welcher Zahl wird follgende logische Reihe vortgesetzt? (60,54, 42,36, 4..)" << endl;
	cin >> Auswaehler;
	
	if (Auswaehler == 18)
	{	
		cout << "Super die antwort ist richtig"; Punkte++;
	}	
	else
	 cout << "Leider nicht die richtige Antwort";

	cout << "Mit Welcher Zahl wird follgende logische Reihe vortgesetzt? (3,7,4,6,10,7,9,13,12..)" << endl;
	cin >> Auswaehler;
	
	if (Auswaehler == 12)
	{	
		cout << "Super die antwort ist richtig"; Punkte++;
	}	
	else
		cout << "Leider nicht die richtige Antwort";

	cout << "Mit Welcher Zahl wird follgende logische Reihe vortgesetzt? (6, 18, 54..)" << endl;
	cin >> Auswaehler;
	
	if (Auswaehler == 162)
	{	
		cout << "Super die antwort ist richtig"; Punkte++;
	}	
	else
		cout << "Leider nicht die richtige Antwort";

	cout << "Mit Welcher Zahl wird follgende logische Reihe vortgesetzt? (1,9, 18, 26, 35 )" << endl;
	cin >> Auswaehler;
	
	if (Auswaehler == 43)
	{	
		cout << "Super die antwort ist richtig"; Punkte++;
	}	
	else
		cout << "Leider nicht die richtige Antwort";

	cout << "Mit Welcher Zahl wird follgende logische Reihe vortgesetzt? (77, 68, 51, 42, 25 )" << endl;
	cin >> Auswaehler;
	
	if (Auswaehler == 16)
	{	
		cout << "Super die antwort ist richtig"; Punkte++;
	}	
	else
		cout << "Leider nicht die richtige Antwort";

	cout << "Mit Welcher Zahl wird follgende logische Reihe vortgesetzt? (555, 1110, 1665, 2220 )" << endl;
	cin >> Auswaehler;
	
	if (Auswaehler == 2775)
	{	
		cout << "Super die antwort ist richtig"; Punkte++;
	}	
	else
		cout << "Leider nicht die richtige Antwort";

		cout << "Mit Welcher Zahl wird follgende logische Reihe vortgesetzt? (799, 733, 644, 578, 489 )" << endl;
	cin >> Auswaehler;
	
	if (Auswaehler == 423)
	{	
		cout << "Super die antwort ist richtig"; Punkte++;
	}	
	else
		cout << "Leider nicht die richtige Antwort";

	cout << "Gratuliere du hast" << Punkte  <<"Punkte ereicht" << endl;

	cout << "Du bist also: ";

	if (Punkte < 2)
	{
	cout << "Ein Mathe-Noob!";
	}
	else if(Punkte < 4)
	{
	cout << "Nicht grade gut in Mathe";
	}
	else if(Punkte < 6)
	{
	cout << "Solide in Mathe";
	}
	else if(Punkte < 8)
	{
	cout << "Gut in Mathe";
	}
	else if(Punkte < 10)
	{
	cout << "Sehr gut in Mathe";
	}
	else if(Punkte  == 10)
	{
	cout << "Ein Mathekünstler";
	}




}//Game

int Highscore (int Punkte,int Highscore)
{
	if (Punkte > Highscore)
	{
		cout << "Super du hast den Highscore geknackt!!!";
		Punkte = Highscore;
	}
	else
	{
		cout << "Schade leider kein neuer Highscore!!!";
	}

return Highscore;

}//highscore


Würde mich über Hilfe freuen :)
 
AW: C++ Fehler im Programm: "Ausdruck ergibt keine Funktion"

Leerstellen hinter den Kommata vergessen bei manchen Werten

cout << "Mit Welcher Zahl wird follgende logische Reihe vortgesetzt? (1,2,3,4..)" = falsch?
cout << "Mit Welcher Zahl wird follgende logische Reihe vortgesetzt? (6, 18, 54..)" = richtig?
Oder das Programm kann Deine Sprache nicht verstehen (follgende, vortgesetzt ) :lol:
 
AW: C++ Fehler im Programm: "Ausdruck ergibt keine Funktion"

Wie arbeitest Du eigentlich zur Zeit?
Ein Programm abtippen und dann 47 Fehler beseitigen müssen, ist eigentlich nicht das Wahre.
Wenn Dir solche Programme noch derartig viele Probleme bereiten, musst Du kleiner anfangen.
Du solltest die einzelnen Elemente verstehen und lernen, und dann selbst kleine Programme bauen,
die z.B. das tun, was in Deinen Beispielprogrammen passiert.
50 Zeilen abtippen und dann grübeln, wie z.B. die Operatoren funktionieren wird Dich nicht sehr weit bringen.

mfG

-- -- muckelzwerg
 
AW: C++ Fehler im Programm: "Ausdruck ergibt keine Funktion"

Hi nochmal,

Das war ja kein Beispielprogramm sondern ein Programm, das ich mir selber ausgedacht habe ;). Ich habe auch bewusst "nicht" ins Buch geguckt, um zu überprüfen ob ich alles bisher gerlernte auch so in die Tat umsetzen kann :)

Es sieht vieleicht, wie ein Beispielprogramm aus, was aber wohl daran liegt das ich mit den 4 von 10 Kapiteln in meinem Buch noch keine wirklich kreativen Sachen machen kann. Der Buch Autor macht ja ein Zahlenratespiel und da dachte ich mir mach ich halt ein Mathe Quiz :-).

Und die Fehler waren auch alles keine Logikschnitzer bis evtl den einen Fehler, wo ich noch nicht genau weiß, was da los war.

Ich weiß jetzt was die Fehlerquelle ist und konnte sie auch beheben:

Code:
Highscore = Highscore (Punkte, Highscore);

Irgendwas ist hier falsch dran, denn wenn ich die Funktion Highscore2 nenne funktoniert alles...

Ich würde mich freuen, wenn mir das mal jemand erklären könnte :)
 
AW: C++ Fehler im Programm: "Ausdruck ergibt keine Funktion"

liegt evtl daran dass du deiner Funktion und einer Variablen den gleichen Namen zugewiesen hast??
 
AW: C++ Fehler im Programm: "Ausdruck ergibt keine Funktion"

Aber wie ist denn nun genau der Sachverhalt?

Darf ich also einer Funktion keine Variabel zuweißen, die den selben Namen trägt wie die Funktion oder darf ich in der Deklaierung/ Deffinierung der Funktion keine Parameter wählen die den selben Namen haben wie die Funktion?
 
AW: C++ Fehler im Programm: "Ausdruck ergibt keine Funktion"

Will mich jetzt ehrlichgesagt nicht in deinen Satz reindenken (sorry ;)) aber man sollte doppelte Namen grundsätzlich überall vermeiden.
 
Bezeichner für Variablen und Funktionen sind Teil des selben Namensraums und innerhalb eines Namensraums darf ein Name (Bezeichner) nur einmal vorkommen.
 
AW: C++ Fehler im Programm: "Ausdruck ergibt keine Funktion"

Okey, das ist einleuchtend :-)
 
Zurück
Oben