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:

Stoppuhr

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



Anmeldungsdatum: 31.10.2004
Beiträge: 40

BeitragVerfasst am: 28.11.2004, 16:10    Titel: Stoppuhr Antworten mit Zitat

Hi!
Könntet ihr mir ein Gefallen tun? durchgeknallt
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
Benutzer-Profile anzeigen Private Nachricht senden
Skilltronic



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

BeitragVerfasst am: 29.11.2004, 00:01    Titel: Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
dreael
Administrator


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

BeitragVerfasst am: 29.11.2004, 23:48    Titel: Antworten mit Zitat

Siehe dazu Artikel

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

dieser behandelt genau die Problematik. Was Du brauchst, ist also ein Zeileneditor (Ersatz für NPUT) wie unter

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

beschrieben, wobei Du in der INKEY$-Schleife auch gleichzeitig die Zeit abfragst und ausgibst. Das Thema Implementation einer Stoppuhr wird sonst unter

http://beilagen.dreael.ch/QB/RENNEN2A.ZIP

gezeigt.
_________________
Teste die PC-Sicherheit mit www.sec-check.net
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic. 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