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

Listing programa:

I varijanta   prva kolona if (j == 1); ostale kolone else
// 08514034
#include <iostream>

using namespace std;
int main()
{
    int i, j, n;
     
    cout << "Do broja: ";
    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 < n - 1)          // iznad sporedne dijagonale?
                cout << "    ";         // iznad sporedne dijagonale prazno mjesto 4x
            if (i + j == n - 1)         // sporedna dijagonala?
                cout << "x ";           // ispis prvog znaka
            if (i + j > n - 1)          // ispod sporedne dijagonale?
                cout << "3 x ";         // ispod sporedne dijagonale,  3 i x
        }
        cout << "\n";                   // novi red, cout << endl;
    }
    return 0;
}


II varijanta  iznad sporedne dijagonale for (j = 0; j < n - i - 1; ispis na dijagonali slijedeća naredba cout << "x ";  i na kraju ispis I x
// 08514034
#include <iostream>
using namespace std;

int main ()
{
    int i, j, n, k;
 
    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++) // do sporedne dijagonala, iznad sporedene dijagonale
            cout << "    ";             // iznad sporedne dijagonale
        cout << "x ";                   // sporedna dijagonala, znak i jedno prazno mjesto
        for (k = 0; k < i; k++)         // ispod sporedne dijagonale
            cout << "3 x ";             // 3 i x
        cout << "\n";                   // novi red, cout << endl;
    }
    return 0;
}


III varijanta   prva kolona if (j == 1); ostale kolone else
// 08514034
#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 < n - 1)          // iznad sporedne dijagonale?
                cout << "    ";         // iznad sporedne dijagonale prazno mjesto 4x
            if (i + j == n - 1)         // sporedna dijagonala?
                cout << znak1 << " ";   // ispis prvog znaka i prazno mjesto, sporedna dijagonala
            if (i + j > n - 1)          // ispod sporedne dijagonale?
                cout << znak2 << " " << znak1 << " ";  // ispod sporedne dijagonale
        }
        cout << "\n";                   // novi red, cout << endl;
    }
    return 0;
}


IV varijanta  iznad sporedne dijagonale for (j = 0; j < n - i - 1; ispis na dijagonali slijedeća naredba cout << "x ";  i na kraju ispis I x
// 08514034
#include <iostream>
using namespace std;

int main ()
{
    int i, j, n, k;
    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 - i - 1; j++) // do sporedne dijagonala, iznad sporedene dijagonale
            cout << "    ";             // iznad sporedne dijagonale
        cout << znak1 << " ";   // ispis prvog znaka i prazno mjesto, sporedna dijagonala
        for (k = 0; k < i; k++)         // ispod sporedne dijagonale
             cout << znak2 << " " << znak1 << " ";  // ispod sporedne dijagonale
        cout << "\n";                   // novi red, cout << endl;
    }
    return 0;
}

Ispis na ekranu:

Index