Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Probleme mit meinem Program

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Spezielle Fragen
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
QBasic-Lernender



Anmeldungsdatum: 23.07.2007
Beiträge: 5

BeitragVerfasst am: 23.07.2007, 11:32    Titel: Probleme mit meinem Program Antworten mit Zitat

Ich hatte mir neulich eine Herrausforderung vorgenommen(für mich zumindest): Ich wollte Kniffel programmieren. Es hat am Anfang auch prima geklappt, mit ZUfallszahlen usw., doch an der Auswertung bin ich hängen geblieben. Ich schätze man muss das Program erstmal durchlesen, um es zuverstehen und am besten auch in den Compiler reinziehen und ausprobieren. Also genug von Geschwaffel, man kann bis jetzt nur Einsen eintragen lassen (kein Kniffel , gr. Str. usw. ...) und da zeigt er manchmal den richtigen Wert an und manchmal nicht. Der Fehler muss ziehmlich am Ende des Programms sein, da ich diesen zuletzt geschrieben hab.

Noch ein paar infos bevor ihr ihr es ausprobiert: unter den Zufallszahlen steht am Anfang immer "Ja". Das kann mit mit den Ziffern 1- 5 verändern und das "Ja" springt von der jeweiligen Zahl auf "Nein" um. Wenn man dann "w" drückt werden alle Zahlen mit "Nein" neu gewürfelt. Das kann man 2 mal machen(man hat ja normal auch nur 3 Würfe) und wenn man noch mal "w" drückt erscheint ein Pfeil den man mit "," und "." nach oben und unten steuern kann. Mit "w" und der Position zeigzt man an wo man den Wurf hinhaben möchte( im Moment geht wie gesagt nur die 1) und man wird nach einer Bestätigung gefragt(es geht nur Ja ohne Fehler) und dann kommt der Fehler und ich check nicht warum. Hier ist das Programm:

Code:
CLS
i% = 0
'Anzahl der Spieler und Namen
SCREEN 12
PRINT "Wieviele Spieler sollen mitspielen(2-6)?"
DO
Spieler$ = INPUT$(1)
LOOP UNTIL Spieler$ = "2" OR Spieler$ = "3" OR Spieler$ = "4" OR Spieler$ = "5" OR Spieler$ = "6"
SELECT CASE Spieler$
CASE "2"
PRINT "Bitte geben Sie den Namen von Spieler 1 ein(bitte nur 6 Buchstaben)."
INPUT Name1$
CLS
PRINT "Bitte geben Sie den Namen von Spieler 2 ein(bitte nur 6 Buchstaben)."
INPUT Name2$
CLS
CASE "3"
PRINT "Bitte geben Sie den Namen von Spieler 1 ein(bitte nur 6 Buchstaben)."
INPUT Name1$
CLS
PRINT "Bitte geben Sie den Namen von Spieler 2 ein(bitte nur 6 Buchstaben)."
INPUT Name2$
CLS
PRINT "Bitte geben Sie den Namen von Spieler 3 ein(bitte nur 6 Buchstaben)."
INPUT Name3$
CLS
CASE "4"
PRINT "Bitte geben Sie den Namen von Spieler 1 ein(bitte nur 6 Buchstaben)."
INPUT Name1$
CLS
PRINT "Bitte geben Sie den Namen von Spieler 2 ein(bitte nur 6 Buchstaben)."
INPUT Name2$
CLS
PRINT "Bitte geben Sie den Namen von Spieler 3 ein(bitte nur 6 Buchstaben)."
INPUT Name3$
CLS
PRINT "Bitte geben Sie den Namen von Spieler 4 ein(bitte nur 6 Buchstaben)."
INPUT Name4$
CLS
CASE "5"
PRINT "Bitte geben Sie den Namen von Spieler 1 ein(bitte nur 6 Buchstaben)."
INPUT Name1$
CLS
PRINT "Bitte geben Sie den Namen von Spieler 2 ein(bitte nur 6 Buchstaben)."
INPUT Name2$
CLS
PRINT "Bitte geben Sie den Namen von Spieler 3 ein(bitte nur 6 Buchstaben)."
INPUT Name3$
CLS
PRINT "Bitte geben Sie den Namen von Spieler 4 ein(bitte nur 6 Buchstaben)."
INPUT Name4$
CLS
PRINT "Bitte geben Sie den Namen von Spieler 5 ein(bitte nur 6 Buchstaben)."
INPUT Name5$
CLS
CASE "6"
PRINT "Bitte geben Sie den Namen von Spieler 1 ein(bitte nur 6 Buchstaben)."
INPUT Name1$
CLS
PRINT "Bitte geben Sie den Namen von Spieler 2 ein(bitte nur 6 Buchstaben)."
INPUT Name2$
CLS
PRINT "Bitte geben Sie den Namen von Spieler 3 ein(bitte nur 6 Buchstaben)."
INPUT Name3$
CLS
PRINT "Bitte geben Sie den Namen von Spieler 4 ein(bitte nur 6 Buchstaben)."
INPUT Name4$
CLS
PRINT "Bitte geben Sie den Namen von Spieler 5 ein(bitte nur 6 Buchstaben)."
INPUT Name5$
CLS
PRINT "Bitte geben Sie den Namen von Spieler 6 ein(bitte nur 6 Buchstaben)."
INPUT Name6$
CLS
END SELECT

