tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
3
ZUGRIFFE
629
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    HarryXVI HarryXVI ist offline Mitglied Gold
    Registriert seit
    Apr 2008
    Beiträge
    108
    Ich habe ein Editfeld. wenn ich eine Zahl eingebe und Enter drücke, soll das Programm sie speichern und mit der Zahl, die der Computer vorher mit Zufallsgenerator ermittelt hat, vergleichen. Dann soll der Computer bei einer eingegebenen großen Zahl eine größere Zahl angeben, bei einer niedrigen die echte Zahl.

    Das ist sehr komplex, aber vielleicht könnt ihr mir die Einzelschritte (Eingabe, Vergleich, Ausgabe) erklären. Code wäre sehr hilfreich, denn ich weiß auch nicht, welche Prozedur ich beim Editfeld anwenden soll.
     

  2. #2
    Registriert seit
    Nov 2001
    Ort
    Gießen
    Beiträge
    4.091
    Hi,

    du kannst die eingegebene Zahl mit der StrToInt()-Funktion (siehe Onlinehilfe) in einen Integer-Wert umwandeln und diese dann mit deiner Zufallszahl vergleichen:

    Code delphi:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    
    var
        zufall: Integer;
        eingabe: Integer;
    begin
        // Zufallszahl erzeugen
        eingabe := StrToInt(TextBox1.Text);
        if eingabe > zufall then
        begin
            // Die Eingabe ist größer als die Zufallszahl
        end
        else
            // Die Eingabe ist kleiner als oder gleich groß wie die Zufallszahl
        end;
    end;

    Du solltest auch noch darauf achten, dass StrToInt() bei nicht numerischen Eingaben eine Exception vom Typ EConvertError wirft. Diesen Fall solltest du ggf. noch abfangen.

    Grüße, D.
     
    "You could say that I was too lazy to calculate and so I invented the computer." -- Konrad Zuse

  3. #3
    HarryXVI HarryXVI ist offline Mitglied Gold
    Registriert seit
    Apr 2008
    Beiträge
    108
    Gut, das wäre schon mal der Vergleich...Aber wie funktioniert jetzt die Eingabe genau?

    1. Ich habe jetzt als Eingabefeld ein Editfeld genommen und die Procedure "OnEnter".
    Da habe ich deinen Code eingefügt. Richtig so?

    2.
    Code :
    1
    
    eingabe := StrToInt(Eingabe.Text);
    Eingabe ist mein Editfeld. Warum sagt der Compiler: "Record, Objekt oder Klassentyp fehlt"?
     

  4. #4
    Registriert seit
    Nov 2001
    Ort
    Gießen
    Beiträge
    4.091
    Hi!

    1. Nein, das ist so nicht ganz richtig. Das OnEnter-Ereignis wird ausgelöst, wenn das TEdit den Fokus bekommt (also, wenn du den Cursor in das TEdit setzt). Am besten wäre es, wenn du einen Button auf das Formular ziehst und in dessen OnClick-Ereignis deinen Code schreibst. Damit kannst du sicher gehen, dass erst beim Anklicken des Buttons der Inhalt des TEdits ausgewertet wird.

    2. Zeig am besten mal etwas mehr Code und sag uns noch, in welcher Zeile der Compiler den Fehler findet.

    Insgesamt würde ich dir aber empfehlen, dich erstmal in die Programmiersprache einzuarbeiten, die dahinter liegt. Einen guten Einstieg bietet der Delphi-Treff.

    Grüße, D.
     
    "You could say that I was too lazy to calculate and so I invented the computer." -- Konrad Zuse

Ähnliche Themen

  1. Zahlenvergleich stimmt nicht
    Von Zero2000 im Forum PHP
    Antworten: 4
    Letzter Beitrag: 12.08.08, 10:24
  2. Zahlenvergleich oder Sortieren?
    Von dreamsahin im Forum Delphi, Kylix, Pascal
    Antworten: 8
    Letzter Beitrag: 27.01.07, 16:58
  3. Delphi Zahlenvergleich
    Von HoLLoWManN im Forum Delphi, Kylix, Pascal
    Antworten: 3
    Letzter Beitrag: 17.11.05, 07:16
  4. Antworten: 1
    Letzter Beitrag: 18.10.04, 16:12