programiranje - os-klinca-sela.skole.hr · da bi si olakšao pretvorbu zadataka iz svijeta koji ga...
TRANSCRIPT
(c)dkuhar, 2005.2
Ključne riječi
•
Algoritam•
Dijagram tijeka
•
Kodiranje•
Petlja
•
Računalni program•
Analiza
•
Dokumentacija•
Modularno programiranje
•
Programiranje•
Strukturno programiranje
•
Bug•
Grananje
•
Održavanje•
Pseudokôd
•
Testiranje
(c)dkuhar, 2005.3
Programiranje
•
Da bi si olakšao pretvorbu zadataka iz svijeta koji ga okružuje u oblik prihvatljiv računalu, čovjek se služi mnogim pomoćnim postupcima: planiranjem, opisom zadatka, algoritmom, pseudokôdom, dijagramom tijeka i sl.
•
Konačni će rezultat svih tih postupaka biti računalni program
(c)dkuhar, 2005.4
Planiranje•
Planiranjem se predviđa tko će, kada i što raditi
•
Pri izradi složenih programa često sudjeluje mnogo ljudi pa je planiranje veoma važan dio pripreme kako bi se uskladio rad svih
•
Čak ako program izrađuje samo jedan čovjek, planiranjem se mogu predvidjeti i rasporediti pojedine faze izrade programa
(c)dkuhar, 2005.5
Specifikacija
•
Specifikacija je dokument koji sadrži podroban popis i opis zadataka i željenih rezultata
(c)dkuhar, 2005.6
Algoritam općenito
•
Riječ
algoritam dolazi od riječi Alchwarizmi što je bio nadimak perzijskog pisca imenom Abu Ja’far Mohammed ibn Musa al Khowarizmi (oko 825. prije Krista) koji je napisao knjigu o matematici
•
Algoritam je naputak kako riješiti neki zadatak ili obaviti neki posao
(c)dkuhar, 2005.8
Algoritam primjer1.Učitati podatke 2.Zbrojiti sve podatke3.Zbroj podijeliti s
količinom podataka 4.Rezultat ispisati na
zaslonu monitora
(c)dkuhar, 2005.9
Dijagram tijeka simboli
Postupak, naredbe, postavke
Odluka
Početak ili kraj programa
Poveznica
Ručni unos podataka
upit ?
Ispis podataka na ekran
(c)dkuhar, 2005.10
Dijagram tijeka primjer 1
•
Engl. flow
chart•
Grafički prikaz programa koji olakšava izradu programa
(c)dkuhar, 2005.11
Dijagram tijeka primjer 2Početak
Kraj
Stajati na mjestu i motriti semafor
Zeleno svjetlo?
Primjer jednostavnog dijagrama tijeka postupanja u prometu
DA
NE
Nastaviti vožnju
(c)dkuhar, 2005.12
Pseudokôd općenito
•
Pseudokôd je tobožnji program (grč. pseudos
laž) jer premda nalikuje
računalnom programu, zapravo nije napisan u programskom jeziku koji bi se mogao izravno primijeniti na bilo kojemu računalu
•
Pseudokôd se sastoji od kratkih izraza na govornom jeziku koji opisuju i ukratko objašnjavaju pojedine zadatke algoritma
(c)dkuhar, 2005.13
Pseudokôd primjer
•
Primjer: Potrebno je poslati SMS pomoću mobilnog telefona. Psudokôd za taj zadatak mogao bi biti:
Uključiti mobilni telefonPritisnuti tipku za izbornikNa izborniku izabrati slanje porukaNapisati porukuUpisati telefonski broj primatelja porukePritisnuti tipku za slanje poruke
(c)dkuhar, 2005.14
Programske strukture
•
Upis podataka•
Ispis podataka
•
Pridruživanje•
Grananje
Upis polumjera kruga
Ispis površine kruga
X = 5
x
> 0 ?
DANE
(c)dkuhar, 2005.15
Grananje
•
Programska struktura koja omogućuje različiti tijek programa, ovisno o rezultatu
Je
li
x > 0 ?
DANE
x=0
(c)dkuhar, 2005.16
START
Obrada podataka
Petlja
•
Katkad je u programu potrebno opetovati neku radnju više puta
•
Da se ista naredba ne bi pisala mnogo puta, postoji programska struktura petlje koja ponavlja jednu ili više naredbi
(c)dkuhar, 2005.17
Petlja primjer
Ispisati "Upiši cijeli broj"Upis brojaIspisati "Upiši cijeli broj"Upis brojaIspisati "Upiši cijeli broj"Upis broja...(stotinu puta bi trebalo ponoviti isto)
Umjesto ovoga….
(c)dkuhar, 2005.18
Petlja primjer nastavak
Ponoviti 100 puta petljuIspisati "Upiši cijeli broj"Upis brojaKraj petlje
Pišemo ovo….
(c)dkuhar, 2005.20
Programiranje definicija
•
Pisanje skupa naredaba nanizanih određenim redom u izabranom programskom jeziku
(c)dkuhar, 2005.21
Program - programer
•
Program je skup naredaba nanizanih strogo utvrđenim redoslijedom, čijim se izvršenjem obavlja željeni posao
•
Čovjek
koji piše program naziva se programer, a postupak nastanka programa naziva se programiranje ili kodiranje
(c)dkuhar, 2005.22
Programiranje primjer
10 REM Opseg i površina pravokutnika20 CLS30 A = 12.3 :REM Stranica A pravokutnika40 B = 8.2 :REM Stranica B pravokutnika50 OPSEG = 2 * A + 2 * B :REM Formula za
opseg60 POV = A * B
:REM Formula za
površinu70 PRINT OPSEG :REM Ispis opsega80 PRINT POV :REM Ispis površine
•
Primjer jednostavnog programa u programskom jeziku BASIC
(c)dkuhar, 2005.23
Provjera programa
•
Provjera ispravnog i željenog ponašanja programa (provjerava i proizvođač
programa i korisnik)
Zaboravio si da ovdje ja odlučujem
(c)dkuhar, 2005.24
Pogreška u programu
•
U računalom nazivlju pogreške su dobile i posebno ime: engl. bug
(čita se bag)
•
Bug
je ime za trajnu pogrešku u programu ili sklopovlju računala. Pogreška dovodi do neželjenog ponašanja računala, a katkad može izazvati i opasne posljedice, primjerice, brisanje podataka s diska
(c)dkuhar, 2005.26
Održavanje programa
•
Postupak mijenjanja programa tijekom životnog vijeka programa i poduka korisnika o uporabi programa
•
Često se održavanje svodi na instaliranje nove inačice programa
(c)dkuhar, 2005.27
Izrada dokumentacije
•
Izrada dokumentacije za korisnika (priručnici i sl.) i za održavanje programa
(c)dkuhar, 2005.28
Strukturno programiranje
•
Strukturno programiranje (engl. structured
programing) skup je
programskih postupaka koji vode logičkoj organizaciji i čitljivosti programa
•
Logička organizacija programa olakšava pisanje, održavanje i popravak programa
(c)dkuhar, 2005.29
Modularno programiranje
•
Modularno programiranje je prva i najvažnija metoda strukturnog programiranja
•
Modularno programiranje sastoji se u podjeli programa u manje cjeline, koje se mogu neovisno pisati i provjeravati, a po završetku ugraditi u glavni program
(c)dkuhar, 2005.30
Strukturni programski jezici
•
Strukturno orijentirani jezici (npr. Pascal, dBase, Ada) prisiljavaju programera na strukturno programiranje, za razliku od nestrukturnih jezika (npr. BASIC, FOR-TRAN, COBOL) koji prepuštaju građu programa u potpunosti programeru
(c)dkuhar, 2005.31
Prednosti srtukturnog programiranja
•
Strukturno orijentirani jezici ograničavaju slobodu programera i tjeraju ga na programsku disciplinu i urednost, uzvraćajući mu uštedom truda pri dokumentiranju, održavanju i popravcima programa
(c)dkuhar, 2005.32
Sažetak 1
•
Pri izradi računalnog programa planiranje može uštedjeti puno truda, vremena i novca. Planiranjem se predviđa tko će, kada i što raditi.
•
Specifikacija je dokument koji sadržava podroban popis i opis zadataka i željenih rezultata
•
Algoritam je naputak kako riješiti neki zadatak ili obaviti neki posao
(c)dkuhar, 2005.33
Sažetak 2
•
Dijagram tijeka (engl. flow chart) je grafički prikaz programa koji olakšava izradu programa
•
Pseudokôd je tobožnji program (grč.
pseudos
laž) jer premda sliči
računalnom programu, zapravo nije napisan u programskom jeziku koji bi se mogao izravno primijeniti na bilo kojemu računalu. Pseudokôd se sastoji od kratkih izraza na govornom jeziku koji opisuju i ukratko objašnjavaju pojedine zadatke algoritma
(c)dkuhar, 2005.34
Sažetak 3
•
Kako bi se neki zadatak moga riješiti pomoću računala, potrebno je računalu na početku dati određene podatke (kako zadatak treba riješiti, koji su podaci na raspolaganju i sl.). Taj se postupak zove upis.
•
Rezultat računalo mora priopćiti na neki način okolini. To se zove ispis podataka.
•
Kada se varijabli želi dodijeliti neka vrijednost u računalnom programu, kaže se da joj se pridružuje određena vrijednost
(c)dkuhar, 2005.35
Sažetak 4
•
Grananje je programska struktura koja omogućuje različiti tijek programa, ovisno o zadovoljenju postavljenog uvjeta
•
Petlja je programska struktura kojom je opisano opetovano ponavljanje neke radnje
•
Program je skup naredaba nanizanih strogo utvrđenim redoslijedom, čijim se izvršenjem obavlja željeni posao. Čovjek koji piše program naziva se programer, a postupak nastanka programa naziva se programiranje ili kodiranje.
(c)dkuhar, 2005.36
Sažetak 5
•
Nakon što je program gotov, treba ga provjeriti. Provjeru ili testiranje programa provodi proizvođač
programa i neovisni ispitivači.•
Održavanje programa je postupak mijenjanja programa tijekom njegovog životnog vijeka
•
Važan dio izrade programa je izrada dokumentacije za korisnika i za kasnije održavanje programa
(c)dkuhar, 2005.37
Sažetak 6
•
U dokumentaciju se ubrajaju, primjerice, uputa za instaliranje programa, priručnici za korisnika, tehnički opis programa i samo ponekad izvorni program.
•
Strukturno programiranje (engl. structured programing) skup je programskih postupaka koji vode logičkoj organizaciji i čitljivosti programa.
(c)dkuhar, 2005.38
Sažetak 7
•
Logička organizacija programa olakšava pisanje, održavanje i popravak programa.
•
Ispravljanje, dopuna i poduka korisnika o uporabi programa naziva se održavanje programa.