PRIPREMA ZA KONTROLNI IZ OBLASTI : GRANANJE U PROGRAMU (SELEKCIJE)
U ovom odeljku su dati primeri zadataka iz oblasti grananje u programu, sa rešenjima. Pokušajte da primere rešite samostalno, a rešenje koristiti za proveru ili koristiti ako posle većeg broja pokušaja i dosta uloženog truda ipak ne uspete samostalno da rešite postavljen zadatak.
Rešenje će se prikazati klikom na dugme pored postavljenog zadatka.
Zadaci su obojeni različitim bojama u zavisnosti od težine:
Rešenje će se prikazati klikom na dugme pored postavljenog zadatka.
Zadaci su obojeni različitim bojama u zavisnosti od težine:
- Zelena- laki zadaci
- Žuta - zadaci srednje težine
- Crvena - teži zadaci
Zadaci za pripremu za kontrolni zadatak:
Zadatak 1 - Brzina pri slobodnom paduTelo slobodno pada sa visine H na zemlju. Odrediti da li ova visina mora biti veća od unete početne visine (H metara) da bi brzina tela pri padu bila veća od vG(unosi korisnik) . Ulaz: U jednoj liniji standardnog ulaza nalaze se dve realne vrednosti H i Vg (H≤3000, Vg≤300) koje predstavljaju početnu visinu tela u metrima i graničnu brzinu u m/s. Izlaz Izračunatu brzinu pri padu kao i graničnu brzinu. Primer1 Ulaz 10 12 Izlaz "Visina ne mora biti veća od 10 m da bi telo dostiglo brzinu od 12m/s" Primer2 Ulaz 250 78 Izlaz "Visina mora biti veća od 250 m da bi telo dostiglo brzinu od 78m/s" |
Pogledaj kako izgleda Simulacija slobodnog pada na sajtu Kosi hitac
|
Zadatak 2-Skok u vis:Pobedio je treci takmicar sa skokom odUneti rezultate koje su takmičar 1. i 3. postigli u skoku u vis u trećem skoku.
Ako su poznati ostali rezultati: takm 1: 5.87m,5.94m, x takm 2: 5.89m,5.84m, 5.75m; takm 3: 5.6m, 5.87, y; odrediti redosled takmičara posle ovog skoka . Ulaz Realni brojevi x i y, u intrvalu od(0 - 7) Izlaz Jedan realan broj, zaokružen na dve decimale, koji predstavlja najbolji rezultat sa porukom koji je takmičar pobedio. Primer Ulaz 5.45 5.76 Izlaz Pobedio je prvi takmicar sa skokom od 5.94 |
Image by Peggy und Marco Lachmann-Anke from Pixabay
|
Zadatak 3-Ispravnost podataka kvadraUneti stranice kvadra a,b, c i odredi da li su uneti podaci ispravni(dužine stranica moraju biti pozitivni brojevi). Ako jesu izračunaj površinu i zapreminu. Ulaz U tri linije standardnog ulaza uneti realna broja a, b,c Izlaz dva realna broja koji predstavljaju površinu i zapreminu kvadra ili poruka da podaci nisu ispravni
Primer 1 Ulaz 2 4 7 Izlaz P=100cm2 V=56cm3 Primer 2 Ulaz 12 -4 7 Izlaz Podaci nisu ispravni |
Image by Pete Linforth from Pixabay
|
Zadatak 4-Upis na fakultet:Uneti bodove za 4 kandidata za upis na tehnicki fakultet. Napraviti program koji određuje da li kandidati koji žele da se upisu na tehnicki fakultet ispunjavaju uslove za upis(Upisali su svi koji imaju broj bodova iznad prosečnog).
Ulaz U prve četiri linije treba uneti 4 realna broja(0-100). Izlaz Prikazati u 4 linije odgovor za svakog kandidata : "Ispunjava uslove", ili "Ne ispunjava uslove" Primer Ulaz 65 45 88 75 Izlaz "Ne ispunjava uslove" "Ne ispunjava uslove" "Ispunjava uslove" "Ispunjava uslove" |
Image by OpenClipart-Vectors from Pixabay
|
Zadatak 5-Određivanje broja dana po mesecima:Odrediti broj dana za svaki mesec u godini. Predvideti slučaj i da je godina prestupna Ulaz:Sa standardnog ulaza unose se dva cela broja :
Izlaz: Na standardni izlaz ispisati jedan ceo broj - broj dana u tom mesecu Primer 1 Ulaz 3 2021 Izlaz 31 Primer 2 Ulaz 2 2020 Izlaz 29 |
Image by OpenClipart-Vectors from Pixabay
|
Zadatak 6-Porez:Napisati program kojim se izracunava iznos poreza na bruto platu. Ako je bruto plata veca od 1000 eura porez je 20%, inace porez je 15%. Bruto plata se unosi:
a) U EUR-lakša varijanta b) U RSD- teža varijanta, ako je vrednost 1EUR-a: 117RSD Ulaz: U jednom redu standardnog ulaza unosi se jedan realan broj iz intervala [1..100000] koji predstavlja bruto platu Izlaz: Na standardni izlaz se ispisuje vrednost plate u evrima, kao i poreza (realan broj zaokružen na dve decimale). Primer 1(Za b varijantu, tj. za unos u dinarima) Ulaz 59900 Izlaz 511.97 //plata u evrima 76.79 //RSD |
|
Zadatak 7-Minimum tri cela broja:
Napiši program koji određuje minimalnu vrednost tri unete vrednosti očitane temperature.
Ulaz Sa standardnog ulaza unose se tri realna broja, svaki u posebnom redu, koji predstavljaju vrednosti tri očitane temperature(-50,50) u toku dana. Izlaz Na stanardni izlaz ispisati vrednost minimalne temperature zaokruženu na 2 decimale Primer Ulaz 12.34 5.64 7.45 Izlaz 5.64 |
Image by Gerd Altmann from Pixabay
|
Zadatak 8-Kreiranje boja-RGB vrednost:
Poznato da se svaka nijansa boje može dobiti mešanjem 3 komponente crvene, zelene i plave. Komponente su predstavljene sa 3 cela broja čije su vrednosti (0-255). To je RGB vrednost. Napraviti program koji za učitane vrednosti R,G i B, određuje koja nijansa boje preovlađuje.
Ulaz Sa standardnog ulaza unose se tri cela broja, svaki u posebnom redu, koji predstavljaju R ,G, B vrednost između 0 - 255 . Izlaz Na stanardni izlaz ispisati naziv boje koja dominira Primer Ulaz 50 130 170 Izlaz "Plava" |
|
9. Trka automobila
Tri automobila kreću sa startne pozicije u trenucima T1 < T2 <T3 i kreću se konstantnim brzinama V1, V2, V3. Ispisati startne brojeve automobila koji su na vodećoj poziciji u trenutku T > T3. Moguće je da više od jednog budu na vodećoj poziciji.
Ulaz Tri realna broja koja predstavljaju redom vremena kašnjenja prvog, drugog i trećeg automobila u prvoj liniji. U drugoj liniji učitati redom 4 realna broja koja predstavljaju brzine 1,2 i 3 automobila i na kraju vreme trke u sekundama do trenutka kada se pravi presek i određuje koji je automobil ili automobili na vodećoj poziciji. Izlaz Tekst koji opisuje koji je automobil na vodećoj poziciji Primer Ulaz 1 2 3 23 23.6 22.8 60 Izlaz "Drugi automobil je na vodecoj poziciji" |
10. Kod Slova
(Poznato je da se znakovi(slova, cifre, specijalni znakovi) predstavljaju pomoću pridruženih celih brojeva(može se videti u tabeli ASCII kodova). Iz tabele se može uočiti da su kodovi velikih slova od 65-90, dok su kodovi malih slova od 97-122. Dakle malo slovo a ima kod npr 97, dok veliko slovo A ima kod 65.
Napraviti program koji za generisanu slučajnu vrednost koda nekog znaka(1-150) određuje da li : a) nije slovo, dakle, da li je neki drugi znak, kao npr. cifra ili specijalni znak b) Ako je slovo, ispisati da li je veliko ili malo Prikazati na izlazu generisan i kod i znak Napomena: Za generisane slučajne vrednosti koristiti funkciju rand() iz zaglavlja stdlib.h.( Umesto toga može se omogućiti da korisnik sam unese broj)
Ulaz
slučajno generisan(ili unet) ceo broj 1-150 Izlaz Neka od sledećih poruka: 1-Nije slovo nego je neki drugi znak: 64 @ 2-Veliko slovo 75 K 3-Malo slovo 101 e 4-Nista od navedenog Primer Ulaz 74 Izlaz "Veliko slovo 74 K" |
TABLICA ASCII KODOVA
|
11. Čoveče ne ljuti se
Napraviti program koji simulira bacanje kockica korišćenjem funkcije rand() iz datoteke stdlib.h
Pera igra "Čoveče ne ljuti se" i u prilici je da završi krug ulaskom njegovog piona u kućicu. On baca kocku i treba da dobije ili 2 ili 4 da bi ušao u kućicu. Ako dobije 1 preći će u polje tik do svoje kućice. Program treba da simulira bacanje kockice, zadavanjem slučajne vrednosti od 1-6 korišćenjem funkcije rand, a zatim ispisati neku od sledećih poruka: "U kućici je " "Nadomak kućice je" "Nije se pomerio" |
Image by GooKingSword from Pixabay
|
12. Zubarska ordinacija
Zubar vas je zamolio da kreirate aplikaciju koju zaposleni mogu da koriste za naplatu pacijenata. Vaša aplikacija mora da omogući korisniku da unese ime pacijenta i navede koje su usluge izvršene tokom posete. Vaša aplikacija tada mora da izračuna ukupne troškove. Ako korisnik pokuša da izračuna ukupan račun pre nego što se navede bilo koja usluga ili pre nego što se unese ime pacijenta, trebalo bi da se prikaže poruka o grešci.
|
|