8.6.. 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

Listing programa:

PROGRAM p08614009;
USES
  WinCrt;
VAR              { deklarisanje promjenljivih }
  i, j, n, k, desno : Integer;
  znak : Char;   { znak koji se ispisuje }
 
BEGIN
  WRITELN('Trougao');  { naslov }
   
  Write('Broj redova: ');    { ulazne promjenljive }
  Readln(n);                 { broj redova }
  Write('Broj znakova pomjeraja: ');    { za koliko je pomjeren }
  Readln(desno);             { broj znakova pomjereno u desno }
  Write('Znak ');
  Readln(znak);              { znak }
 
  i := 1;
  WHILE i <= n DO
    BEGIN
      j := 1;
      WHILE j <= n + desno DO   { broj kolona je povecan za desno }
        BEGIN
          IF i + desno  <= j THEN  { glavna dijagonala je pomjerena za desno ? }
            WRITE(znak)       { znak }
          ELSE
            WRITE(' ');       { prazno }
          j := j + 1;
        END;
      WRITELN;
      i := i + 1;
    END;
END.

II varijanta
PROGRAM p08614009;
USES
  WinCrt;
VAR              { deklarisanje promjenljivih }
  i, j, n, k, desno : Integer;
  znak : Char;   { znak koji se ispisuje }
 
BEGIN
  WRITELN('Trougao');  { naslov }
   
  Write('Broj redova: ');    { ulazne promjenljive }
  Readln(n);                 { broj redova }
  Write('Broj znakova pomjeraja: ');    { za koliko je pomjeren }
  Readln(desno);             { broj znakova pomjereno u desno }
  Write('Znak ');
  Readln(znak);              { znak }
 
  i := 1;
  WHILE i <= n DO
    BEGIN
      k := 1;
      WHILE k <= desno DO  { pomjeranje trougla u desno ucitani broj znakova }
        BEGIN
          WRITE(' ');        { prazno }
          k := k + 1;
        END;
      j := 1;
      WHILE j <= n DO
        BEGIN
          IF i <= j THEN      { iznad i na i glavnoj dijagonali? }
            WRITE(znak)       { znak }
          ELSE
            WRITE(' ');       { prazno }
          j := j + 1;
        END;
      WRITELN;
      i := i + 1;
    END;
END.

Ispis na ekranu:

Index