Osnovni pojmovi
Sjedište: | CARNET - Arhiva 2021 Loomen |
E-kolegij: | III. Gimnazija Osijek - Informatika 2 |
Knjiga: | Osnovni pojmovi |
Otisnuo/la: | Gost (anonimni korisnik) |
Datum: | srijeda, 29. siječnja 2025., 21:00 |
1. Programski jezik ‒ što je to?
Računala se danas koriste u svim dijelovima ljudskog života: za razonodu i zabavu, vođenje poslova u manjim ili većim poduzećima, u različitim istraživanjima (civilnim i vojnim), u uređajima za svakodnevnu uporabu (pametni tv uređaji, pametni telefoni, perilice rublja…) i sl. Naravno da tehnička obilježja tih uređaja nisu potpuno jednaka i da su vezana za njihovu namjenu, ali namjenu svakog od tih uređaja određuje program koji se u tom trenutku na njemu koristi.
Na samom početku razvoja, računala nisu bila „programibilna”, odnosno njihovu je namjenu određivalo sklopovlje, a ne program. Kada se namjena računala trebala promijeniti, mijenjani su određeni dijelovi u računalu. Nedostaci takvih računala brzo su uočeni i počeo je razvoj višenamjenskih računala kakva imamo danas.
Program je skup naredbi ili instrukcija poredanih prema strogo određenom redoslijedu nakon čijeg izvršavanja dobivamo određeni rezultat. Glavni je dio programa naredba ili instrukcija. Osobe koje pišu programe su programeri, a proces nastajanje programa – programiranje. Program se piše umjetno stvorenim jezicima koje nazivamo programski jezici.
- Učenjem,
- Znanjem,
- Pamćenjem,
- Iskustvom,
- Logičkim rasuđivanjem,
- Intuicijom,
- Osjećajima,
- Itd.
- Pamćenje,
- Logičko rasuđivanje.
1.1. Programski jezici od početka do danas
Slika 1. Programski jezici nastali u proteklih 70 godina
Najstariji programski jezik i jedini koji računalo razumije bez dodatnog
prevođenja naziva se strojni jezik (machine language). Sastoji se od nizova nula i jedinica. Nastao je
polovinom prošlog stoljeća i vezan je za građu središnje jedinice za obradu
podataka. Upravo zato programi pisani strojnim jezikom nisu bili prenosivi s
računala na računalo. Programiranje
pisanjem nula i jedinica je vrlo složeno za programera pa su strojne naredbe
ubrzo zamijenjene riječima ili simbolima. Takve jezike nazivamo simboličkim
jezicima. Simbolički jezici dijele se na niže i više programske jezike.
Najpoznatiji predstavnik nižih programskih jezika je asembler u kojem je jedna
strojna naredba zamijenjena s jednom simboličkom naredbom (MUL – množenje, ADD –
zbrajanje…). No i takvo programiranje je prilično složeno za programera jer je i
asembler vezan za građu računala. Ne zaboravimo, prije izvršavanja programa
pisanog asemblerom moramo ga prevesti u strojni jezik razumljiv računalu.
Viši programski jezici nastali su 60-ih godina dvadesetog stoljeća. Bliži su ljudskom načinu razmišljanja jer su naredbe kratke riječi (najčešće vezane za englesko govorno područje), koje se lako pamte. Većina naredbi viših programskih jezika zamjenjuje cijeli niz strojnih naredbi. Rabeći više programske jezike, programi postaju kraći i razumljiviji. Najpopularniji viši programski jezici su C, C++, C#, Python, Java… Programi pisani višim programskim jezicima mogu se izvršavati na različitim modelima računala i različitim operativnim sustavima. Program napisan u višem programskom jeziku nazivamo izvorni program (source code).
Da bi računalo moglo izvršiti program pisan višim programskim jezikom (izvorni program), moramo ga prevesti u strojni jezik. Za prevođenje programa u strojni jezik postoje posebni programi prevoditelji. Dijelimo ih u dvije skupine:
‒ interpreteri su programi prevoditelji koji prevode naredbu po naredbu izvornog programa i svaku naredbu odmah izvršavaju; ne stvaraju izvršni kod
‒ kompajleri su programi prevoditelji koji prevode cijeli program, stvaraju izvršnu verziju programa, a zatim nju izvršavaju.
1.2. Pitanja, vježbe i zadatci
Na ova pitanja odgovori u svoju bilježnicu!
1. Što je program?
2. Kako nazivamo glavni dio svakog programa?
3. Tko su programeri?
4. Što su programski jezici i kako se oni dijele?
5. Što je strojni jezik?
6. U čemu je razlika između simboličkih jezika niže i više razine?
7. Što su programi prevoditelji i u koje se skupine dijele?
8. Koja je razlika između kompajlera i interpretera?
2. Algoritam
Algoritam u svakodnevnom životu vrlo često upotrebljavamo. Kad smo bili mali učili su nas vezati vezice na cipelama i naučili smo jedan algoritam. Onda smo se pripremali za kretanje u školu pa su nas učili kako prijeći cestu na kojoj postoji semafor i onu bez semafora. Opet smo naučili jedan ili više algoritama. Svaki put kad pečemo palačinke zapravo slijedimo algoritam koji će nas dovesti do slasnoga i ukusnog deserta.
Recept za palačinke: Da bismo dobili ukusne palačinke moramo pratiti recept po koracima!
Algoritam je razrađen postupak koji nas u konačnom broju koraka vodi prema rješenju
problema. Redoslijed koraka u algoritmu je iznimno važan, kao što je važan i pri
pečenju palačinki. Algoritam možemo zapisati govornim jezikom, primjerice
recept za one naše palačinke od prije.
No, kakve veze s tim ima računalo i programiranje?
Prije smo rekli da je tijekom proceduralnog programiranja najvažnije dobro razraditi postupak za rješavanje problema, a taj postupak nije ništa drugo nego algoritam!
Algoritme kojima ćemo rješavati zadatke računalom možemo zapisati na dva načina:
a) pseudojezikom
b) dijagramom tijeka (grafičkim simbolima).
Zanimljivosti...
Riječ algoritam dolazi od latinskog prijevoda imena arapskog matematičara Abu Abdullah Muhammad ibn Musa al-Khwarizmi-a koji se smatra ocem algebre jer je definirao osnovna pravila rješavanja linearnih i kvadratnih jednadžbi.
Prvi
zapis algoritma prilagođen računalu pripada Adi Byron iz 1842 (pa se
zbog ovoga smatra prvom programerkom), a računao je Bernoullijeve
brojeve. Računalo za koje je napisan je bio analitički stroj, kojeg je
zamislio, ali nikad u potpunosti proveo u djelo, Englez Charles Babbage.
Analitički stroj je trebalo biti prvo programabilno računalo,
sastavljeno u potpunosti od mehaničkih dijelova. Mehanički dijelovi i
fizička glomaznost su glavni razlozi zašto nikad nije završen.
Izvor: hr.wikipedia.org/wiki/Algoritam
2.1. Pseudokod
Pseudojezik ili pseudokôd je umjetno stvoren jezik u kojem govornim jezikom (riječima) zamjenjujemo pojedine naredbe ili instrukcije. Osnovne naredbe pseudojezika prikazane su tablici:
Napomena: Način pisanja naredbi u pseudojeziku podložan je promjenama pa pratite
novosti na stranici www.ncvvo.hr.
2.2. Dijagram tijeka
Dijagram tijeka prikazuje algoritam s pomoću grafičkih simbola prikazanih u tablici:
2.3. Pitanja, vježbe i zadatci
Na ova pitanja odgovori u svoju bilježnicu!
1. Što je algoritam?
2. Kako možemo zapisati algoritam?
3.
Što
je pseudojezik?
4. Nacrtajte simbole koji se koriste u dijagramu tijeka i objasnite njihovo znače.
5. Pokušajte izvršiti sljedeće jednostavne algoritme. Neka vam netko čita instrukcije:
- ustanite
- podignite lijevu nogu
- spustite lijevu nogu
- podignite desnu nogu
- spustite desnu nogu
- sjednite.
Zamijenimo sada naredbe broj 3 i 4. Pokušajte izvršiti novi algoritam:
- ustanite
- podignite lijevu nogu
- podignite desnu nogu
- spustite lijevu nogu
- spustite desnu nogu
- sjednite.
Jeste li uspjeli izvršiti drugi algoritam? Što se dogodilo? Uočavate
li sada zbog čega je redoslijed naredbi u algoritmu (a poslije i u programu)
vrlo važan? Napišite odgovor u svoju bilježnicu!