For Next Kinderkrankheiten?

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Kurzer
Beiträge: 1617
Registriert: 25.04.2006 17:29
Wohnort: Nähe Hamburg

Beitrag von Kurzer »

Hallo Rainer,
ullmann hat geschrieben:Es gibt aber eine ganz logische Erklärung: Die Schleife wird verlassen, wenn der Zähler größer (bei positivem Step) bzw. kleiner (bei negativem Step) als der Endwert ist. Deshalb ist der Zähler nach dem Verlassen einer For-Next-Schleife immer um einen Step weiter als der Endwert.

Im obigen Beispiel kann aber Count nicht kleiner als 0 werden, im Bereich Char ergibt 0-1 gleich 255 und das ist größer als 0 und deshalb wird die Schleife nie verlassen.
Gut zu wissen. Danke für die Erklärung.

Allerdings hätte man die Endbedingung der Schleife (PB-intern) natürlich auch mit "ist gleich Endwert" statt "Wert+1 und dann ist größer Endwert" realisieren können.

Aber macht ja nix, ich weiß jetzt, daß es so ist und werde aufgrund Deeem2031s Denkanstoß eh auf Werte kleiner als Long verzichten. :)

Ich habe echt lange nix mehr gemacht... zuletzt auf dem Amiga vor etlichen Jahren. Aber richtig, es hat sich in der Zeit natürlich was getan bei den Prozessoren.

Gruß Markus
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

> Allerdings hätte man die Endbedingung der Schleife (PB-intern) natürlich auch mit "ist gleich Endwert" statt "Wert+1 und dann ist größer Endwert" realisieren können.

ähm, nein, hätte man nicht:

Code: Alles auswählen

For n=0 to 127 Step 11
...und das hatte ich vergessen und war mein denkfehler, sonst wär ich schon gestern auf den trichter gekommen...


> Ich habe echt lange nix mehr gemacht... zuletzt auf dem Amiga vor etlichen Jahren.

kann ich nachvollziehen. ich hab zwar zwischendurch mit MS-produkten gearbeitet, und besonders QuickC3.5 auf DOS hat mit die interne arbeitsweise des PC nähergebracht, aber angefangen hab ich aufm C64, auch 8bit ASM, und manchmal denk ich noch in alten philosophien... ;)
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
Kurzer
Beiträge: 1617
Registriert: 25.04.2006 17:29
Wohnort: Nähe Hamburg

Beitrag von Kurzer »

Kaeru Gaman hat geschrieben:ähm, nein, hätte man nicht:

Code: Alles auswählen

For n=0 to 127 Step 11
...und das hatte ich vergessen und war mein denkfehler, sonst wär ich schon gestern auf den trichter gekommen...
Stimmt, wo Du recht hast, hast Du Recht. :allright:
Kaeru Gaman hat geschrieben:kann ich nachvollziehen. ich hab zwar zwischendurch mit MS-produkten gearbeitet, und besonders QuickC3.5 auf DOS hat mit die interne arbeitsweise des PC nähergebracht, aber angefangen hab ich aufm C64, auch 8bit ASM, und manchmal denk ich noch in alten philosophien... ;)
ACK, me to.
Da gings allerdings mit nem VIC 20 los und 2KB RAM oder was der hatte. :)
Man was is das lange her.

Gruß Markus
Antworten