' zuf„llige Wrfelzahlen

RANDOMIZE TIMER
a = INT(RND * 6) + 1
RANDOMIZE TIMER
b = INT(RND * 6) + 1
RANDOMIZE TIMER
c = INT(RND * 6) + 1
RANDOMIZE TIMER
d = INT(RND * 6) + 1
RANDOMIZE TIMER
e = INT(RND * 6) + 1
IF a = 1 THEN
texta1$ = "-------"
texta2$ = "I     I"
texta3$ = "I  X  I"
texta4$ = "I     I"
texta5$ = "-------"
ELSEIF a = 2 THEN
texta1$ = "-------"
texta2$ = "I X   I"
texta3$ = "I     I"
texta4$ = "I   X I"
texta5$ = "-------"
ELSEIF a = 3 THEN
texta1$ = "-------"
texta2$ = "I X   I"
texta3$ = "I  X  I"
texta4$ = "I   X I"
texta5$ = "-------"
ELSEIF a = 4 THEN
texta1$ = "-------"
texta2$ = "I X X I"
texta3$ = "I     I"
texta4$ = "I X X I"
texta5$ = "-------"
ELSEIF a = 5 THEN
texta1$ = "-------"
texta2$ = "I X X I"
texta3$ = "I  X  I"
texta4$ = "I X X I"
texta5$ = "-------"
ELSEIF a = 6 THEN
texta1$ = "-------"
texta2$ = "I X X I"
texta3$ = "I X X I"
texta4$ = "I X X I"
texta5$ = "-------"
END IF
IF b = 1 THEN
textb1$ = "-------"
textb2$ = "I     I"
textb3$ = "I  X  I"
textb4$ = "I     I"
textb5$ = "-------"
ELSEIF b = 2 THEN
textb1$ = "-------"
textb2$ = "I X   I"
textb3$ = "I     I"
textb4$ = "I   X I"
textb5$ = "-------"
ELSEIF b = 3 THEN
textb1$ = "-------"
textb2$ = "I X   I"
textb3$ = "I  X  I"
textb4$ = "I   X I"
textb5$ = "-------"
ELSEIF b = 4 THEN
textb1$ = "-------"
textb2$ = "I X X I"
textb3$ = "I     I"
textb4$ = "I X X I"
textb5$ = "-------"
ELSEIF b = 5 THEN
textb1$ = "-------"
textb2$ = "I X X I"
textb3$ = "I  X  I"
textb4$ = "I X X I"
textb5$ = "-------"
ELSEIF b = 6 THEN
textb1$ = "-------"
textb2$ = "I X X I"
textb3$ = "I X X I"
textb4$ = "I X X I"
textb5$ = "-------"
END IF
IF c = 1 THEN
textc1$ = "-------"
textc2$ = "I     I"
textc3$ = "I  X  I"
textc4$ = "I     I"
textc5$ = "-------"
ELSEIF c = 2 THEN
textc1$ = "-------"
textc2$ = "I X   I"
textc3$ = "I     I"
textc4$ = "I   X I"
textc5$ = "-------"
ELSEIF c = 3 THEN
textc1$ = "-------"
textc2$ = "I X   I"
textc3$ = "I  X  I"
textc4$ = "I   X I"
textc5$ = "-------"
ELSEIF c = 4 THEN
textc1$ = "-------"
textc2$ = "I X X I"
textc3$ = "I     I"
textc4$ = "I X X I"
textc5$ = "-------"
ELSEIF c = 5 THEN
textc1$ = "-------"
textc2$ = "I X X I"
textc3$ = "I  X  I"
textc4$ = "I X X I"
textc5$ = "-------"
ELSEIF c = 6 THEN
textc1$ = "-------"
textc2$ = "I X X I"
textc3$ = "I X X I"
textc4$ = "I X X I"
textc5$ = "-------"
END IF
IF d = 1 THEN
textd1$ = "-------"
textd2$ = "I     I"
textd3$ = "I  X  I"
textd4$ = "I     I"
textd5$ = "-------"
ELSEIF d = 2 THEN
texta1$ = "-------"
texta2$ = "I X   I"
texta3$ = "I     I"
texta4$ = "I   X I"
texta5$ = "-------"
ELSEIF d = 3 THEN
textd1$ = "-------"
textd2$ = "I X   I"
textd3$ = "I  X  I"
textd4$ = "I   X I"
textd5$ = "-------"
ELSEIF d = 4 THEN
textd1$ = "-------"
textd2$ = "I X X I"
textd3$ = "I     I"
textd4$ = "I X X I"
textd5$ = "-------"
ELSEIF d = 5 THEN
textd1$ = "-------"
textd2$ = "I X X I"
textd3$ = "I  X  I"
textd4$ = "I X X I"
textd5$ = "-------"
ELSEIF d = 6 THEN
textd1$ = "-------"
textd2$ = "I X X I"
textd3$ = "I X X I"
textd4$ = "I X X I"
textd5$ = "-------"
END IF
IF e = 1 THEN
texte1$ = "-------"
texte2$ = "I     I"
texte3$ = "I  X  I"
texte4$ = "I     I"
texte5$ = "-------"
ELSEIF e = 2 THEN
texte1$ = "-------"
texte2$ = "I X   I"
texte3$ = "I     I"
texte4$ = "I   X I"
texte5$ = "-------"
ELSEIF e = 3 THEN
texte1$ = "-------"
texte2$ = "I X   I"
texte3$ = "I  X  I"
texte4$ = "I   X I"
texte5$ = "-------"
ELSEIF e = 4 THEN
texte1$ = "-------"
texte2$ = "I X X I"
texte3$ = "I     I"
texte4$ = "I X X I"
texte5$ = "-------"
ELSEIF e = 5 THEN
texte1$ = "-------"
texte2$ = "I X X I"
texte3$ = "I  X  I"
texte4$ = "I X X I"
texte5$ = "-------"
ELSEIF e = 6 THEN
texte1$ = "-------"
texte2$ = "I X X I"
texte3$ = "I X X I"
texte4$ = "I X X I"
texte5$ = "-------"
END IF

