Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Theoretische Informatik » Zwischen Funktionen springen » Antwort erstellen » Hallo Gast [Anmelden|Registrieren]

Antwort erstellen
Benutzername: (du bist nicht eingeloggt!)
Thema:
Nachricht:

HTML ist nicht erlaubt
BBCode ist erlaubt
Smilies sind erlaubt
Bilder sind erlaubt

Smilies: 21 von 33
smileWinkDaumen hoch
verwirrtAugenzwinkerngeschockt
Mit ZungeGottunglücklich
Forum Kloppebösegroßes Grinsen
TanzentraurigProst
TeufelSpamWillkommen
LehrerLOL HammerZunge raus
Hilfe 
aktuellen Tag schließen
alle Tags schließen
fettgedruckter Textkursiver Textunterstrichener Text zentrierter Text Hyperlink einfügenE-Mail-Adresse einfügenBild einfügen Zitat einfügenListe erstellen CODE einfügenPHP CODE farbig hervorheben
Spamschutz:
Text aus Bild eingeben
Spamschutz

Die letzten 5 Beiträge
Karlito RE: Zwischen Funktionen springen

Zitat:
Original von nano99
Wenn ich das Programm auf meinem Taschenrechner laufen lassen möchte, was kann ich denn dann statt "Windows.h" nehmen? Oder muss ich dann komplett andere Funtionen verwenden?


Das weis ich leider auch nicht. Dazu bräuchte man Informationen vom Hersteller. Da habe ich aber keine gefunden.

VG,

Karlito
nano99 Zwischen Funktionen springen

Hi!
Vielen Dank für deine Antwort!
Jetzt funktioniert alles.
Wenn ich das Programm auf meinem Taschenrechner laufen lassen möchte, was kann ich denn dann statt "Windows.h" nehmen? Oder muss ich dann komplett andere Funtionen verwenden?

Übrigens:
Hier ist ein Programm mit Menü, bei dem man mit einem O überall durch die Gegend wandern kann (rechts, links, oben, unten, es gibt nach rechts und unten eine Beschränkung):


#include <iostream>
#include <Windows.h>

using namespace std;

int vonoben=0;
int vonlinks=0;
int i;

void spielstart();
void anleitung();

void menue()
{
system("cls");
cout << "=====MENUE=====\n\n";
cout << "Spiel starten <1>\n";
cout << "Anleitung <2>";
while(1)
{
if(GetAsyncKeyState(0x31))
{
spielstart();
break;
}
else if(GetAsyncKeyState(0x32))
{
anleitung();
break;
}
}
}

void anleitung()
{
system("cls");
cout << "===ANLEITUNG===\n\n";
cout << "Steuere deine Spielfigur O\n";
cout << "mit den Pfeiltasten zu\n";
cout << "jeder beliebigen Position!\n\n";
cout << "Druecke waehrend des Spiels\n";
cout << "[ESC], um zum Menue gelangen.\n\n";
cout << "Druecke: [ESC]";
while(1)
{
if(GetAsyncKeyState(VK_ESCAPE))
{
menue();
}
}
}

void spielstart()
{
while(true)
{
system("cls");
for(i=0; i<=vonoben; ++i)
{
cout << "\n";
}
for(i=0; i<=vonlinks; ++i)
{
cout << " ";
}
cout << "O";

if(GetAsyncKeyState(VK_UP))
{
if(vonoben>=0)
{
--vonoben;
}
}
if(GetAsyncKeyState(VK_DOWN))
{
if(vonoben<=15)
{
++vonoben;
}
}
if(GetAsyncKeyState(VK_RIGHT))
{
if(vonlinks<=50)
{
++vonlinks;
}
}
if(GetAsyncKeyState(VK_LEFT))
{
if(vonlinks>=0)
{
--vonlinks;
}
}
if(GetAsyncKeyState(VK_ESCAPE))
{
menue();
break;
}
}
}

int main()
{
menue();
return 0;
}
Karlito

Schau dir mal http://en.wikipedia.org/wiki/Curses_%28p...ming_library%29 an. Das könnte dir viel ersparen, wenn du es nicht unbedingt alles selbst machen willst, was sicher auch seinen Reiz hast.

VG,

Karlito
Karlito

Hallöchen,

du hattest einen Klammerfehler und ein paar weitere kleinere in deinem Programm.

