Zadanie 3

Úloha 1
Žiaci pristupujú k zapisovateľovi s počítačom. Povedia svoje meno, hmotnosť (v kg, celé číslo) a výšku (v cm, celé číslo).

Vytvorte program na uloženie údajov do počítača, ktorý:
 * vypíše, koľko žiakov bolo spracovaných, aká je ich priemerná hmotnosť a priemerná výška
 * vypíše mená najnižšieho a najvyššieho žiaka a žiaka s najmenšou a najväčšou hmotnosťou
 * vypíše žiakov, ktorí majú nadváhu. Žiak má nadváhu, ak jeho hmotnosť je väčšia ako jeho výška zmenšená o stovky centimetrov. Napr. žiak s výškou 178 cm má nadváhu, ak jeho hmotnosť je väčšia ako 78 kg

Algoritmus

 * vytvorenie štruktúry, record, alebo viac polí na ukladanie údajov o žiakoch
 * načítanie počtu žiakov
 * načítanie 1. žiaka, nastavenie min a max výšky a váhy na jeho výšku a váhu
 * načítanie zvyšku žiakov
 * spočítanie hmotností a výšok a vypočítanie priemerov
 * nájdenie žiakov s nadváhov
 * výpis

Pascal
{ ... }

C++
using namespace std; typedef unsigned int uint; struct Ziak { 	string meno; uint vyska, vaha; Ziak : Ziak("", 0, 0) {} Ziak(string m, uint vy, uint va) : meno(m), vyska(vy), vaha(va) {} }; void Nacitaj(Ziak& ziak) { 	cout << "Meno: "; cin.ignore; getline(cin, ziak.meno); cout << "Vyska: "; cin >> ziak.vyska; cout << "Vaha: "; cin >> ziak.vaha; } int main { 	// pocet ziakov uint pocet; cout << "Zadaj pocet ziakov: "; cin >> pocet; cout << "Zadavaj jednotlivych ziakov:\n"; // ziaci vector ziaci; ziaci.resize(pocet); // min a max uint minVaha = 0; uint minVyska = 0; uint maxVaha = 0; uint maxVyska = 0; // nacitanie for (uint i = 0; i < pocet; ++i) { 		Ziak& ziak = ziaci[i]; Nacitaj(ziak); // kontrola if (ziak.vyska < ziaci[minVyska].vyska) minVyska = i; 		if (ziak.vyska > ziaci[maxVyska].vyska) maxVyska = i; 		if (ziak.vaha < ziaci[minVaha].vyska) minVaha = i; 		if (ziak.vaha > ziaci[maxVaha].vyska) maxVaha = i; 	} // vypis cout << "Spracovanych " << pocet << " ziakov." << "\nNajmensi: " << ziaci[minVyska].vyska << "\nNajvacsi: " << ziaci[maxVyska].vyska << "\nNajlahsi: " << ziaci[minVaha].vaha << "\nNajtazsi: " << ziaci[maxVaha].vaha << endl; // najdenie priemerov uint pVyska = 0; uint pVaha = 0; for (Ziak ziak : ziaci) { 		pVyska += ziak.vyska; pVaha += ziak.vaha; } 	pVyska /= pocet; pVaha /= pocet; // vypis cout << "Priemerna vyska: " << pVyska << "\nPriemerna vaha: " << pVaha << endl; // najdenie ziakov s nadvahov cout << "Ziaci s nadvahov:\n"; for (Ziak ziak : ziaci) { 		if (ziak.vaha + 100 > ziak.vyska) cout << ziak.meno << endl; } 	cin.ignore; cin.get; return 0; }
 * 1) include
 * 2) include
 * 3) include

Úloha 2
Vyplňte tabuľku. - stiahnuť

Vysvetlite princíp digitalizácie obrazu, grafické rozlíšenie, pixel, farebná hĺbka. Popíšte  spôsob zobrazovania v rasterovej a vektorovej grafike.
 * Digitalizácia obrazu - obraz sa rozdelí na mriežku bodov (pixelov), tie sa očíslujú (podľa farieb) a prevedú do binárnej sústavy
 * Rozlíšenie - počet bodov na obrázok, napr. 1920x1080
 * Pixel - jeden bod obrázku, má uložené 3 farby - RGB
 * Farebná hĺbka - počet bitov na jeden pixel, určuje, koľko farieb môže mať jeden pixel
 * Rastrová grafika - používajú sa pixely, ťažko sa dodatočne upravujú, zaberajú viac miesta
 * Vektorová grafika - používajú sa geometrické tvary, dajú sa dodatočne upraviť, menej miesta, nie všetko sa dá nakresliť pomocou geometrických tvarov