8.5.. Napisati program za ispis trougla kao na slici sa željenim brojem redova:
.

Opis programa: Na slici je prikazan odnos redova i kolona.

Slika 1. Glavna dijagonala i=j

Odnos indeksa i ispis:
  Odnos indeksa Glava dijagonala Ispis
  i = j na glavnoj dijagonali 1 znak
  i < j iznad glavne dijagonale dva znaka
  i > j ispod glavne dijagonale prazno

Listing programa:

PROGRAM p08514012;
USES
  WinCrt;
VAR              { deklarisanje promjenljivih }
  i, j, n : Integer;
  znak : Char;   { znak koji se ispisuje }

BEGIN
  WRITELN('Trougao');  { naslov }
  
  Write('Broj redova: ');    { ulazne promjenljive }
  Readln(n);                 { broj redova }
  Write('Znak ');
  Readln(znak);              { znak }

  FOR i:=1 TO n DO
    BEGIN
      FOR J:=1 TO n DO
        IF i = j THEN       { na glavnoj dijagonali? }
          WRITE(znak)       { na glavnoj dijagonali: 1 znak }
        ELSE
          IF i < j THEN     { iznad glavne dijagonale? }
            WRITE(znak, znak)     { iznad glavne dijagonale: 2 znaka }
          ELSE
            WRITE(' ');     { ispod glavne dijagonale: prazno }
      WRITELN;
    END;
END.

II varijanta
PROGRAM p08514009;
USES
  WinCrt;
VAR              { deklarisanje promjenljivih }
  i, j, n : Integer;
  znak : Char;   { znak koji se ispisuje }

BEGIN
  WRITELN('Trougao');  { naslov }
  
  Write('Broj redova: ');    { ulazne promjenljive }
  Readln(n);                 { broj redova }
  Write('Znak ');
  Readln(znak);              { znak }

  FOR i:=1 TO n DO
    BEGIN
      FOR j:=1 TO n DO
        BEGIN
          IF i = j THEN         { na glavnoj dijagonali? }
            WRITE(znak);        { na glavnoj dijagonali: 1 znak }
          IF i < j THEN         { iznad glavne dijagonale? }
            WRITE(znak, znak);  { iznad glavne dijagonale: 2 znaka }
          IF i > j THEN         { iznad ispod dijagonale? }
            WRITE(' ');         { ispod glavne dijagonale: prazno }
        END;
      WRITELN;
    END;
END.

Ispis na ekranu:

Index