|
Das deutsche QBasic- und FreeBASIC-Forum Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Spongebob Schwamm
Anmeldungsdatum: 31.10.2004 Beiträge: 40
|
Verfasst am: 28.11.2004, 16:10 Titel: Stoppuhr |
|
|
Hi!
Könntet ihr mir ein Gefallen tun?
Also könntet ihr mir in den Code eine Stoppuhr einbauen?
Die soll so funktionieren: Sie soll zwei Minuten im Hintergrund laufen und
soll immer oben rechts angezeigt werden und sie soll so programmiert sein das wenn man bevor die Zeit abgelaufen und man an die Tür beim Führerstand geht der Satz:"Der Zug hat noch nicht angehalten ich falle vom Zug!!!!!!" kommt und wenn man die Tür benutzt wenn die Zeit abgelaufen ist kommt der Satz aus Zeile 67 Plus Zeile 68
Code: |
CONST nRaeume% = 4 ' Total vier Räume
DIM Raum$(1 TO nRaeume%), Nord%(1 TO nRaeume%), Sued%(1 TO nRaeume%)
DIM West%(1 TO nRaeume%), Ost%(1 TO nRaeume%)
FOR i% = 1 TO nRaeume%
READ Raum$(i%), Nord%(i%), Sued%(i%), West%(i%), Ost%(i%)
NEXT i%
' Zustandstabelle
' Raum N S W O
DATA "3 Abteil", 0, 0, 2, -3
DATA "2 Abteil", -2, 0, 3, 1
DATA "1 Abteil", 0, 0, 4, 2
DATA "F?hrerstand", -1, 0, 0, 3
' Ab hier eigentliches Spiel
AktPos% = 1 ' Start im 1 Abteil
InSpiel% = -1 ' Flag, dass immer noch in Spiel (-1 = TRUE, Boolean)
PLAY "MLL19cccccccccccccccccc"
PRINT "Vorsicht auf Gleis 1 ihr Zug f„hrt ab,sie haben verbindung zu Hannover Flughafen"
PRINT
WHILE InSpiel%
PRINT "Ich befinde Mich im "; Raum$(AktPos%)
PRINT "Mögliche Gehrichtungen:";
IF Nord%(AktPos%) <> 0 THEN
PRINT " Norden";
END IF
IF Sued%(AktPos%) <> 0 THEN
PRINT " Süden";
END IF
IF West%(AktPos%) <> 0 THEN
PRINT " Westen";
END IF
IF Ost%(AktPos%) <> 0 THEN
PRINT " Osten";
END IF
PRINT
LINE INPUT "Wo soll ich hingehen: ", bef$
SELECT CASE bef$
CASE "N", "n" ' Nach Norden gehen
NeuPos% = Nord%(AktPos%)
CASE "S", "s" ' Nach Süden gehen
NeuPos% = Sued%(AktPos%)
CASE "W", "w" ' Nach Westen gehen
NeuPos% = West%(AktPos%)
CASE "O", "o" ' Nach Osten gehen
NeuPos% = Ost%(AktPos%)
CASE ELSE
NeuPos% = AktPos% ' Bleiben
PRINT "Mist, da kann ich nicht hin"
PRINT ""
END SELECT
IF NeuPos% = 0 THEN
PRINT "Da kann ich nicht hingehen!"
ELSE
AktPos% = NeuPos%
IF NeuPos% < 0 THEN
InSpiel% = 0 ' 0 = FALSE (Boolean)
END IF
END IF
WEND
IF AktPos% = -1 THEN
PLAY "MLL19cccccccccccccccccc"
PRINT "Vorsicht ihr Zug f„hrt ein!"
PRINT "Ja! Ich bin drausen!"
SLEEP 1
ELSE
IF AktPos% = -2 THEN
PRINT "Nein!!! Die T?r war Defekt!"
PRINT "Ich falle vom Zug!!!!!!!!!!!!!!!!"
SLEEP 1
ELSEIF AktPos% = -3 THEN
PRINT "Hilfe!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
PRINT "Da war das Ende des Zugs!!!!!!!!!!!!!!!!!!!!!"
SLEEP 1
END IF
PRINT "Sie sind tot."
SLEEP 5
END IF
|
Schon mal Danke im voraus
Mfg
Spongebob Schwamm |
|
Nach oben |
|
|
Skilltronic
Anmeldungsdatum: 10.09.2004 Beiträge: 1148 Wohnort: Köln
|
Verfasst am: 29.11.2004, 00:01 Titel: |
|
|
Hallo
Das Problem ist, dass du die Steuerung mit LINE INPUT machst. Da wird das Programm angehalten, bis eie Eingabe erfolgt. Wenn du also eine laufende Aktualisierung der Uhr einbauen willst, musst du die ganze Eingabe z.B. über eine Schleife mit INKEY$ oder so machen.
Gruss
Skilltronic |
|
Nach oben |
|
|
dreael Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 2507 Wohnort: Hofen SH (Schweiz)
|
|
Nach oben |
|
|
|
|
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.
|
|