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 == 0); ostale kolone else
// 08514024
#include <iostream>

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

    cout << "Do broja: ";         // dimenzija matrice
    cin >> n;

    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 <= n - 1)         // iznad sporedne dijagonale?
                if (j == 0)             // prva kolona?
                    cout << "x ";       // prva kolona
                else
                    cout << "I x ";     // ostale kolone
        cout << "\n";                   // novi red, cout << endl;
    }
    return 0;
}


II varijanta  izbor mjesta ispis for (j = 0; j <= n - i - 1; j++) prva kolona if (j == 1); ostale kolone else
// 08514024
#include <iostream>

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

    cout << "Do broja: ";          // dimenzija matrice
    cin >> n;

    for (i = 0; i < n; i++) {       // redovi od i = 0 do n-1; 
        for (j = 0; j <= n - i - 1; j++) // kolone od j = 0 do j <= n - i - 1;   
            if (j == 0)             // prva kolona?
                cout << "x ";       // prva kolona
            else
                cout << "I x ";     // ostale kolone
        cout << "\n";               // novi red, cout << endl;
    }
    return 0;
}


III varijanta  prva kolona cout << "x "; ostale kolone od j = 1 do j <= n - i - 1
// 08514024
#include <iostream>

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

    cout << "Do broja: ";          // dimenzija matrice
    cin >> n;

    for (i = 0; i < n; i++) {       // redovi od i = 0 do n-1; 
        cout << "x ";               // prva kolona  
        for (j = 1; j <= n - i - 1; j++) // kolone od j = 1 do j <= n - i - 1;   
            cout << "I x ";         // ostale kolone
        cout << "\n";               // novi red, cout << endl;
    }
    return 0;
}


IV varijanta  ispis prve kolona prije ulaska u j-ot for petlju, a u j-ot for petlji jedan ispis manje
// 08514024
#include <iostream>

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

    cout << "Do broja: ";         // dimenzija matrice
    cin >> n;

    for (i = 0; i < n; i++) {            // redovi od i = 0 do n-1; 
        cout << "x ";                    // prva kolona
        for (j = 0; j <= n - i - 2; j++) // kolone od j = 0 do j <= n - i - 2;   
            cout << "I x ";              // ostale kolone
        cout << "\n";                    // novi red, cout << endl;
    }
    return 0;
}


V varijanta  prva kolona cout << "x "; ostale kolone od j = 1 do j <= n - i - 1
// 08514024
#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; 
        cout << znak1 << " ";   // ispis prvog znaka
        for (j = 1; j <= n - i - 1; j++) // ostale kolone od j = 1 do j <= n - i - 1
            cout << znak2 << " " << znak1 << " ";  // ostale kolone
        cout << "\n";           // novi red, cout << endl;
    }
    return 0;
}

Ispis na ekranu:

Index