8.5.. Napisati program za ispis pravouglog 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:

I varijanta   ispod glavne dijagonale if (i > j); na glavnoj dijagonali if (i == j); iznad glavne dijagonale  if (i < j) 
// 08514036
#include <iostream>

using namespace std;
int main()
{
    int i, j, n;

    cout << "Broj redova: ";
    cin >> n;                    // dimenzija matrice
	
    for (i = 0; i < n; i++) {           // redovi od i = 0 do n-1; 
        for (j = 0; j < n; j++) {       // kolone od j = 0 do n-1;       
            if (i == j)                 // glavna dijagonala?
                cout << "x ";           // ispis prvog znaka
             if (i > j)                 // ispod glavne dijagonale?
                cout << "    ";         // prazno mjesto 4x
             if (i < j)                 // iznad glavne dijagonale ?
                cout << "I x ";         // ispis ostalih znakova u redu
        }
        cout << "\n";             // novi red, cout << endl;
    }
    return 0;
}


II varijanta  iznad sporedne dijagonale for (j = 0; j < i; ispis na dijagonali slijedeća naredba cout << "x ";  i na kraju ispis I x
// 08514036
#include <iostream>

using namespace std;
int main()
{
    int i, j, n;

    cout << "Broj redova: ";
    cin >> n;                    // dimenzija matrice
	
    for (i = 0; i < n; i++) {           // redovi od i = 0 do n-1; 
        for (j = 0; j < i; j++)         // kolone od j = 0 do i-1;     
            cout << "    ";             // prazno mjesto 4x		
		cout << "x ";                   // glavna dijagonala, i == j; ispis prvog znaka
        for (j = i+1; j < n; j++)       // kolone od j = i+1 do n-1;     
            cout << "I x ";             // iznad glavne dijagonale i > j
        cout << "\n";                   // novi red, cout << endl;
    }
    return 0;
}


III varijanta   ispod glavne dijagonale if (i > j); na glavnoj dijagonali if (i == j); iznad glavne dijagonale  if (i < j);  cin >> znak1;
// 08514036
#include <iostream>

using namespace std;
int main()
{
    int i, j, n;
    char znak1, znak2;
	
    cout << "Do broja: ";
    cin >> n;                    // dimenzija matrice

    cout << "Otkucaj znak1: ";
    cin >> znak1;                // znak1
    cout << "Otkucaj znak2: ";
    cin >> znak2;                // znak2
	
    for (i = 0; i < n; i++) {           // redovi od i = 0 do n-1; 
        for (j = 0; j < n; j++) {       // kolone od j = 0 do n-1;       
            if (i == j)                 // glavna dijagonala?
                cout << znak1 << " ";   // ispis prvog znaka
             if (i > j)                 // ispod glavne dijagonale?
                cout << "    ";         // prazno mjesto 4x
             if (i < j)                 // iznad glavne dijagonale ?
                cout << znak2 << " " << znak1 << " ";  // iznad glavne dijagonale, dva znaka
        }
        cout << "\n";             // novi red, cout << endl;
    }
    return 0;
}


IV varijanta  iznad sporedne dijagonale for (j = 0; j < i; ispis na dijagonali slijedeća naredba cout << "x ";  i na kraju ispis I x;  cin >> znak1;
// 08514036
#include <iostream>

using namespace std;
int main()
{
    int i, j, n;
    char znak1, znak2;
	
    cout << "Do broja: ";
    cin >> n;                    // dimenzija matrice

    cout << "Otkucaj znak1: ";
    cin >> znak1;                // znak1
    cout << "Otkucaj znak2: ";
    cin >> znak2;                // znak2
	
    for (i = 0; i < n; i++) {           // redovi od i = 0 do n-1; 
        for (j = 0; j < i; j++)         // kolone od j = 0 do i-1;     
            cout << "    ";             // prazno mjesto 4x		
		cout << znak1 << " ";           // glavna dijagonala, i == j; ispis prvog znaka
        for (j = i+1; j < n; j++)       // kolone od j = i+1 do n-1;     
            cout << znak2 << " " << znak1 << " ";  // iznad glavne dijagonale i > j, dva znaka
        cout << "\n";                   // novi red, cout << endl;
    }
    return 0;
}

Ispis na ekranu:

Index