Schleifn (Programmierung)

Aus Wikipedia

Wexln zua: Navigazion, Suach
Der Artikl is im Dialekt Obaboarisch gschrim worn.

Schleifn han wichtige Strukturn in de hähan Programmiersprachn. Damit wern Befehle imma wiada wiadahoid. Wenn ma schaugt, wia oft de Befehle wiadohoid wern ko ma vier Artn untascheidn:

  • Schleifn, de solang laffa, wia a Laufbedingung erfuid is.
  • Schleifn, de laffa, bis a Abbruchbedingung erfuid werd.
  • Schleifn mit na vorher festglegtn Anzoi vo Wiadahoilunga.
  • Endlosschleifn, de Befehle wern solang wiadhoid, bis as Programm vo außn beendet werd.

Des weidan ko ma untascheidn zwischn da

  • kopfgsteiertn Schleifn, do werd scho voa da erstn Ausfiarung priaft, ob de Bedingung erfuid is. Des hoasd, es ko a bassiern, das de Befehle in da Schleifn (da Schleifnkörper) iabahapts ned ausgfiard wern.
  • fuaßgsteierte Schleifn, do werd da Schleifnkörper auf jedn Foi oamoi ausgfiard und erst danach priaft, ob a weidana Schleifndurchlauf gmacht wern soi.

De Abbruch- bzw. Laufbedingung werd nua am Ofang bzw. am End vo da Schleifn iabapriaft. Da Schleifnkörper werd auf jedn Foi komplett ausgfiad, a wenn scho vor am End vo da Schleifn de Abbruchbedingung erfuid, bzw. de Laufbedingung nimma erfuid werd.

Inhoitsvazeichnis

[dro werkln] Wichtige Schleifn in de gängign Programmiersprachn

De Beispui han in Pseudocode gschrim


[dro werkln] Do-While-Schleifn

De Do-While-Schleifn is a fuaßgsteierte Schleifn, de solang laft, wia de ogemne Bedingung erfuid is. Normalaweis werd zwischn de Wearte Do und While dea Befehl oda dea Befehlsblock gschriem und noch des While de Laufedingung.

Oiso hoasds: Dua de Befehle solang ausfiarn wia de Bedingung erfuid werd.

DO Schleifenrumpf WHILE Logischer Ausdruck

[dro werkln] Repeat-Until-Schleifn

De Repeat-Until-Schleifn untascheid se vo da Do-While-Schleifn nua dodurch, daß solang ausgfiard werd, bis de ogemne Bedingung erfuid is. In vui Programmiersprachn gibt's koa Do-While-Schleifn, do ko ma dann statt dessn a Repeat-Until-Schleifn heanemma, ma bracht nua de Bedingung invertieren. Des gehd natirle genauso, wenn ma koa Repeat-Until-Schleifn sondan nua de Do-While-Schleifn zua Vafiagung hod. Wiada stenga de Befehle zum ausfiarn, oiso da Schleifnkörper zwischn de Wearta, de Bedingung noch dem Until.

S' bedeit oiso: Wiadahoi de Befehle solang bis de Bedingung erfuid is.

REPEAT Schleifenrumpf UNTIL Logischer Ausdruck

[dro werkln] While-Do-Schleifn

De While-Do-Schleifn is a kopfgsteierte Schleifn, de Bedingung werd glei nach dem eileitndn While ogem, da Schleifnkörper kimmt dann nach dem Do. Wenn's in na Programmiersprach koane kopfgsteierten Schleifn ned gibt ko ma a a fuaßgsteirte Schleifn mit na Entscheidung (if-then) kombiniern und so vor der Schleifn entscheidn, ob's iabahapts ausgfiard wern soi.

WHILE Logischer Ausdruck  DO Schleifenrumpf.

Vasteh ko ma's ois: Solang de Bedingung guid, dua de Befehle ausfiarn.

[dro werkln] For-Schleifn

Bei da For-Schleifn steht am Ofang scho fest, wia oft de Schleifn wiadahoid werd. Dazua werd glei nach dem For a Zählvariable ogem, dazua a Start- und a Endwert. Bei jedem Durchlauf werd de Zählvariable um oans, oda an angebnen Wert erhöht. De For-Schleifn werd dann solang wiadhoid, bis de Zählvariable an Endwert erreicht hod. S' gibt a Variantn, wo rickwärts zäid werd, z.B. mit dem Wort downto oda mit na negativn Schrittweitn. In Sprachn, wo's koa For-Schleifn ned gibt ko ma's mit eingle jeda andern Schleifnform simuliern, wenn ma se säiba um de Zählvariable kimmert.

Ma kos se merka ois: Fia de Zoin vo ... bis ... dua de Befehle ausfiarn.

FOR Iterator:=Anfangszahl TO Endezahl STEP Schrittweite DO Schleifenrumpf

[dro werkln] Abbruch- und Laufbedingunga

Wenn ma ned absichtlich a Endlosschleifn programmiern mecht muaß da Schleifnkörper an Teil vo da Abbruch- bzw. Laufbedingung vaändern. Nur so ko de Bedingung irawanamoi dafuid wern und de Schleifn zua am End kemma. Bei da for-Schleifn kimmat se de Programmiersprach säiba um de Forderung.

Vo dem Wort Schleifn kimmt a da Satz: Da Rechner hod se aufghängt. Da Programmierer hod am Rechner dann mit am Programmfehler aus na Schleifn an Galgn bundn.

In manche Programmiersprachn gibt's extra Anweisunga fia Endlos-Schleifn. Ansunstn ko ma irgend a Schleifn heanemma und a Bedingung dazuaschreim, de ollawei wahr bzw. foisch is. Oiso true = false fia a Abbruchbedingung oda 1 = 1 fia a Laufbedingung.

A echte Endlosschleifn werd nua vo äisane Einfliass obbrocha, ois am Interrupt, am Reset, am Stromausfall oda am sonstigen Defekt vo dem programmiertn Gerät.

Normalaweis werd da Schleifnkörper imma komplett ausgfiad. Wenn ma des ned mächt, ko ma de Schleifn a vorzeitig valossn. Dodafia gibt's in einige Sprachn an Befehl break, manchmoi is a a goto mit am Sprungziel aussahoib vo da Schleifn erlaubt.

[dro werkln] Schleifn und GoTo

De Schleifn wurdn in de historischn Programmiersprachn eigfiad, um des bis dohi weid vabreitete GoTo zum vameidn. S' GoTo hod Programme ab na gwissn Greß uniabasichtlich gmacht, domit is de Fehlersuach und Erweiterung imma schwieriga worn. Ma ko aba olle Schleifn a mit da Vawendung vo GoTo simuliern. Letztendlich bassiert des a, wei a de modernen Prozessoren koane eigna Befehle via de Schleifn kenna, sondern de Schleifn vom Compiler bzw. Interpreter in Sprungbefehle in da Maschinasprach umgsetzt wern.

Peasönliche Weakzeig