 |
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 |
ninis
Anmeldungsdatum: 01.09.2009 Beiträge: 8
|
Verfasst am: 14.09.2009, 14:41 Titel: Input Befehl wird ignoriert |
|
|
Hallo,
Ich bin 12 Jahre alt. Ich habe vor kurzer Zeit mit dem programmieren angefangen. Ich kenne mich noch sehr sehr wenig aus.
Ich möchte ein kleines Programm, in dem man 4 Mannschaften gegeneinander spielen und ich am Ende eine Tabelle zu haben wie viel punkte jede Manschaft hat machen (Sieg =3, Unenschieden=1 und niederlage =0). Nur ich habe es mal wieder nicht weit geschaft.
Code:
Dim aschalke,abayern,ahamburg,aleverkusen,bayern,schalke,hamburg,leverkusen as integer
Input "Erstes Spiel gegen FC Schalke. Tore Schalke:",aschalke
Input "Tore bayern:" ,abayern
IF aschalke > abayern Then
abayern = 0: aschalke = 3
PRINT ,aschalke,abayern
elseif aschalke < abayern Then
abayern = 3: aschalke = 0
Print ,schalke, abayern
elseif aschalke = abayern Then
abayern = 1: aschalke = 1
Print ,aschalke, abayern
End If
sleep
Print "Spiel Hamburg gegen Leverkusen."
Input "Tore Leverkusen:",aleverkusen
Input "Tore Hamburg:" ,ahamburg
IF aleverkusen > ahamburg Then
aleverkusen = 3 : ahamburg = 0
PRINT ,ahamburg,aleverkusen
elseif ahamburg > aleverkusen Then
aleverkusen = 3:aschalke = 0
Print, ahamburg, abayern
elseif ahamburg = aleverkusen Then
aleerkusen = 1:hamburg = 1
Print ,ahamburg, abayern
End If
sleep
Ich habe mir überlegt dass ich die anzahl der tore von den 2 Manschaften von dem Ergebnis als variablen speicher. Die größere kriegt variable kriegt 3 Punkte die kleinere 0. Wenn sie gleichgroß sind(unendschieden) kriegen beide Manschaften 1. Den Print , (variable),(Variable)-Befehl habe ich nur zum nachprüfen ob die variablen den richtigen wert hat.
Bei den ersten beiden Mannschaften (Bayern, Schalke) klappt es. Doch wenn ich bei den 2. Manschaften die Tore eingebe will krieg ich ein problem. Nachdem ich nach den anzeigen der Punkten von Bayern und Schalke auf ENTER drück geht es gleich auf die Toore von von hamburg und die tore von Leverkusen wird übersprungen.
Um meinen Fehler besser zu versehen würde ich das Programm ausbrobieren.
Ich weiß das es sehr schwer ist meinen Thema zu verstehen. Ich habe mir mühe gegeben es so gut wie möglich zu beschreiben.
Ich würde mich sehr für antworten freuhen!
Danke  |
|
Nach oben |
|
 |
MOD Fleißiger Referenzredakteur

Anmeldungsdatum: 10.09.2007 Beiträge: 1003
|
Verfasst am: 14.09.2009, 14:59 Titel: |
|
|
Das passiert, weil du das Sleep mit Enter überspringst.
Sleep leert den Tastaturpuffer nicht und wenn du während des Sleeps Enter drückst, dann bekommt Input das gleich als Eingabe.
Probier es mal mit einer anderen Taste, dann geht es.
In dem Fall kannst du statt dem Sleep ein GetKey nehmen, das wartet auch ab, löscht aber den Tastaturpuffer. |
|
Nach oben |
|
 |
ninis
Anmeldungsdatum: 01.09.2009 Beiträge: 8
|
Verfasst am: 14.09.2009, 15:04 Titel: |
|
|
Ja, das ist es!
Ich kannte den Befehl Get key
nicht.
1000 Dank  |
|
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.
|
|