Algorithmen mit Wiederholungen

Wiederholungsstruktur mit Zähler

Einführungsbeispiel

Es sollen die natürlichen Quadratzahlen von einem bestimmten Anfangswert a bis zu einem Endwert e bestimmt und in einer Wertetabelle ausgegeben werden.

Es muss eine Zählvariable x eingeführt werden. Diese wird fortlaufend um 1 erhöht bis es den Endwert e erreicht. Zu jedem Wert der Zählvariablen wird das Quadrat bestimmt und ausgegeben. Die Zählvariable sowie der Anfangswert und Endwert müssen von Typ integer sein.

Struktogramm

Syntax

FOR <Zählvariablen> := <Anfangswert> TO <Endwert> DO

    BEGIN <Anweisungen> END;

program Quadratzahlen;
uses crt;

var a, e, x, y : integer;
    i : integer; {+++Laufvariable für gotoxy+++}

begin
    clrscr;
    gotoxy(20,3);textcolor(red);write('***Quadratzahlen***');
    textcolor(white);
    gotoxy(15,6);Write('Anfangswert = '); ReadLn(a);
    gotoxy(15,8);Write('Endwert     = '); ReadLn(e);
    gotoxy(20,10); write('Zahl');gotoxy(26,10);write('Quadratzahl');
    textcolor(green); i:=0;
    

    for x := a to e do
    begin

        inc(i);     {+++Erhöhung um 1+++}
        y := x * x;
        gotoxy(21,12+i);write(x);
        gotoxy(28,12+i);write(y);

    end;
    readln;
end.

Muster

program muster_1;
USES crt;
VAR
  n,i,j: Integer;
BEGIN
     clrscr;
     window(5,5,75,22);
     textbackground(white);
     clrscr;
     for i:=1 to 80 do
         begin
           for j:=1 to 24 do
           gotoxy(j,i);textbackground(white); write('');
         end;
     gotoxy(1,1);textcolor(black);
     writeln;writeln;
     writeln('               Tannenbaum');writeln;
     Write  ('               Wie viele Zeilen ?  ');readln(n);
     writeln;
     textcolor(green);
     FOR i:=1 TO n DO
         BEGIN
              FOR j:=1 TO 40-n-i DO Write(' ');
              FOR j:=1 TO 2*i-1 DO Write('*');
              Writeln
         END;
     FOR i:=1 TO n DIV 3 DO
         BEGIN
              FOR j:=1 TO  40-n-2 DO Write(' ');
              FOR j:=1 TO 3 DO begin
                                textcolor(brown);Write('*');
                               end;
              Writeln
         END;
     Readln
END.

 


Wiederholungsstruktur mit Anfangsbedingung