Razvrstavanje (sortiranje) podataka
Ishodi
OŠ INF B. 8. 1. identificira neki problem iz stvarnoga svijeta, stvara program za njegovo rješavanje, dokumentira rad programa i predstavlja djelovanje programa drugima
OŠ INF B. 8. 2. prepoznaje i opisuje algoritam sortiranja, primjenjuje jedan algoritam sortiranja za rješavanje zadanoga problema u programskom jeziku
pod C.2.2. Prepoznaje osnovne tržišne odnose/procese razmjene.
pod C.2.3. Prepoznaje ulogu novca u osobnom i obiteljskom životu.
Ciljevi učenja
- Učenik razumije važnost sortiranja podataka u svakodnevnom životu.
- Učenik zna primijeniti osnovne algoritme sortiranja u programiranju.
- Učenik povezuje teoriju sortiranja s praktičnim primjerima iz financija, trgovine i digitalne obrade podataka.
- Učenik razvija logičko razmišljanje, analitičke vještine i sposobnost algoritamskog rješavanja problema.
Ponavljanje nastavnih sadržaja prethodnih razreda (5., 6., 7.)
UVOD
Razmislimo: Zašto je važno sortirati stvari?
U svakodnevnom životu često se susrećemo s organiziranjem podataka. Zamislite ladicu s čarapama – kako biste najbrže pronašli odgovarajući par? Ako su čarape razbacane, traženje traje dugo. Ako su sortirane po bojama ili vrstama, posao je puno lakši. Ista stvar vrijedi za podatke – njihovo sortiranje štedi vrijeme, energiju i resurse.
U digitalnom svijetu sortiranje podataka ima mnoge primjene: od pretraživanja telefonskih brojeva, upravljanja financijama, organizacije fotografija do upravljanja zalihama u trgovinama. Ova lekcija pokazat će vam kako riješiti problem sortiranja kroz programiranje i algoritme.
GLAVNI DIO
Razvrstavanje (sortiranje) podataka
Zašto sortiramo podatke?
Sortiranje podataka omogućuje brže pretraživanje, analizu i upravljanje informacijama. Npr.:
- u trgovini: organizacija proizvoda po cijeni ili kategorijama
- u školi: evidencija učenika po prezimenima ili rezultatima
- u financijama: analiza troškova prema veličini ili vrsti
Algoritmi sortiranja
Postoji više načina sortiranja, a danas ćemo naučiti osnovne principe. Kroz male zadatke shvatit ćemo kako možemo organizirati brojke prema veličini.
Sortiranje dva broja (Zadatak 1.)
Prvo ćemo naučiti kako zamijeniti mjesta dvaju brojeva. Primjenom Python programa, testirati ćemo logiku razvrstavanja:
- Ako je prvi broj veći od drugog, zamijenimo njihove vrijednosti.
- Prikazujemo rezultate.
Sortiranje tri broja (Zadatak 2.)
Sljedeći korak je razvrstavanje tri broja. Pomoću više uvjeta naučiti ćemo kako primijeniti algoritam sortiranja na više elemenata.
Objašnjenje zadatka sortiranja tri broja
Ponekad želimo poredati tri broja od najmanjeg do najvećeg. Kako bismo to učinili, možemo koristiti jednostavan postupak uspoređivanja i zamjene vrijednosti.
Što radimo u ovom zadatku?
- Zamislimo da imamo tri broja:
a
,b
ic
. - Cilj nam je usporediti brojeve i, ako je potrebno, zamijeniti njihove pozicije tako da na kraju
a
bude najmanji broj,b
bude srednji, ac
najveći.
Kako to radimo?
- Prvo uspoređujemo
a
ib
. Ako jea
veći odb
, zamijenimo njihove vrijednosti. - Zatim uspoređujemo
a
ic
. Ako jea
veći odc
, opet zamijenimo vrijednosti. - Na kraju uspoređujemo
b
ic
. Ako jeb
veći odc
, i ovdje zamijenimo njihove vrijednosti.
Što se događa u pozadini?
Postupak “zamjene” osigurava da:
- Najmanji broj završi na početku (u
a
). - Najveći broj završi na kraju (u
c
). - Preostali broj, koji nije ni najmanji ni najveći, završi u sredini (
b
).
Vježba 1
- Zadatak: Izmijenite računalno rješenje prethodnog zadatka tako da program sortira 3 broja prema veličini, od najvećeg prema najmanjem.
Sortiranje četiri broja
Kada želimo sortirati četiri broja (npr. a
, b
, c
, d
), postupak postaje malo složeniji jer moramo usporediti i zamijeniti više parova brojeva. Cilj je opet isti: na kraju poredati brojeve od najmanjeg do najvećeg.
Što ćemo raditi?
- Proširit ćemo princip koji smo koristili za sortiranje tri broja.
- Pomoću nekoliko usporedbi i zamjena osiguravamo da svaki broj završi na pravom mjestu.
- Na kraju,
a
će biti najmanji,b
će biti drugi po veličini,c
treći, ad
najveći.
Kako to radimo?
- Usporedi prvi i drugi broj (
a
ib
). Ako jea
veći, zamijeni ih. - Usporedi prvi i treći broj (
a
ic
). Ako jea
veći, zamijeni ih. - Usporedi prvi i četvrti broj (
a
id
). Ako jea
veći, zamijeni ih. - Sada je
a
sigurno najmanji broj.
Nastavljamo sortirati ostala tri broja:
5. Usporedi drugi i treći broj (b
i c
). Ako je b
veći, zamijeni ih.
6. Usporedi drugi i četvrti broj (b
i d
). Ako je b
veći, zamijeni ih.
Na kraju rješavamo posljednji par:
7. Usporedi treći i četvrti broj (c
i d
). Ako je c
veći, zamijeni ih.
Nakon ovih koraka brojevi su sortirani od najmanjeg do najvećeg.
Sortiranje tri broja pronalaženjem najmanjeg, srednjeg i najvećeg (Zadatak 3.)
Prikazat ćemo još jedan način sortiranja 3 broja koristeći se postupkom traženja najmanjeg ili najvećeg broja. Cilj je identificirati najmanji, najveći i srednji broj među tri zadana broja. Nakon toga ih ispisujemo redom od najmanjeg do najvećeg.
Pronalaženje najmanjeg broja:
- Počinjemo tako da najmanjem broju (
manji
) pridružimo vrijednosta
. - Uspoređujemo ga sa
b
ic
. Ako je bilo koji od njih manji odmanji
, mijenjamo vrijednost varijablemanji
.
Pronalaženje najvećeg broja:
- Najvećem broju (
veci
) pridružimo vrijednosta
. - Uspoređujemo ga sa
b
ic
. Ako je bilo koji od njih veći odveci
, mijenjamo vrijednost varijableveci
.
Pronalaženje srednjeg broja:
- Srednji broj (
srednji
) izračunavamo tako da od ukupnog zbroja svih brojeva (a + b + c
) oduzmemomanji
iveci
.
Što se događa s brojevima?
- Ako unesemo
a=9
,b=1
,c=4
:manji = 1
veci = 9
srednji = (9 + 1 + 4) - (1 + 9) = 4
- Ispisuje se:
1, 4, 9
(sortirano od najmanjeg do najvećeg).
Vježba 2
- Zadatak: Dogradite jedno od postojećih računalnih rješenja da program sortira 4 zadana broja počevši od najmanjeg.
Zaključak
Sortiranje nije samo nešto što koristimo u školi ili programiranju – to je praktična vještina koja ima primjenu u našem svakodnevnom životu. Danas smo naučili kako jednostavne odluke, poput uspoređivanja i zamjene brojeva, mogu pomoći u organizaciji podataka i rješavanju problema. No, zašto nam to znanje treba i gdje ga koristimo?
Zašto je ovo važno?
U bilo kojem poslu, razumijevanje kako organizirati podatke omogućit će ti da brzo rješavaš zadatke i štediš vrijeme.
U svakodnevnom životu:
– primjer ormara: kada sortiramo odjeću po sezoni, veličini ili boji, brzo nalazimo ono što nam treba
– primjer kupovine: kada tražimo najjeftiniji proizvod u trgovini, naš mozak zapravo sortira cijene
– primjer putovanja: kad organiziramo raspored ili rute, sortiramo aktivnosti prema vremenu ili udaljenosti
U školi i učenju:
– Sortiranje pomaže u organizaciji bilješki, planiranju obaveza i rješavanju zadataka.
– Primjer: Razvrstavanje ocjena u dnevniku omogućuje brzo prepoznavanje najboljeg ili najlošijeg rezultata.
U tehnologiji:
– Kada koristite Google pretraživanje, algoritmi sortiranja pomažu prikazati najvažnije rezultate na vrhu.
– U aplikacijama kao što su Excel ili kalkulacijski programi, sortiranje pomaže analizirati podatke, npr. popise učenika po prezimenima ili bodovima.
– U videovima ili fotografijama, često sortiraš po datumu, veličini ili imenu.
U budućnosti:
– Ako postaneš programer, znat ćeš stvoriti programe koji organiziraju podatke brzo i učinkovito.
– Ako se baviš financijama, moći ćeš analizirati troškove i prihode razvrstavanjem po kategorijama.
Algoritmi sortiranja nisu samo matematička vježba – oni nas uče logici, razmišljanju u koracima i traženju najboljeg rješenja za problem. Razumijevanje sortiranja pomaže vam razmišljati logično i strukturirano, što je korisno u bilo kojem području, bilo da želite biti liječnik, učitelj, inženjer ili vozač taksija koji optimizira svoje rute.
ZAVRŠNI DIO
- Provjerite svoje znanje. – KAHOOT KVIZ
- dodatni digitalni sadržaji na e-Sfera
- Provjerite svoje znanje.
Sortiranje većeg broja podataka općenito je zanimljiv problem u programiranju i postoji nekoliko različitih pristupa kojima ga rješavamo. U sljedećoj ćemo se nastavnoj jedinici baviti algoritmima sortiranja većeg broja podataka.
PROVJERI SVOJE ZNANJE
- Navedite tri primjera iz stvarnog života gdje sortiranje olakšava zadatak.
- Opiši svojim riječima zbog čega je potrebno sortirati podatke.
- Što znači sortiranje podataka prema silaznom redoslijedu?
- Opišite jedan postupak sortiranja 3 broja počevši od najmanjeg.
- Objasnite kako biste koristili algoritme sortiranja u organizaciji osobnih financija.