'Ergebnisauswahl bei i% = 3

start2:
IF i% = 3 THEN
coordx1% = 0
coordy1% = 65
coordx2% = 22
coordy2% = 70
coorda1% = 22
coordb1% = 70
coorda2% = 0
coordb2% = 75
coordc1% = 0
coordd1% = 65
coordc2% = 0
coordd2% = 75
LINE (coordx1%, coordy1%)-(coordx2%, coordy2%), 12
LINE (coorda1%, coordb1%)-(coorda2%, coordb2%), 12
LINE (coordc1%, coordd1%)-(coordc2%, coordd2%), 12
Schleife:
DO
Richtung$ = INPUT$(1)
LOOP UNTIL Richtung$ = "," OR Richtung$ = "." OR Richtung$ = "q" OR Richtung$ = "w"
SELECT CASE Richtung$
CASE "," ' nach unten
LINE (coordx1%, coordy1%)-(coordx2%, coordy2%), 0
LINE (coorda1%, coordb1%)-(coorda2%, coordb2%), 0
LINE (coordc1%, coordd1%)-(coordc2%, coordd2%), 0
coordy1% = coordy1% + 16
coordy2% = coordy2% + 16
coordb1% = coordb1% + 16
coordb2% = coordb2% + 16
coordd1% = coordd1% + 16
coordd2% = coordd2% + 16
LINE (coordx1%, coordy1%)-(coordx2%, coordy2%), 12
LINE (coorda1%, coordb1%)-(coorda2%, coordb2%), 12
LINE (coordc1%, coordd1%)-(coordc2%, coordd2%), 12
GOTO Schleife
'
CASE "." ' nach oben
LINE (coordx1%, coordy1%)-(coordx2%, coordy2%), 0
LINE (coorda1%, coordb1%)-(coorda2%, coordb2%), 0
LINE (coordc1%, coordd1%)-(coordc2%, coordd2%), 0
coordy1% = coordy1% - 16
coordy2% = coordy2% - 16
coordb1% = coordb1% - 16
coordb2% = coordb2% - 16
coordd1% = coordd1% - 16
coordd2% = coordd2% - 16
LINE (coordx1%, coordy1%)-(coordx2%, coordy2%), 12
LINE (coorda1%, coordb1%)-(coorda2%, coordb2%), 12
LINE (coordc1%, coordd1%)-(coordc2%, coordd2%), 12
GOTO Schleife
'
CASE "q"
GOTO ende
'
CASE "w"
GOTO auswertung
END SELECT