Aber kleine Fehler sind normal Augenzwinkern Immer schön weiter machen Daumen hoch . Willst du das auf deinem Taschenrechner laufen lassen? Ich denke da könntest du mit der Windows.h Probleme bekommen.

Ich weis noch nicht genau wie du auf dem Bildschirm mit einem Zeichen "herumwandern" kannst. Wenn ich dazu komme, schaue ich es mir noch mal an, oder es hilft dir jemand anderes.

code:
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:
#include <iostream>
#include <Windows.h>

using namespace std;

int vonlinks=1;

void spielstart();
void anleitung();

void menue()
{
	system("cls");
	cout << "MENUE\n==========\n\n";
	cout << "Spiel starten <1>\n";
	cout << "Anleitung <2>\n";
	while(1)
	{
		if(GetAsyncKeyState(0x31))
		{
			spielstart();
			break;
		}
		else if(GetAsyncKeyState(0x32))
		{
			anleitung();
			break;
		}
	}
}

void anleitung()
{
	system("cls");
	cout << "ANLEITUNG\n======\n\n";
	cout << "Steuere deine Spielfigur (O) mit\nden Pfeiltasten. Wenn du\ndas @ erreichst, hast du\ngewonnen!\n\n";
	cout << "Druecke: [ESC]\n";
	while(1)
	{
		if(GetAsyncKeyState(VK_ESCAPE))
		{
			menue();
		}
	}
}

void spielstart()
{
	system("cls");
	cout << "\n\n\n\n @";
	cout << "\b\b\b\b\b\b\b\b\b\bO";
	while(true)
	{
		if(GetAsyncKeyState(VK_RIGHT))
		{
			cout << "\b O";
			++vonlinks;
		}
		if(GetAsyncKeyState(VK_LEFT))
		{
			cout << "\b \b\bO";
			--vonlinks;
		}
		if(vonlinks == 10)
		{
			cout << "\n\n\n\nDu hast GEWONNEN!!!";
			break;
		}
	}
}

int main()
{
	menue();
	return 0;
}


VG,

Karlito
nano99 Zwischen Funktionen springen

Meine Frage:
Hi!
Ich will ein Programm schreiben, in dem es ein Menü gibt, und in dem man ein kleines Spiel spielen kann.
Hier ist der Code:

#include <iostream>
#include <Windows.h>

using namespace std;

int vonlinks=1;

void menue()
{
system("cls");
cout << "MENUE\n==========\n\n";
cout << "Spiel starten <1>\n";
cout << "Anleitung <2>\n";
while((GetAsyncKeyState(0x31)&1 != 1) && (GetAsyncKeyState(0x32)&1 != 1)))
{
if((GetAsyncKeyState(0x31)&1 != 1))
{
spielstart();
}
else if((GetAsyncKeyState(0x32)&1 != 1))
{
anleitung();
}
}
}

void anleitung()
{
system("cls");
cout << "ANLEITUNG\n======\n\n";
cout << "Steuere deine Spielfigur (O) mit\nden Pfeiltasten. Wenn du\ndas @ erreichst, hast du\ngewonnen!\n\n";
cout << "Druecke: [ESC]\n";
while((GetAsyncKeyState(VK_ESCAPE)&1 != 1))
{
if((GetAsyncKeyState(VK_ESCAPE)&1 != 1))
{
menue();
}
}
}

void spielstart()
{
system("cls");
cout << "\n\n\n\n @";
cout << "\b\b\b\b\b\b\b\b\b\bO";
while(true)
{
if(GetAsyncKeyState(VK_RIGHT)&1 == 1)
{
cout << "\b O";
++vonlinks;
}
if(GetAsyncKeyState(VK_LEFT)&1 == 1)
{
cout << "\b \b\bO";
--vonlinks;
}
if(vonlinks == 10)
{
cout << "\n\n\n\nDu hast GEWONNEN!!!";
break;
}
}
}

int main()
{
menue();
return 0;
}

Jetzt ist mein Problem: ich bin in der Funktion "void menue()" und will, wenn die Taste 1 gedrückt wurde, zu der Funktion "spielstart()" springen. Hier zeigt mir der Compiler aber dann immer eine Fehlermeldung an.
Weiß jemand, wie der Code richtig lautet?

Meine Ideen:
hmmm...