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. Sporedna dijagonala i+j = n+1

Listing programa:

I varijanta   prva kolona if (j == 1); ostale kolone else
# 08514024
print("Trougao")
n = int(input("Broj redova: "))         # dimenzije matrice n x n
for i in range(1, n+1):                 # redovi od i = 1 do n
    for j in range(1, n+1):             # kolone od j = 1 do n
        if (i+j <= n+1):                # iznad sporedne dijagonale? 
            if (j == 1):                # prva kolona?
                print("x", end='')      # prva kolona
            else:                       # ostali
                print(" I x", end='')   # ostale kolone
    print()                             # novi red	


II varijanta  izbor mjesta ispis for (j = 0; j <= n - i - 1; j++) prva kolona if (j == 1); ostale kolone else
# 08514024
print("Trougao")
n = int(input("Broj redova: "))          # dimenzije matrice n x n
for i in range(1, n+1):                  # redovi od i = 1 do n
    for j in range(1, n - i + 2):        # kolone od j = 1 do j < n - i + 2
        if (j == 1):                     # prva kolona?
            print("x", end='')           # prva kolona
        else:                            # ostali
            print(" I x", end='')        # ostale kolone
    print()                              # novi red	


III varijanta  prva kolona print("x", end=''); ostale kolone od j = 2 do j <= n - i - 1
# 08514024
print("Trougao")
n = int(input("Broj redova: "))          # dimenzije matrice n x n
for i in range(1, n+1):                  # redovi od i = 1 do n
    print("x", end='')                   # prva kolona
    for j in range(2, n - i + 2):        # kolone od j = 1 do j < n - i + 2
        print(" I x", end='')            # ostale kolone
    print()                              # novi red	
	

IV varijanta   prva kolona if (j == 1); ostale kolone else; znak input('Otkucaj znak: ')[0]
# 08514024
print("Trougao")
n = int(input("Do broja: "))             # dimenzije matrice n x n
znak1 = input('Otkucaj znak1: ')[0]      # znak1
znak2 = input('Otkucaj znak2: ')[0]      # znak2 
for i in range(1, n+1):                  # redovi od i = 1 do n
    for j in range(1, n - i + 2):        # kolone od j = 1 do j < n - i + 2
        if (j == 1):                     # prva kolona?
            print(f'{znak1}', '',  end='') # prva kolona 
        else:                            # ostali
            print(f'{znak2} {znak1} ', end='')  # ostale kolone, ispis znak2 i znak1
    print()                              # novi red	


V varijanta ispis prije j-ot for petlje - prva kolona print("x", end=''); ostale kolone od j = 2 do j <= n - i - 1;  znak=input('Otkucaj znak: ')[0]
# 08514024
print("Trougao")
n = int(input("Broj redova: "))          # dimenzije matrice n x n
znak1 = input('Otkucaj znak1: ')[0]      # znak1
znak2 = input('Otkucaj znak2: ')[0]      # znak2 
for i in range(1, n+1):                  # redovi od i = 1 do n
    print(f'{znak1}', '',  end='')       # prva kolona 
    for j in range(2, n - i + 2):        # kolone od j = 1 do j < n - i + 2
        print(f'{znak2} {znak1} ', end='')  # ostale kolone, ispis znak2 i znak1
    print()                              # novi red	

Ispis na ekranu:

Index