'Startbildschirm

END IF
Behalten1% = 1
Behalten2% = 1
Behalten3% = 1
Behalten4% = 1
Behalten5% = 1
start:
CLS
IF Behalten1% = 1 THEN
real1$ = "Ja"
ELSEIF Behalten1% = 0 THEN real1$ = "Nein"
END IF
IF Behalten2% = 1 THEN
real2$ = "Ja"
ELSEIF Behalten2% = 0 THEN real2$ = "Nein"
END IF
IF Behalten3% = 1 THEN
real3$ = "Ja"
ELSEIF Behalten3% = 0 THEN real3$ = "Nein"
END IF
IF Behalten4% = 1 THEN
real4$ = "Ja"
ELSEIF Behalten4% = 0 THEN real4$ = "Nein"
END IF
IF Behalten5% = 1 THEN
real5$ = "Ja"
ELSEIF Behalten5% = 0 THEN real5$ = "Nein"
END IF
PRINT "   KNIFFEL"
PRINT "   -------"
PRINT "   Namen       "; Name1$; "     "; Name2$; "     "; Name3$; "     "; Name4$; "     "; Name5$; "     "; Name6$
PRINT "   ----------------------------------------------      "; texta1$; "  "; textb1$
PRINT "   Einsen   I "; Einsenp1%; " I     I     I     I     I     I      "; texta2$; "  "; textb2$
PRINT "   Zweien   I     I     I     I     I     I     I      "; texta3$; "  "; textb3$
PRINT "   Dreien   I     I     I     I     I     I     I      "; texta4$; "  "; textb4$
PRINT "   Vieren   I     I     I     I     I     I     I      "; texta5$; "  "; textb5$
PRINT "   Fnfen   I     I     I     I     I     I     I       1.Zahl   2.Zahl"
PRINT "   Sechsen  I     I     I     I     I     I     I         "; real1$; "      "; real2$
PRINT "   ----------------------------------------------"
PRINT "   Ges. ObenI     I     I     I     I     I     I"
PRINT "   Bonus    I     I     I     I     I     I     I      "; textc1$; "  "; textd1$
PRINT "   Ges. ObenI     I     I     I     I     I     I      "; textc2$; "  "; textd2$
PRINT "   ----------------------------------------------      "; textc3$; "  "; textd3$
PRINT "   3er PaschI     I     I     I     I     I     I      "; textc4$; "  "; textd4$
PRINT "   4er PaschI     I     I     I     I     I     I      "; textc5$; "  "; textd5$
PRINT "   FullHouseI     I     I     I     I     I     I       3.Zahl   4.Zahl"
PRINT "   Kl. Str. I     I     I     I     I     I     I         "; real3$; "      "; real4$
PRINT "   Gr. Str. I     I     I     I     I     I     I"
PRINT "   Kniffel  I     I     I     I     I     I     I           "; texte1$
PRINT "   Chance   I     I     I     I     I     I     I           "; texte2$
PRINT "   ----------------------------------------------           "; texte3$
PRINT "   Ges.UntenI     I     I     I     I     I     I           "; texte4$
PRINT "   Ges. ObenI     I     I     I     I     I     I           "; texte5$
PRINT "   GESAMT:  I     I     I     I     I     I     I            5.Zahl"
PRINT "                                                               "; real5$
IF i% = 3 THEN GOTO start2
' Optionen im Spiel

