Vytvorte program, ktorý v danej postupnosti zistí počet a súčet všetkých párnych čísel a počet a súčet všetkých nepárnych čísel. Postupnosť čísel načítavajte sekvenčne a vkladanie ukončite vložením hodnoty nula.
Špecifikácia
VSTUP:
- vstupné premenné: a
- vstupná podmienka: a != 0
VÝSTUP:
- výstupné premenné: z, v, u, c, d, e
- výstupné podmienky:
a/ pre (a%2) != 0 : z = z + a
v = v * a
u = u + 1
b/ pre (a%2) = 0 : c = c + a
d = d * a
e = e + 1
Analýza
V tomto programe je podstatné vyselektovať z pomedzi platných vstupov, ktoré splnia vstupnú podmienku, párne a nepárne čísla. Toto som vyriešil veľmi jednoducho tým, že som vstupnú premennú celočíselne vydelil číslom 2 a zvyšok po tomto delení som porovnával s císlom 0. Keď je tento zvyšok po celočíselnom delení rovný číslu 0, tak je vstupné číslo párne a keď nie je rovný číslu 0, tak je vstupné číslo nepárne.
Ďalej sa už pracovalo pomerne jednoducho. Pre jednotlive druhy čísel som urobil ich súčet, súčin (samoiniciatívne) a celkový počet. Pri súčine som ale musel osetriť stav, keď ako prvé číslo zadáme 0.
Samozrejme som mohol zvoliť aj inú metódu výpočtu, ale táto sa mi javý ako najefektívnejšia. Tá druhá, o ktorej viem využíva na zistenie zvyšku po celočíselnom delení rozdiel deleného čísla deliteľom, až pokiaľ sa nepriblíži k číslu, ktoré je vlastne tento zvyšok. Ten rozpozná tak, ze nie je možné od neho odpočítať deliteľa bez toho, aby výsledné číslo bolo menšie ako je číslo 0. Ak je to 0, tak číslo je párne.
Ako príklad môžem uviesť 7 : 3 à 7 – 3 = 4, 4 – 3 = 1; 1 je zvyšok po celočíselnom delení čísla 7 číslom 3. Akonáhle je ako vstupné číslo 0, cyklus sa ukončí a vypíše aktuálny stav jednotlivých výstupných premenných.
Zaujímavosti o referátoch
Ďaľšie referáty z kategórie