Osnove programiranja POSTUPCI PRI PISANJU PROGRAMA ALGORITAM = UPUTA Znaš gdje stanujem? MATEMATIKA? Kreni kraj zgrade Pošte lijevo, na prvom raskršću desno, na drugom kružnom toku ravno, na.

Download Report

Transcript Osnove programiranja POSTUPCI PRI PISANJU PROGRAMA ALGORITAM = UPUTA Znaš gdje stanujem? MATEMATIKA? Kreni kraj zgrade Pošte lijevo, na prvom raskršću desno, na drugom kružnom toku ravno, na.

1
Osnove programiranja
POSTUPCI PRI PISANJU
PROGRAMA
ALGORITAM
= UPUTA
Znaš gdje stanujem?
MATEMATIKA?
Kreni kraj zgrade Pošte lijevo, na prvom raskršću
desno, na drugom kružnom toku ravno, na kraju ulice
kod visoke kuće ......
Kako ću pokrenuti program za crtanje na računalu?
Klikni na gumb Start, u izborniku All Programs potraži
...
Riječ algoritam dolazi od riječi Alchwarizmi ili Kovarezma kako je glasio
nadimak arapskog pisca, matematičara i astronoma iz 9. stoljeća
Muhammeda ibn Muse al Khowarizmi koji je napisao knjigu o brojevima i
aritmetici.
3
ALGORITAM
• Cjelokupan zadatak svodi se na rješavanje više
jednostavnijih, vezanih manjih zadataka.
• PISANJE: detaljno i jasno, tako da osoba koja nikad
nije rješavala postavljeni zadatak može slijediti
korake algoritma i doći do rješenja.
Postoji čitav niz zadataka koje prema uputama algoritma u
načelu može riješiti i stroj.
Tada se algoritam sastoji od niza mehaničkih radnji za čije
izvršenje nije potrebna posebna inteligencija.
4
ALGORITAM
• Ako je riječ o računalima, onda je algoritam uputa
računalu kako može riješiti postavljeni zadatak.
• Mora biti napisan tako da se može pretvoriti u naredbe
računalnog jezika.
POČETAK
ODABERI dva višeznamenkasta prirodna broja
ZAPIŠI brojeve jedan ispod drugog zapisujući znamenke
jedinica, desetica, stotica i ostalih znamenaka redom
jednu ispod druge
ZAMISLI vodeće nule za broj s manje znamenki
ZAMISLI broj za prijenos i postavi ga na 0
ZA svako težinsko mjesto (počevši od jedinica)
ZBROJI znamenke i broj za prijenos
ZAPIŠI znamenku jedinice zbroja na odgovarajuće
težinsko mjesto konačne sume
POSTAVI broj za prijenos na vrijednost znamenke
desetice zbroja
AKO JE broj za prijenos veći od nule
ZAPIŠI vrijednost broja za prijenos ispred
konačne sume
KRAJ
ALGORITAM
slijed radnji ili postupaka koji dovode do
rješenja postavljenog zadatka.
Put do rješenja – jednoznačan!
dva višeznamenkasta prirodna
broja
ZAPIŠI …
ZAMISLI …
INSTRUKCIJE 
ZBROJI …
POSTAVI …
Međurezultati  broj za prijenos
ZAVRŠNI OBJEKTI  suma brojeva
UČINKOVITOST!
ALGORITAMSKI
PROCES
POČETNI OBJEKTI 
• Osim opisnog načina, kod kojeg je algoritam
zapravo opis u svakodnevnom govornom jeziku,
računalni algoritam pogodno je prikazati
dijagramom tijeka ili pseudokôdom.
DIJAGRAM TIJEKA
• Dijagram tijeka (engl. flow chart) je
grafički prikaz algoritma.
• olakšava izradu programa, uklanjanje
logičkih ili proceduralnih grešaka.
• zbog preglednosti, pogodan je za
analizu problema i traženje povoljnijih
rješenja
SIMBOLI DIJAGRAM TIJEKA
Primjer:
POČETAK
Je li
a=b?
UPIŠI a,b
Je li
a<b?
NE
a=b
DA
NE
a<b
ISPIŠI
"Brojevi su
jednaki"
DA
ISPIŠI a
KRAJ
ISPIŠI b
PSEUDOKOD
Pseudokod je zapis rješenja problema
sličan klasičnom programu, ali ne vezan
uz programski jezik.
Koristi ključne riječi izdvojene iz govornog
jezika (pseudojezik) i strukturu
računalnog programa.
Primjer:
ključne riječi
OSNOVNI ALGORITAMSKI
POSTUPCI
• slijed
• grananje
• ponavljanje (petlja)
SLIJED
Naredbe slijede jedna iza
druge.
GRANANJE
Omogućuje različiti tijek odvijanja
programa ovisno o rezultatu
postavljenog uvjeta.
PONAVLJANJE (petlja)
Određeni niz naredbi izvršava se zadani broj puta.
Prije početka
ponavljanja unaprijed
se točno zna koliko puta
postupak treba ponoviti.
Broj ponavljanja ovisi o
rezultatu izvršenog niza
naredbi koje se
ponavljaju. U tom slučaju
broj ponavljanja ne zna se
unaprijed.
PONAVLJANJE (petlja)
Vrste instrukcija
Vrste instrukcija
Vrste instrukcija
Vrste instrukcija
Što smo naučili?
Naučili smo što je …
• algoritam
• dijagram tijeka
• pseudokod - ključne riječi
• instrukcija
Vrste instrukcija?
22
Zadaci:
1. Napiši algoritam za prelaženje ulice.
2. Nacrtaj dijagram tijeka koji opisuje postupke pri kuhanju
jaja.
3. Napiši algoritam koji provjerava da li je trokut
pravokutan. (Sjeti se Pitagorinog poučka!)
4. Opiši što prikazuje dijagram tijeka:
23
Zadaci:
5. Kolika je vrijednost varijable a nakon izvršenja slijedeće naredbe
a:= 5 mod 3; ?
6. Koja će biti vrijednost varijable u nakon izvođenja sljedećega dijela
programa?
a := -3;
b := 1;
u := (a > b) ILI (a = 3);
24