Top Banner
(c)dkuhar, 2005. 1 Programiranje
39

Programiranje - os-klinca-sela.skole.hr · 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:

Sep 06, 2019

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Programiranje - os-klinca-sela.skole.hr · 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:

(c)dkuhar, 2005.1

Programiranje

Page 2: Programiranje - os-klinca-sela.skole.hr · 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:

(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

Page 3: Programiranje - os-klinca-sela.skole.hr · 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:

(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

Page 4: Programiranje - os-klinca-sela.skole.hr · 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:

(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

Page 5: Programiranje - os-klinca-sela.skole.hr · 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:

(c)dkuhar, 2005.5

Specifikacija

Specifikacija je dokument koji sadrži podroban popis i opis zadataka i željenih rezultata

Page 6: Programiranje - os-klinca-sela.skole.hr · 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:

(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

Page 7: Programiranje - os-klinca-sela.skole.hr · 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:

(c)dkuhar, 2005.7

Algoritam

1. Zagrij vodu2. Stavi vrećicu čaja3. Ostavi stajati 5 minuta4. Posluži

Page 8: Programiranje - os-klinca-sela.skole.hr · 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:

(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

Page 9: Programiranje - os-klinca-sela.skole.hr · 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:

(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

Page 10: Programiranje - os-klinca-sela.skole.hr · 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:

(c)dkuhar, 2005.10

Dijagram tijeka primjer 1

Engl. flow

chart•

Grafički prikaz programa koji olakšava izradu programa

Page 11: Programiranje - os-klinca-sela.skole.hr · 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:

(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

Page 12: Programiranje - os-klinca-sela.skole.hr · 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:

(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

Page 13: Programiranje - os-klinca-sela.skole.hr · 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:

(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

Page 14: Programiranje - os-klinca-sela.skole.hr · 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:

(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

Page 15: Programiranje - os-klinca-sela.skole.hr · 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:

(c)dkuhar, 2005.15

Grananje

Programska struktura koja omogućuje različiti tijek programa, ovisno o rezultatu

Je

li

x > 0 ?

DANE

x=0

Page 16: Programiranje - os-klinca-sela.skole.hr · 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:

(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

Page 17: Programiranje - os-klinca-sela.skole.hr · 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:

(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….

Page 18: Programiranje - os-klinca-sela.skole.hr · 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:

(c)dkuhar, 2005.18

Petlja primjer nastavak

Ponoviti 100 puta petljuIspisati "Upiši cijeli broj"Upis brojaKraj petlje

Pišemo ovo….

Page 19: Programiranje - os-klinca-sela.skole.hr · 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:

(c)dkuhar, 2005.19

Petlja dijagram tijekaSTART

n = 1

STOP

NE

obrada podataka

n = 10

?

n = n + 1DA

Page 20: Programiranje - os-klinca-sela.skole.hr · 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:

(c)dkuhar, 2005.20

Programiranje definicija

Pisanje skupa naredaba nanizanih određenim redom u izabranom programskom jeziku

Page 21: Programiranje - os-klinca-sela.skole.hr · 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:

(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

Page 22: Programiranje - os-klinca-sela.skole.hr · 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:

(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

Page 23: Programiranje - os-klinca-sela.skole.hr · 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:

(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

Page 24: Programiranje - os-klinca-sela.skole.hr · 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:

(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

Page 25: Programiranje - os-klinca-sela.skole.hr · 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:

(c)dkuhar, 2005.25

Bug

Page 26: Programiranje - os-klinca-sela.skole.hr · 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:

(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

Page 27: Programiranje - os-klinca-sela.skole.hr · 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:

(c)dkuhar, 2005.27

Izrada dokumentacije

Izrada dokumentacije za korisnika (priručnici i sl.) i za održavanje programa

Page 28: Programiranje - os-klinca-sela.skole.hr · 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:

(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

Page 29: Programiranje - os-klinca-sela.skole.hr · 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:

(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

Page 30: Programiranje - os-klinca-sela.skole.hr · 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:

(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

Page 31: Programiranje - os-klinca-sela.skole.hr · 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:

(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

Page 32: Programiranje - os-klinca-sela.skole.hr · 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:

(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

Page 33: Programiranje - os-klinca-sela.skole.hr · 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:

(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

Page 34: Programiranje - os-klinca-sela.skole.hr · 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:

(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

Page 35: Programiranje - os-klinca-sela.skole.hr · 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:

(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.

Page 36: Programiranje - os-klinca-sela.skole.hr · 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:

(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

Page 37: Programiranje - os-klinca-sela.skole.hr · 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:

(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.

Page 38: Programiranje - os-klinca-sela.skole.hr · 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:

(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.

Page 39: Programiranje - os-klinca-sela.skole.hr · 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:

(c)dkuhar, 2005.39

Korišteni materijali

1.

Informatika, udžbenik za 1. razred opće, jezične i klasične gimnazije, Darko Grundler, Školska knjiga, Zagreb, 2002., str.107.-126.

2.

Informatika 1, priručnik za nastavnike, Armando Slaviček, Školska knjiga, Zagreb 2003, str 66.