DO
Wahl$ = INPUT$(1)
LOOP UNTIL Wahl$ = "1" OR Wahl$ = "2" OR Wahl$ = "3" OR Wahl$ = "4" OR Wahl$ = "5" OR Wahl$ = "q" OR Wahl$ = "w"
SELECT CASE Wahl$
CASE "1"
IF Behalten1% = 1 THEN
Behalten1% = Behalten1% - 1
ELSEIF Behalten1% = 0 THEN
Behalten1% = Behalten1% + 1
END IF
GOTO start
CASE "2"
IF Behalten2% = 1 THEN
Behalten2% = Behalten2% - 1
ELSEIF Behalten2% = 0 THEN
Behalten2% = Behalten2% + 1
END IF
GOTO start
CASE "3"
IF Behalten3% = 1 THEN
Behalten3% = Behalten3% - 1
ELSEIF Behalten3% = 0 THEN
Behalten3% = Behalten3% + 1
END IF
GOTO start
CASE "4"
IF Behalten4% = 1 THEN
Behalten4% = Behalten4% - 1
ELSEIF Behalten4% = 0 THEN
Behalten4% = Behalten4% + 1
END IF
GOTO start
CASE "5"
IF Behalten5% = 1 THEN
Behalten5% = Behalten5% - 1
ELSEIF Behalten5% = 0 THEN
Behalten5% = Behalten5% + 1
END IF
GOTO start
CASE "q"
GOTO ende
CASE "w"
i% = i% + 1
RANDOMIZE TIMER
a = INT(RND * 6) + 1
RANDOMIZE TIMER
b = INT(RND * 6) + 1
RANDOMIZE TIMER
c = INT(RND * 6) + 1
RANDOMIZE TIMER
d = INT(RND * 6) + 1
RANDOMIZE TIMER
e = INT(RND * 6) + 1
IF Behalten1% = 1 THEN
ELSEIF a = 1 THEN
texta1$ = "-------"
texta2$ = "I     I"
texta3$ = "I  X  I"
texta4$ = "I     I"
texta5$ = "-------"
ELSEIF a = 2 THEN
texta1$ = "-------"
texta2$ = "I X   I"
texta3$ = "I     I"
texta4$ = "I   X I"
texta5$ = "-------"
ELSEIF a = 3 THEN
texta1$ = "-------"
texta2$ = "I X   I"
texta3$ = "I  X  I"
texta4$ = "I   X I"
texta5$ = "-------"
ELSEIF a = 4 THEN
texta1$ = "-------"
texta2$ = "I X X I"
texta3$ = "I     I"
texta4$ = "I X X I"
texta5$ = "-------"
ELSEIF a = 5 THEN
texta1$ = "-------"
texta2$ = "I X X I"
texta3$ = "I  X  I"
texta4$ = "I X X I"
texta5$ = "-------"
ELSEIF a = 6 THEN
texta1$ = "-------"
texta2$ = "I X X I"
texta3$ = "I X X I"
texta4$ = "I X X I"
texta5$ = "-------"
END IF
IF Behalten2% = 1 THEN
ELSEIF b = 1 THEN
textb1$ = "-------"
textb2$ = "I     I"
textb3$ = "I  X  I"
textb4$ = "I     I"
textb5$ = "-------"
ELSEIF b = 2 THEN
textb1$ = "-------"
textb2$ = "I X   I"
textb3$ = "I     I"
textb4$ = "I   X I"
textb5$ = "-------"
ELSEIF b = 3 THEN
textb1$ = "-------"
textb2$ = "I X   I"
textb3$ = "I  X  I"
textb4$ = "I   X I"
textb5$ = "-------"
ELSEIF b = 4 THEN
textb1$ = "-------"
textb2$ = "I X X I"
textb3$ = "I     I"
textb4$ = "I X X I"
textb5$ = "-------"
ELSEIF b = 5 THEN
textb1$ = "-------"
textb2$ = "I X X I"
textb3$ = "I  X  I"
textb4$ = "I X X I"
textb5$ = "-------"
ELSEIF b = 6 THEN
textb1$ = "-------"
textb2$ = "I X X I"
textb3$ = "I X X I"
textb4$ = "I X X I"
textb5$ = "-------"
END IF
IF Behalten3% = 1 THEN
ELSEIF c = 1 THEN
textc1$ = "-------"
textc2$ = "I     I"
textc3$ = "I  X  I"
textc4$ = "I     I"
textc5$ = "-------"
ELSEIF c = 2 THEN
textc1$ = "-------"
textc2$ = "I X   I"
textc3$ = "I     I"
textc4$ = "I   X I"
textc5$ = "-------"
ELSEIF c = 3 THEN
textc1$ = "-------"
textc2$ = "I X   I"
textc3$ = "I  X  I"
textc4$ = "I   X I"
textc5$ = "-------"
ELSEIF c = 4 THEN
textc1$ = "-------"
textc2$ = "I X X I"
textc3$ = "I     I"
textc4$ = "I X X I"
textc5$ = "-------"
ELSEIF c = 5 THEN
textc1$ = "-------"
textc2$ = "I X X I"
textc3$ = "I  X  I"
textc4$ = "I X X I"
textc5$ = "-------"
ELSEIF c = 6 THEN
textc1$ = "-------"
textc2$ = "I X X I"
textc3$ = "I X X I"
textc4$ = "I X X I"
textc5$ = "-------"
END IF
IF Behalten4% = 1 THEN
ELSEIF d = 1 THEN
textd1$ = "-------"
textd2$ = "I     I"
textd3$ = "I  X  I"
textd4$ = "I     I"
textd5$ = "-------"
ELSEIF d = 2 THEN
textd1$ = "-------"
textd2$ = "I X   I"
textd3$ = "I     I"
textd4$ = "I   X I"
textd5$ = "-------"
ELSEIF d = 3 THEN
textd1$ = "-------"
textd2$ = "I X   I"
textd3$ = "I  X  I"
textd4$ = "I   X I"
textd5$ = "-------"
ELSEIF d = 4 THEN
textd1$ = "-------"
textd2$ = "I X X I"
textd3$ = "I     I"
textd4$ = "I X X I"
textd5$ = "-------"
ELSEIF d = 5 THEN
textd1$ = "-------"
textd2$ = "I X X I"
textd3$ = "I  X  I"
textd4$ = "I X X I"
textd5$ = "-------"
ELSEIF d = 6 THEN
textd1$ = "-------"
textd2$ = "I X X I"
textd3$ = "I X X I"
textd4$ = "I X X I"
textd5$ = "-------"
END IF
IF Behalten5% = 1 THEN
ELSEIF e = 1 THEN
texte1$ = "-------"
texte2$ = "I     I"
texte3$ = "I  X  I"
texte4$ = "I     I"
texte5$ = "-------"
ELSEIF e = 2 THEN
texte1$ = "-------"
texte2$ = "I X   I"
texte3$ = "I     I"
texte4$ = "I   X I"
texte5$ = "-------"
ELSEIF e = 3 THEN
texte1$ = "-------"
texte2$ = "I X   I"
texte3$ = "I  X  I"
texte4$ = "I   X I"
texte5$ = "-------"
ELSEIF e = 4 THEN
texte1$ = "-------"
texte2$ = "I X X I"
texte3$ = "I     I"
texte4$ = "I X X I"
texte5$ = "-------"
ELSEIF e = 5 THEN
texte1$ = "-------"
texte2$ = "I X X I"
texte3$ = "I  X  I"
texte4$ = "I X X I"
texte5$ = "-------"
ELSEIF e = 6 THEN
texte1$ = "-------"
texte2$ = "I X X I"
texte3$ = "I X X I"
texte4$ = "I X X I"
texte5$ = "-------"
END IF
Behalten1% = 1
Behalten2% = 1
Behalten3% = 1
Behalten4% = 1
Behalten5% = 1
GOTO start
CASE "q"
GOTO ende
END SELECT

