Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

05.01.2012, 22:12

4.11 Fehler...

Guten Morgen,
ich hab jetzt 4.11 das Zahlenraten von Hand eingetippt aer es komtm eine Fehler meldung die ich nicht ganz kapiere
hoffeihr könnr mir weiter helfen

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
//C++ für Spieleprogrammierer
//Listing 4.11
//Zahenraten
//
#include <iostream>
#include <windows.h>

using namespace std;

#pragma comment (lib, "winmm.lib")

//Funktionsprototypen
int Spielen (int Level);
int Waehle_Level (int Level);
int Teste_Highscore (int Punkte, int Highscore);
void Zeige_Infos ();

//Hauptprogramm 
//
int main()
{
//Variablen
//
char Auswahl;//Gewähle Menüpunkte
int Level = 5;//Aktueller Level
int Highscore = 100;//Aktueller Highscore

//Verarbeitung des Menüs
do
{
//Menü ausgeben
//
cout << "Zahlenraten - Menue" << endl;
cout << "-------------------" << endl;
cout << "(N)eues Spiel starten" << endl;
cout << "(L)evel waehlen" << endl;
cout << "(H)ighscore anzeigen" << endl;
cout << "(I)nfo" << endl;
cout << "(B)eenden\n\n";

//Zufallsgenerator initialisieren
srand (timeGetTime ());

//Eingabe abfragen 
cout << "Auswahl: ";
cin >> Auswahl;

//Je nach Eingabe verzweigen
switch (Auswahl)
{
//Neues Spiel?
case ('N'):
case ('n'):
{
//Spielen
int Punkte;
Punkte = Spielen (Level);

Highscore = Teste_Highscore (Punkte, Highscore);

} break;

//Level wählen?
case ('L'):
case ('l'):
{
Level = Waehle_Level (Level);

} break;

//Highscore anzeigen?
case ('H'):
case ('h'):
{
cout << "Der aktuelle Highscore liegt bei: ";
cout << Highscore << " Punkten\n\n";

} break;

//Informationen anzeigen?
case ('i'):
case ('I'):
{
Zeige_Infos ();

} break;

case ('B'):
case ('b'):
{
cout << "Spiel wird beendet" << endl;

} break;

//Falsche Eingabe?
default:
{
cout << "Falsche Eingabe!\n\n";

} 
}
} while (Auswahl != 'b' && Auswahl != 'B'); //Spiel beenden?

cout << "Bis zum nächsten Mal" << endl;

return 0;
}//main beendet

//Waehle Infos
//
//Aufgabe: Informationen zum Spiel anzeigen
//
void Zeige_Infos ()
{
cout << "Zahlenraten V1.0" << endl;
cout << "Beispiel aus \"C++ für Spieleprogrammierer\"";
cout << "\n\n";
}//Zeige_Infos

//Waehle_Level
//
//Aufgabe: Neuen Level Wählen
//
int Waehle_Level (int Level)
{
//Variablen
//
int Neuer_Level;

do 
{
//Neuen Level wählen 
cout << "Aktueller Level: " << Level << endl;
cout << "Neuer Level (1-10): ";
cin >> Neuer_Level;

//Ungültiger Level gewählt?
if (Neuer_Level < 1 || Neuer_Level > 10)
{
//Fehlermeldung ausgeben
cout << "Ungueltiger Level-Wert" << endl;
}
} while (Neuer_Level < 1 || Neuer_Level >10);

//Gewähltes Level zurückgeben
return Neuer_Level;
} //Wähle Level

//Spiele
//
//Aufgabe: Das eigentlcihe Spiel spielen
//
int Spielen (int Level)
{
//Variablen
//
int Zufallszahl;//Zufallszahl, die erraten werden muss
int Geratene_Zahl = 0;//Zahl, die der Spieler eingibt
int Bereich = Level*10;//Bereich der Zufallszahlen
int Versuche = 0;//Anzahl der bisherigen Versuche
int Punkte = 0;//Punktzahl

//Zufallszahlen ermitteln
Zufallszahl = (rand()%Bereich)+1;

//Bereich ausgeben, in dem geraten wird
cout << "\nDie gesuchte Zahl befindet sich zwischen 1 und ";
cout << Bereich << endl;

//So lange raten, bis die Zahlgefunden wurde
while (Geratene_Zahl != Zufallszahl)
{
cout << "Dein Tipp: ";
cin >> Geratene_Zahl;

Versuche++;

//Zahl hat nicht gestimmt also Hinweis ausgeben
if (Geratene_Zahl < Zufallszahl)
cout << "Die gesuchte Zahl ist groesser"<< endl;
if (Geratene_Zahl >Zufallszahl)
cout << "Die gesuchte Zahö ist kleiner" << endl;
}

//die Zahl wurde erreicht!
cout << "\nGeschafft !" << endl;
cout << " Du hast die Zahl nach " << Versuche << " \n Versuchen erraten!\n\n\n" << endl; 

//Punkte berechnen
//Desto weniger Versuche desto höher das Level, je mehr Punkte werden vergeben
//
//
Punkte = Bereich - Versuche + 1;
Punkte *= Level;

//Wenn mehr Versuche benötigt wurde, als es Zahlen gibt, 
//kann das Ergebnis negativ sein
//
if (Punkte < 0)
Punkte = 0;

//Punkte ausgeben
cout << "Punkte: " << Punkte << endl;

//Punkte zurückdrängen
return Punkte;
}//Spielen

//Test_Highscore
//
//Aufgabe: Prüfen, ob der Highscore geknackt wurde
//
int Teste_Hihscore (int Punkte, int Highscore)
{
//Prüfen, ob der Highscore geknackt wurde
if (Punkte > Highscore)
{
cout << "Glückwunsch. Neuer Highscore !\n\n";
Highscore = Punkte;
}
else
{
cout << "Leider kein neuer Highscore... \n\n\n";
}

//Highscore zurückgeben
return Highscore;
}//TesteHighsocore


und die Fehlermeldung ist:
1>4.11.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""int __cdecl Teste_Highscore(int,int)" (?Teste_Highscore@@YAHHH@Z)" in Funktion "_main".
1>C:\Users\Hannes\Documents\Visual Studio 2008\Projects\Listings\4.11\Debug\4.11.exe : fatal error LNK1120: 1 nicht aufgelöste externe Verweise.

danke für baldige hilfe uns einen guten Morgen :rolleyes:

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Fendoer« (05.01.2012, 22:18)


Wirago

Alter Hase

Beiträge: 1 193

Wohnort: Stockerau

Beruf: CRM Application Manager

  • Private Nachricht senden

2

05.01.2012, 22:18

C-/C++-Quelltext

1
int Teste_Hihscore (int Punkte, int Highscore)
(zeile 213)

merkst was?! ;)

3

05.01.2012, 22:22

jop danke^^
damit kommt keien Fehlermeldung mehr herzlcihen Dank xD^^

Werbeanzeige