|
RIEŠENÉ
ZADANIA
Ku grafickým zadaniam pod Windows treba stiahnuť egavga.bgi a vopchať ho potom do
roztarovaného adresára. V paklíčkoch pre download sú zdrojáky (pre Linux
aj Windows), datové súbory a skompilované exe súbory (Win98) a ELFovia
(RH7.3) dľa jednotlivých zadaní.
-
Program pre výpočet obsahu pozemku v tvare obdĺžnika zo stranami a, b.
-
Program na výpočet počtu zápasov v jednokolovom turnaji, v ktorom sa
zúčastní n družstiev a hrá sa systémom každý s každým.
-
Program pre výpočet povrchu a objemu kvádra.
-
Program na výpočet pytagorovskej trojice čísel pre dané prirodzené čísla
u, v (u>v).
-
Program, ktorý vypočíta a vypíše, akú dráhu prejde auto za daný čas t,
keď ide rýchlosťou v. Program tiež vypočíta a vypíše spotrebu pohonných
hmôt na prejdenie tejto vzdialenosti.
-
Program na výpočet výsledného odporu dvoch rezistorov zapojených sériovo
a paralelne.
-
Rýchlik ide po priamej trati rýchlosťou v. Program vypočíta, v akej
vzdialenosti od stanice musí začať brzdiť a ako dlho bude trvať
zastavenie vlaku, keď s ohľadom na cestujúcich musí byť veľkosť opačného
zrýchlenia 0,1 [m/s2]. Predpokladáme, že rušňovodič má tachometer
ciachovaný v jednotke [km/h] a v tejto jednotke aj zadá fyzikálnu
veličinu rýchlosť. Nakoľko zrýchlenie je udané v jednotke m/s2, je
vhodné upraviť zadanú rýchlosť na základnú jednotku [m/s]. Výstupné
veličiny budú potom tiež v základných jednotkách SI.
-
Program, ktorý pre dané prirodzené čísla a, b (a>b) zistí, či b je
deliteľom a. Ak áno, t.j. a je deliteľné číslom b, vypíše aj druhého
deliteľa.
-
Program načíta zo vstupu 3 celé čísla, do premennej min priradí
najmenšiu z načítaných hodnôt a vypíše ju.
-
Program po zadaní 3 čísel zistí, či môžu byť stranami trojuholníka a ak
môžu, tak zistí, či sú stranami rovnoramenného trojuholníka, pravouhlého
trojuholníka a výsledok vypíše.
-
Program, pomocou ktorého zistíte priemernú výšku žiakov v triede.
-
Program na výpočet n-tej mocniny čísla x pomocou súčinu, kde reálne
číslo x a prirodzené číslo n zadávame z klávesnice.
-
Program na výpočet súčinu prvých n prirodzených čísel (faktoriál), kde n
zadávame z klávesnice.
-
Program na výpočet súčinu prvých n párnych čísel.
-
Program na výpočet súčinu prirodzených čísel A, B pomocou sčitovania.
-
Program na výpočet priemeru známok jedného žiaka.
-
Program pre kontrolu preťaženia výťahu. Do výťahu nakladáme balíky
rôznej hmotnosti. Ak celková hmotnosť prekročí nosnosť 400 kg, vypíše sa
upozornenie: Preťaženie výťahu, vyberte posledný balík.
-
Program, ktorým rozdelíte štvorciferné číslo na jeho cifry, ktoré
postupne uloží do premenných A, B, C, D.
-
Program, ktorý zistí, či zadané číslo N>1 je prvočíslo.
-
Program, ktorý prepočíta čas zadaný v sekundách na hodiny, minúty a
sekundy.
-
Program, ktorý bude načítavať zadané nenulové čísla a bude ich sčítavať.
Ak sa zadá 0, alebo súčet presiahne 1000, vypíše sa súčet dovtedy
zadaných čísel a program skončí.
-
Program zistí, z ktorej skupiny je vo vete najviac znakov. Veta je v
súbore. Skupina A nech sú znaky ('qwertyuiop'), skupina B ('asdfghjkl'),
skupina C ('zxcvbnm'), skupina D ('1234567890').
-
Program, ktorý napíše zrkadlový obraz zápisu zadaného prirodzeného čísla.
-
Program pre určenie najvyššej dennej teploty v danom mesiaci, zistenie
dátumu s najvyššou teplotou a zistenie dňa, kedy sa denná teplota
najmenej odlišovala od priemernej teploty. Údaje sa načítajú zo súboru.
-
Program, ktorý prenesie 10-zložkové pole A do 10-zložkového poľa B v
rovnakom a potom v opačnom poradí. Polia sú uložené v súboroch.
-
Program, ktorý prenesie 10-zložkové pole A do 20-zložkového poľa B, tak,
aby sa pole A nachádzalo v poli B 2x, pričom zložky poľa A budú v poli
B 2x za sebou v rovnakom poradí (celé pole A sa opakuje 2x) a potom aby
každá zložka poľa A sa v poli B nachádzalo 2x tesne za sebou.
-
Na vstupe je postupnosť celých kladných čísel zakončená 0. Počet čísel
nie je väčší ako 250. Program na prečítanie tejto postupnosti a
zobrazenie prvkov v zmenenom poradí, v akom bola na vstupe: posledné
číslo ako prvé, prvé ako posledné, ostatné ponechať v nezmenenom poradí.
-
Program, ktorý zistí, z koľkých rôznych písmen sa skladá meno.
-
Uložte do poľa Trieda zoznam žiakov triedy a zistite, či sa v zozname
vyskytuje určité meno, ktoré bolo prečítané zo vstupu.
-
Program na modelovanie hodu kockou. Kockou treba hádzať dovtedy, kým
nepadne číslo 6. Program vypíše, na koľký pokus bolo číslo 6 hodené.
-
Program na vykreslenie 3 sústredných kružníc s polomermi r, 2r, 3r,
vstupným parametrom je r.
-
Program, ktorý načíta reálne číslo x a vypíše sin. a cos. čísla x, druhú
mocninu x, odmocninu x, absolútnu hodnotu, zaokrúhlené x a pre celú časť
čísla x zistí, či je párna. (SIN, COS, SQR, SQRT, ABS, ROUND, TRUNC+ODD
)
-
Úloha 32 doplnená funkciou pre prepočet stupňov na radiány
(rad=x*3.14159/180).
-
Program, ktorý vytvorí 20 príkladov na sčítanie celých čísel do 100,
reálnych čísel do 10.
-
Program pre výpočet najväčšieho spoločného deliteľa viacerých čísel
(max. 20). Úlohu riešte pomocou funkcie, v ktorej do premennej
medzivýsledok ukladá NSD 2 čísel.
-
Program s funkciami MIN(x, y), MAX(x, y), ktorých výsledkom bude menšie
(väčšie) z dvoch reálnych čísel x a y.
-
Program, ktorý načíta N celých čísel (N<=100) a vypíše ich vzostupne
utriedené.
-
Program, ktorý pre premennú P : array [1..30] of real vypočíta súčet
zložiek poľa, nájde index zložky s najväčšou hodnotou a určí počet
zložiek väčších ako globálna premenná R.
-
Program pre výpočet Fibonacciho čísla Fn (F1=F2=1, Fn=Fn-1+Fn-2, pre
n=3,4,5...)
-
Program, ktorý vykreslí úsečku s krajnými bodmi [50,10] a [130,10] a nad
ňu dokreslí čiary tak, aby obrázok vytvoril štvorec, pravouhlý
trojuholník s pravým uhlom v bode [50,10] a výškou 75 (zobrazených
bodov), rovnoramenný trojuholník s výškou 45 (zobrazených bodov) pričom
je to výška na vykreslenú stranu trojuholníka.
-
Program na vykreslenie grafu funkcie y = a*(sin (bx)+c), kde a, b budú
parametre podprogramu.
-
Program na vytvorenie grafu funkcie y=x2 pre x z intervalu (-10,10).
-
Chceme cestovať z mesta X do obce Z cez mesto Y. Medzi mestami X a Y
premáva vlak 11x denne, mesto Y a obec Z sú spojené autobusovou linkou,
ktorá premáva 14x denne. Vytvorte program, pomocou ktorého vyhľadáme
najvhodnejší spoj pre požadovaný čas odchodu.
-
Úlohu 43 je modifikácia pre voľbu vyhľadania predchádzajúceho a
nasledujúceho spoja.
-
Program, ktorý na obrazovku vykreslí na obrazovku olympijské kruhy.
-
Program, na vyhodnotenie pretekov: prezentácia pretekárov, zobraziť
štartovaciu listinu (utriedenie podľa abecedy), vložiť pre pretekára
dosiahnutý počet bodov, zobraziť výsledky pretekov (utriedenie podľa
získaných bodov) a voliť ľubovolnú z uvedených funkcií systému dovtedy,
kým nedáme príkaz na skončenie programu.
-
Program na výpočet pytagorovských trojíc, ktorý bude mať ako výstup
pravouhlý trojuholník so štvorcami na všetkých troch stranách.
-
Program na automat na kávu, kde po výbere nápoja automat vypíše cenu a
po stlačení príslušnej hodnoty v prípade potreby vysvieti výdavok.
Nasledujúce zadania už neobsahujú ELFov ale to nevadí. Až uznám za
vhodné, budú fungovať downloady zip paklíkov.
-
Zistite koľko samohlások je v textovom súbore.
(Rada: Vytvorte si vlastnú funkciu, ktorá zisti, koľko je samohlások v
riadku.) Počet samohlások vypíš na obrazovku.
-
Vytvorte maticu A, naplňte ju náhodnými číslami.
Vytvorte transparentnú maticu k matici A .(Vymeňte riadky a stĺpce
matice.)
-
Je dané prirodzené číslo n, reálne číslo x. Je
potrebné vypočítať: sin(x)+sin2(x)+...+sinn(x) a
sin(x)+sin(x2)+...+sin(xn) Vstup: n- prirodzené číslo, x- reálne číslo,
Výstup: vypočítaná hodnota podľa uvedeného vzťahu.
-
Vytvorte jednoduchý telefónny zoznam. Maximálny
počet záznamov v telef. zozname - 20 Jeden záznam telef. zoznamu nech
obsahuje nasledujúce položky: meno, priezvisko, telef. číslo a záznam
ADRESA. Záznam ADRESA nech obsahuje položky: ulica, smerové číslo a
mesto. Telefónny zoznam nech umožňuje nasledovne operácie: odobrať
záznam, pridať záznam (umožniť vyplniť všetky položky záznamu),vypísať
zvolený záznam (vypíše všetky položky záznamu) Každá z operácií v telef.
zozname nech je spravená ako funkcia, alebo procedúra.
-
Pomocou jednosmerného lineárneho zoznamu vytvorte
program, ktorý do zoznamu načítava čísla zadávané z klávesnice, na
výstupe vypíše počet týchto čísel.
-
Zo zoznamu vypustí párne čísla a nový zoznam vypíše.
-
Vytvorte program, ktorý v textovom súbore nájde
slovo s najväčšou dĺžkou a vypíše ho na obrazovku.
-
Je dané prirodzené číslo n, n>=2 a celé čísla
a1...an. Vytvorte postupnosť a1,a2...an, an,an-1 ...a1. Úlohu riešte
pomocou obojsmerného lineárneho zoznamu.
-
Z daného textu vypíšte tie symboly (písmená), ktoré
sa v ňom vyskytujú práve raz (V tom poradí, ako sa v texte vyskytujú)
Vstup: veta; Výstup: symboly v požadovanom poradí.
-
Je daný súbor f, ktorý obsahuje celé čísla
(minimálne 20, čísla sa opakujú). Zo súboru f urobte súbor g, ktorý
neobsahuje opakované výskyty prvkov. V súbore g sa každý prvok vyskytuje
práve raz.
-
Je dané prirodzené číslo n>=2 a celé čísla a1
...an. Určte, či medzi číslami a1 ...an existujú dve rovnaké čísla
a vypíšte vhodnú správu. Úlohu riešte pomocou lineárneho zoznamu.
-
Je dané prirodzené číslo n>=2 a reálne čísla a1
...an. Vytvorte postupnosť a1 ...an pre usporiadaním prvkov tak, aby na
začiatku boli záporné čísla a za nimi nezáporné. Úlohu riešte pomocou
lineárneho zoznamu.
-
Vytvorte zásobník pomocou poľa
-
Vytvorte zásobník pomocou lineárneho zoznamu
-
Vytvorte lineárny zoznam, a zistite, či sa v ňom
nachádza daný prvok.(zadávame z klávesnice)
-
Vytvorte frontu pomocou lineárneho zoznamu
-
Utrieďte čísla 403, 067, 416, 015, 750, 150, 690,
307, 457, 632 bublinkovým triedením
-
Utrieďte čísla 403, 067, 416, 015, 750, 150, 690,
307, 457, 632 výmenou
-
Utrieďte čísla 403, 067, 416, 015, 750, 150, 690,
307, 457, 632 výberom
-
Vo vstupnom súbore je na prvom riadku krátky ( max.
5 znakov) reťazec. Za ním nasledujú ďalšie riadky, každý s jedným
reťazcom. Nájdite, v ktorom riadku sa vyskytuje reťazec z prvého riadku.
-
Usporiadajte pole metódou Quicksort
-
Usporiadajte pole metódou Shakesort
-
V textovom súbore je zoznam slov (10-20). Slova zo
súboru načítajte do lineárneho zoznamu a usporiadajte podľa abecedy.
-
Metódy triedenia spojte do jedného programu
a doprogramujte k nemu vhodne menu.(po usporiadaní poľa sa program vráti
k hlavnému menu.)
-
Napíšte program, ktorý vo vybranom textovom súbore
vyhľadá a vytlačí všetky slova volenej dĺžky. Konkrétny súbor i dĺžku
slov si volí používateľ z klávesnice.
-
Vytvorte binárny strom pomocou dynamických
premenných a vypíšte ho na obrazovku (6-10 uzlov)
-
Je daný textový súbor, ktorý obsahuje program
v jazyku pascal. Vytvorte program, ktorý preverí, či počty okrúhlych
zátvoriek ľavých a pravých je rovnaký
-
Vstupný súbor bude obsahovať na každom riadku 1
slovo. Vytvorte usporiadaný zoznam týchto slov a vypíšte ho. Opakovane
výskyty toho istého slova neriešte vytváraním nového prvku, ale
počítadlom výskytov.
-
Pomocou bodov nakreslite obdĺžnik, ak poznáte jeho
ľavý horný roh a dĺžku jeho strán.
-
Nakreslite kružnicu s polomerom R=150 [bodov] farbou
15 (biela) do stredu obrazovky (stred obrazovky: 320,240). Do kružnice
náhodne nakreslite 500 bodov tej istej farby (15 - biela). Náhodne
nájdite jeden bod vo vnútri kružnice, ktorý má farbu číslo 0 (čierna).
Vyplňte kružnicu farbou číslo 2 (zelená). Kružnicu vyplňte tak, aby
farba 2 neprekryla body bielej farby
-
Nakreslite priebeh funkcie sin(x). x je z intervalu
< 0 , 639 > .
-
Vytvorte program, ktorý bude vykresľovať rozličné
geometrické tvary (kruh, čiara, trojuholník, štvorec...). Tvar si zvoli
používateľ z klávesnice, po vybraný tvaru zadá parametre (napr. pri
kruhu stred a polomer)
-
Nakreslite na obrazovke terč (vykreslene 3 sústredné
kružnice, plocha medzi nimi je vyfarbená inou farbou).
-
Na vstupe sú informácie o zamestnancoch podniku. O
každom zo zamestnancov je k dispozícii jeho priezvisko (reťazec znakov),
mesačný príjem (cele kladne číslo), rok narodenia (cele číslo z
intervalu 1900..2000), údaj o pohlaví (napr. 0 reprezentuje ženu, 1
muža). Zistite priemerný mesačný príjem v podniku, priemerný plat
v podniku, meno vrátnika a vytlačte zoznam zamestnancov.
-
Vykreslite funkciu y= a*x + b, a, b sa zadáva
z klávesnice.
-
Chceme cestovať z mesta X do obce Z cez mesto Y.
Medzi mestami X a Y premáva vlak 11x denne, mesto Y a obec Z sú spojené
autobusovou linkou, ktorá premáva 14x denne. Vytvorte program, pomocou
ktorého vyhľadáme najvhodnejší spoj pre požadovaný čas odchodu.
-
8 dám na šachovnici 8x8 rozostaviť dámy tak, aby sa
navzájom neohrozovali (rovno aj uhlopriečne)
-
Vytvorte jednoduchý telefónny zoznam. Maximálny
počet záznamov v telef. zozname - 20 Jeden záznam telef. zoznamu nech
obsahuje nasledujúce položky: meno, priezvisko, telef. číslo a záznam
ADRESA. Záznam ADRESA nech obsahuje položky: ulica, smerové číslo a
mesto. Telefónny zoznam nech umožňuje nasledovne operácie: odobrať
záznam, pridať záznam, vypísať zvolený záznam. Každá z operácií v telef.
zozname nech je spravená ako funkcia, alebo procedúra. Tieto operácie
spravte samostatne do nového UNITu (jednotky).
-
Napíšte program, ktorý vo vybranom textovom súbore
nájde všetky slova začínajúce písmenom (rozlišujeme medzi malým a veľkým
písmenom) zadávaným používateľom z klávesnice.
-
Nakreslite do stredu obrazovky štvorec, nad spodnú
čiaru nakreslite trojuholník a kružnicu
-
V textovom súbore zistite výskyt (počet) samohlások
a e i o u.
-
Dané sú prirodzené čísla m, n, m<n. N je počet
deti, každé ma priradené poradové číslo 1 až n. Od prvého sa začne
odpočítavať a m-té dieťa vypadne z kruhu. Potom sa začne odpočítavať od
nasledujúceho a znova m-té vypadne, až kým neostane jeden. Vypíšte
poradie detí v poradí, v akom vypadávali z kruhu. Pri riešení použite
kruhovú dynamickú štruktúru dát.
-
Urobte program ktorým sa bude dať registrovať knihy
v knižnici. Vstupne dáta sú: názov knihy, registračné číslo, poškodenie,
dátum vypožičania a meno. Úlohu riešte cez Unity.
-
Naprogramujte jednoduchú hviezdnu oblohu. Nech
pozostáva z 50-tich hviezdičiek a nech je trojúrovňová. Vytvorte záznam,
ktorý bude obsahovať 3 položky: X pozícia, Y pozícia a posun. Jeden
tento záznam bude určovať pozíciu hviezdičky na obrazovke a o koľko
bodov sa posunie hviezdička za jednotku času. Pozíciu X a Y vygenerujte
náhodné tak, aby umiestnenie hviezdičky nebolo mimo obrazovky. Posun
vygenerujte tiež náhodné a nech ma hodnoty od 1 do 3 - vrátané.
Vytvorte funkciu, ktorá posunie každú hviezdicu na X-ovej osi o posun
doprava. Ak X-ova súradnica hviezdičky je mimo rozmer obrazovky, vráťte
ju na začiatok obrazovky. Prekresľovanie hviezdičiek zrealizujte
nasledovne: zmažte hviezdičku na pozícii, na ktorej sa momentálne
nachádza farbou pozadia - 0. Posuňte jej pozíciu o jej posun.
Vykreslite hviezdičku na novej pozícii inou farbou ako je farba pozadia
- napr. 1. Samotný pohyb hviezdičiek naprogramujte ako procedúru: V
cykle robte predošlý bod - procedúru. Po každom vykonaní procedúry nech
program čaká nejaký časový interval - 100 ms.
A nasledujú zadania s dynamanickými premennými, frontami, zásobníkmi,
binárnymi stromami, smerníkmi, Unitami a tak podobne.
-
Vytvorte program, ktory zo vstupu nacita vstupny retazec a
pretransformuje do Morseovej abecedy. Pri vystupe doplnte vystupny
retazec zvukovym signalom simulujucim vysielanie Morseovho kodu. Na
oddelenie slov pouzite "||" na oddelenie znakov pouzite "|". Program
rozdelte na niekolko modulov (unitov).
-
Vytvorte program na scitanie troch velmi dlhych celych cisel
reprezentovanych pomocou troch linearny spojitych zoznamov. Vysledok
zapiste tiez do linearneho spojoveho zoznamu a tiez na obrazovku.
Program logicky rozdelte do minimalne troch modulov.
-
Vytvorte program na odcitanie dvoch velmi dlhych celych cisel
reprezentovanych pomocou linearny spojitych zoznamov. Vysledok
zapiste tiez do linearneho spojoveho zoznamu a na obrazovku. Program
logicky rozdelte do minimalne troch modulov.
-
Vytvorte program na nasobenie velmi dlheho celeho cisla
reprezentovaneho pomocou linearneho spojoveho zoznamu a celeho cisla N
pricom N>0 AND N<20. Vysledok zapiste tiez do linearneho
spojoveho zoznamu a na obrazovku. Program logicky rozdelte do minimalne
troch modulov.
-
Vytvorte program na scitovanie, odcitovanie, nasobenie a delenie dvoch
komplexnych cisel. Vyber operacii riadte cez menu. Program rozdelte
na niekolko modulov.
-
Znakove retazce su reprezentovane jednosmernymi
spojovymi zoznamami znakov. Napiste funkciu, ktorej funkcnou hodnotou
je pocet vyskytov retazca A v retazci B. A a B su parametrami funkcie.
Program rozdelte na niekolko modulov.
-
Velke prirodzene cislo je v programe reprezentovane
linearnym spojovym zoznamom cifier. Napiste proceduru alebo funkciu na
porovnavanie takto reprezentovanych cisel. Vysledkom bude informacia,
ci je prve cislo vacsie, mensie, alebo sa rovnaju. Program rozdelte na
niekolko modulov.
-
Mnoziny su reprezentovane jednosmernymi linearnymi
spojovymi zoznamami. Svojich prvkov. Napiste proceduru, ktora v takejto
reperzentacii vykona operaciu prieniku a zjednotenia mnozin. Vysledok
operacie prienik a zjednotenie zapiste do linearneho zoznamu a na
obrazovku. Program rozdelte na niekolko modulov.
-
Tri linearne spojove zoznamy obsahuju vo svojich prvkoch cele cisla
usporadane vzostupne podla velkosti. Napiste proceduru, ktora presunie
vsetky prvky do jedneho usporiadaneho zoznamu. Program rozdelte na
niekolko modulov.
-
Napiste funkciu typu boolean, ktora zistuje, ci su dane dva linearne
spojove zoznamy celych cisel tvorene rovnakymi prvkami. Program
rozdelte na niekolko modulov.
-
Najdite a vytlacte vsetky latinske stvorce radu 4. Latinsky stvorec
radu 4 je matica velkosti 4x4, ktora obsahuje iba cisla 1,2,3,4 a to
tak, ze v kazdom jej riadku a stlpci su vsetky prvky rozne. Program
rozlozte na niekolko modulov.
-
Vytvorte program, v ktorom nacitate udaje o ziakoch vo vasej triede
(cislo,meno, priezvisko, vek, vyska a vaha), zapisete ich linearneho
spojoveho zoznamu a do suboru . Potom zoznam usporadate podla vysky
ziaka a zapisete do 2.suboru a na obrazovku. Program rozdelte na
niekolko modulov.
-
Je dany retazec znakov obsahujuci male znaky abecedy . Vytvorte linearny
spojovy zoznam, v ktorom budu dane znaky usporiadane , a pri kazdom
znaku bude pocet vyskytov daneho znaku, pricom vysledny zoznam nebude
obsahovat duplikatne znaky. Program rozdelte na niekolko modulov.
|