' auswertung

auswertung:
IF coordy1% = 65 THEN
IF a = 1 THEN Einsenp1% = Einsenp1% + 1
IF b = 1 THEN Einsenp1% = Einsenp1% + 1
IF c = 1 THEN Einsenp1% = Einsenp1% + 1
IF d = 1 THEN Einsenp1% = Einsenp1% + 1
IF e = 1 THEN Einsenp1% = Einsenp1% + 1
PRINT Einsenp1%; "auf die Einsen(j/n)?"
DO
Einsenp1$ = INPUT$(1)
LOOP UNTIL Einsenp1$ = "j" OR Einsenp1$ = "n"
SELECT CASE Einsenp1$
CASE "j"
GOTO start
CASE "n"
Einsenp1% = 0
GOTO Schleife
END SELECT
END IF
ende:
END
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
QBasic-Lernender



Anmeldungsdatum: 23.07.2007
Beiträge: 5

BeitragVerfasst am: 23.07.2007, 11:35    Titel: Antworten mit Zitat

zwischen manchen I sind noch Leerzeilen, die man so nicht sieht. Man kann sich ja denken wie's ausehen soll, oder?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5895
Wohnort: Deutschland

BeitragVerfasst am: 23.07.2007, 11:45    Titel: Antworten mit Zitat

