Sensei: for-Schleife

Hi!

Hab ne Frage:

Weiß jemand, wie ich es programmieren kann, dass mein Programm eine for-Schleife mit 2 bis 8 Wörtern akzeptiert (Form 00 10 01 00... - das waren 4 Wörter)?

Die Schleife schaut im Moment folgendermaßen aus:
_______________________________________________________________

for (i = 0; i < 8; i++)
   {
       wort[i] = EprogIO.readWord ();

if (wort[i].length () < mini || wort[i].length () > maxi || wort[i].length () != laengesoll)
          {
          spezError = true;
          break;
          }
   }
_______________________________________________________________

Ich muss also immer 8 Wörter eingeben (i < 8), damit die Operation durchgeführt wird.
Ziel ist es, dass 2 bis 8 Wörter eingegeben werden können und bei "Enter-Taste" die Operation ausgeführt wird. Wenn das nicht der Fall ist (also wenn mehr oder weniger eingelesen werden), will ich boolean spezError auf 'true' setzen.

Bitte helft's mir,
ciao, Tobias

  1. Hallo,

    Weiß jemand, wie ich es programmieren kann, dass mein Programm eine for-Schleife mit 2 bis 8 Wörtern akzeptiert (Form 00 10 01 00... - das waren 4 Wörter)?

    Ich verstehe nicht, was du mit "eine for-Schleife mit 2 bis 8 Wörtern meinst".

    Die Schleife schaut im Moment folgendermaßen aus:
    _______________________________________________________________

    for (i = 0; i < 8; i++)
       {
           wort[i] = EprogIO.readWord ();

    if (wort[i].length () < mini || wort[i].length () > maxi || wort[i].length () != laengesoll)
              {
              spezError = true;
              break;
              }
       }
    _______________________________________________________________

    nicht wort[i].length(), sondern wort[i].length;

    Ich muss also immer 8 Wörter eingeben (i < 8), damit die Operation durchgeführt wird.
    Ziel ist es, dass 2 bis 8 Wörter eingegeben werden können und bei "Enter-Taste" die Operation ausgeführt wird. Wenn das nicht der Fall ist (also wenn mehr oder weniger eingelesen werden), will ich boolean spezError auf 'true' setzen.

    Ich galaube, ich habe nach dem fünften Durchlesen dich verstanden.
    Du willst irgendwie eine Reihe Wörter (Strings) einlesen. Und wenn ihre Anzahl nicht zwischen 2 und acht liegt, dann soll die boolean spezError auf true gesetzt werden. Und wenn nicht, dann bleibt er bei false. Das kannst du einfacher haben:

    boolean spezError = (wort.length < mini || wort.length > maxi);

    was du allerdings mit laengesoll meinst, weiss ich aucn nicht. Oder habe ich dich komplett falsch verstanden?

    MfG Dmitri