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:

Input Befehl wird ignoriert

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



Anmeldungsdatum: 01.09.2009
Beiträge: 8

BeitragVerfasst am: 14.09.2009, 14:41    Titel: Input Befehl wird ignoriert Antworten mit Zitat

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 lächeln
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
MOD
Fleißiger Referenzredakteur


Anmeldungsdatum: 10.09.2007
Beiträge: 1003

BeitragVerfasst am: 14.09.2009, 14:59    Titel: Antworten mit Zitat

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
Benutzer-Profile anzeigen Private Nachricht senden
ninis



Anmeldungsdatum: 01.09.2009
Beiträge: 8

BeitragVerfasst am: 14.09.2009, 15:04    Titel: Antworten mit Zitat

Ja, das ist es!
Ich kannte den Befehl Get key
nicht.
1000 Dank lächeln
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 -> Allgemeine Fragen zu FreeBASIC. 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