Hallo und willkommen im Forum!

Ich habe bei deinem Beitrag mal [code]...[/code] Tags um den Quelltext herumgemacht, sodass er jetzt korrekt mit allen Leerzeichen usw. dargestellt wird. Außerdem sei darauf verwiesen, dass das phpBB Forum eine Funktion zum nachträglichen Bearbeiten der eigenen Beiträge hat. Wenn einem wenige Minuten nach dem Posten noch eine Ergänzung einfällt, kann man diese einfach noch mit in den ursprünglichen Beitrag hineinschreiben und muss kein zweites Posting tätigen:



Viele Grüße!
Sebastian
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
SpionAtom



Anmeldungsdatum: 10.01.2005
Beiträge: 306

BeitragVerfasst am: 23.07.2007, 12:12    Titel: Antworten mit Zitat

Hallo!
Ich empfehle dir dringendst, dich mit Arrays auseinanderzusetzen!
So könnte man schon deine Eingaberoutine am Anfang stark verkürzen:
Code:
'Ermittle Anzahl Spieler
        CLS : PRINT "Wieviele Spieler? (2-6)"
        DO: a$ = INKEY$
        IF a$ = CHR$(27) THEN END
        LOOP UNTIL a$ >= "2" AND a$ <= "6"
        anzahlspieler = VAL(a$)

