Tabuľka
Pracujeme s tabuľkou, ktorá je dvojrozmerná. To znamená, že má riadky a stĺpce. Budeme nato myslieť při návrhu programu na vykreslenie tabuľky. Tabuľky, ktoré vytvoríme budú statické. Statické tabuľky sú také, v ktorých po vykreslení už nemôžme meniť hodnoty. Musíme opäť vykresliť tabuľku, ak chceme novú. Na dynamické tabuľky alebo matice potrebujeme dvojrozmerné polia. Ale o tom pohovoríme inokedy.
1. príklad: Program na vykreslenie tabuľky
#include <iostream> // hlavičkový súbor
using namespace std; // priestor mien
int main() // hlavná funkcia main
{
int velkost;
int riadok = 1;
int vysledok = 0;
cout << "Zadajte, kolko ma mat riadkov a zaroven stlpcov?\n"; // vstup od uzivatela
cin >> velkost;
if (velkost <= 0)
{
cout << "Rozmer tabulky nemoze byt nulovy alebo zaporny!";
return 0;
}
while (riadok <= velkost) // prvy cyklus
{
int stlpec = 1;
while (stlpec <= velkost) // druhy cyklus
{
vysledok = riadok + stlpec - 1; // scitanie riadka a stlpca
cout << vysledok << " ";
stlpec++; // prva inkrementacia
}
riadok++; // druha inkrementacia
cout << "\n";
}
return 0; //koniec programu
}
Výsledok programu:
Zadajte, kolko ma mat riadkov a zaroven stlpcov?
11 1 2 3 4 5 6 7 8 9 10 11 2 3 4 5 6 7 8 9 10 11 12 3 4 5 6 7 8 9 10 11 12 13 4 5 6 7 8 9 10 11 12 13 14 5 6 7 8 9 10 11 12 13 14 15 6 7 8 9 10 11 12 13 14 15 16 7 8 9 10 11 12 13 14 15 16 17 8 9 10 11 12 13 14 15 16 17 18 9 10 11 12 13 14 15 16 17 18 19 10 11 12 13 14 15 16 17 18 19 20 11 12 13 14 15 16 17 18 19 20 21
Ok, skúsme s pomocou funkcie setw tabuľku spriehľadniť.
2. príklad: Modifikácia prvého príkladu
#include <iostream> // hlavičkový súbor
#include <iomanip>
using namespace std; // priestor mien
int main() // hlavná funkcia main
{
int velkost;
int riadok = 1;
int vysledok = 0;
cout << "Zadajte, kolko ma mat riadkov a zaroven stlpcov?\n"; // vstup od uzivatela
cin >> velkost;
if (velkost <= 0)
{
cout << "Rozmer tabulky nemoze byt nulovy alebo zaporny!";
return 0;
}
while (riadok <= velkost) // prvy cyklus
{
int stlpec = 1;
while (stlpec <= velkost) // druhy cyklus
{
vysledok = riadok + stlpec - 1; // scitanie riadka a stlpca
cout << setw(5) << vysledok;
stlpec++; // prva inkrementacia
}
riadok++; // druha inkrementacia
cout << "\n";
}
return 0; // koniec programu
}
Rozbor programu:
Po spustení programu sa vám vytvorí pekne uhľadná tabuľka. Funkciu setw sme si už vysvetlili v minulom diele. Ostatne by malo byť všetko jasné.
Program na vykreslenie stromčeka
Stromček bude tvorený hviezdičkami. Program nebude nijak zložitý. Poďme sa naňho pozrieť.
3. príklad: Program na vykreslenie stromu
#include <iostream>
using namespace std;
int main()
{
int vyska;
cout << "Zadaj vysku stromu!" << "\n";
cin >> vyska; // zadanie vysky stromceka
int riadok = 0;
while (riadok < vyska)
{
int pocitadlo = 0;
while (pocitadlo < vyska - riadok)
{
cout << " "; // prazdne miesta
pocitadlo++;
}
int pocitadlo2 = 0;
while (pocitadlo2 < 2 * riadok + 1)
{
cout << "*"; // hviezdicky
pocitadlo2++;
}
cout << "\n";
riadok++;
}
return 0;
}
Výsledok programu:
Zadaj vysku stromu!
11
*
***
*****
*******
*********
***********
*************
***************
*****************
*******************
*********************