'Array fr Spielernamen und Punkte erstellen:     
        DIM Spieler$(anzahlspieler)
        DIM spielerpunkte(anzahlspieler, 12)

'Spielernamen ermitteln
        CLS : FOR i = 1 TO anzahlspieler
                PRINT "Spieler "; i; ", geben Sie Ihren Namen ein: ";
                INPUT "", Spieler$(i)
                IF LEN(Spieler$(i)) > 8 THEN Spieler$(i) = LEFT$(Spieler$(i), 8)
        NEXT

'Spielernamen aufschreiben
        CLS : FOR i = 1 TO anzahlspieler
                PRINT "Spieler ", i; ") "; Spieler$(i)
        NEXT
END


Für schönere Rechtecke, schaue dir mal die Ascii-Zeichen 191, 192, 217, 218, 196, 179 an. Und so werden sie auf den Bildschirm gemalt.
Code:
PRINT CHR$(191)

_________________
Inzwischen gehöre ich auch zu den BlitzBasicern. Also verzeiht mir, wenn mir mal ein LOCATE 100, 100 oder dergleichen rausrutscht.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
QBasic-Lernender



Anmeldungsdatum: 23.07.2007
Beiträge: 5

BeitragVerfasst am: 23.07.2007, 13:09    Titel: Antworten mit Zitat

ok, danke für die hinweise (werd mir mal die array- befehle anschauen).
könnt ihr mir auch die lösung für den anderen bug sagen?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Skilltronic



Anmeldungsdatum: 10.09.2004
Beiträge: 1148
Wohnort: Köln

BeitragVerfasst am: 23.07.2007, 13:24    Titel: Antworten mit Zitat

Hallo im Forum,

ich habe es mir noch nicht genau angesehen, aber Du springst am Ende mit GOTO aus den SELECT CASE-Blöcken raus, ohne sie abzuschließen. Vielleicht verheddert er sich da.

Gruß
Skilltronic
_________________
Elektronik und QB? www.skilltronics.de !
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
QBasic-Lernender



Anmeldungsdatum: 23.07.2007
Beiträge: 5

BeitragVerfasst am: 23.07.2007, 15:26    Titel: Antworten mit Zitat

ist ja nicht so als würde er sich irgendwie aufhängen, aber er zeigt halt nicht die richtige zahl an ... verwundert
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
dreael
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 2455
Wohnort: Hofen SH (Schweiz)

BeitragVerfasst am: 23.07.2007, 22:03    Titel: Antworten mit Zitat

@QBasic-Lernender: Wieder einmal ein Paradebeispiel für

http://www.dreael.ch/Deutsch/BASIC-Knowhow-Ecke/Anfaengerfehler.html

Aber wir helfen Dir hier aktiv bei der Softwaredesign-Verbesserung mit. :-)
_________________
Teste die PC-Sicherheit mit www.sec-check.net
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
QBasic-Lernender



Anmeldungsdatum: 23.07.2007
Beiträge: 5

BeitragVerfasst am: 28.07.2007, 18:12    Titel: Antworten mit Zitat

klar, da kann man noch einige sachen besser gestalten...
aber was ist den jetzt der fehler..?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Spezielle Fragen Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz