Primjena računala. Preddiplomski studij računarstva 2010/2011. prof.dr.sc. Ivo Ipšić PRIMJENA RAČUNALA 2010/2011

Σχετικά έγγραφα
2 tg x ctg x 1 = =, cos 2x Zbog četvrtog kvadranta rješenje je: 2 ctg x

(P.I.) PRETPOSTAVKA INDUKCIJE - pretpostavimo da tvrdnja vrijedi za n = k.

7 Algebarske jednadžbe

Προγραμματισμό για ΗΜΥ

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011

Strukture podataka i algoritmi 1. kolokvij 16. studenog Zadatak 1

PRIMJERI RJEŠAVANJA ZADATAKA

M086 LA 1 M106 GRP. Tema: Baza vektorskog prostora. Koordinatni sustav. Norma. CSB nejednakost

Κεφάλαιο : Εισαγωγή στην C: (Διαλέξεις 3-4)

TRIGONOMETRIJSKE FUNKCIJE I I.1.

Sortiranje prebrajanjem (Counting sort) i Radix Sort

Δομημένος Προγραμματισμός (ΤΛ1006)

Κεφάλαιο : Εισαγωγή στην C. ( ιαλέξεις 3-4) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

ΕΠΛ 032.3: Προγραµµατισµός ΜεθόδωνΕπίλυσηςΠροβληµάτων

DISKRETNA MATEMATIKA - PREDAVANJE 7 - Jovanka Pantović

UNIVERZITET U NIŠU ELEKTRONSKI FAKULTET SIGNALI I SISTEMI. Zbirka zadataka

Konstruisati efikasan algoritam znači dati skup preciznih uputstava kako doći do rešenja zadatog problema Algoritmi se mogu opisivati:

Γλώσσα Προγραμματισμού C

Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: ΕΠΛ 131 Αρχές Προγραµµατισµού I 3-2

Η Γλώσσα C Μία Σφαιρική Ανασκόπηση

Operacije s matricama

Προγραμματισμός Η/Υ (ΤΛ2007 )

ELEKTROTEHNIČKI ODJEL

3.1 Granična vrednost funkcije u tački

3 &4. Εισαγωγήστη C Ιωάννης Κατάκης

Računarska grafika. Rasterizacija linije

Neka je a 3 x 3 + a 2 x 2 + a 1 x + a 0 = 0 algebarska jednadžba trećeg stupnja. Rješavanje ove jednadžbe sastoji se od nekoliko koraka.

Algoritmi i strukture podataka - 1.cas

a M a A. Može se pokazati da je supremum (ako postoji) jedinstven pa uvodimo oznaku sup A.

ZBIRKA POTPUNO RIJEŠENIH ZADATAKA

INTELIGENTNO UPRAVLJANJE

Οντοκεντρικός Προγραμματισμός

radni nerecenzirani materijal za predavanja R(f) = {f(x) x D}

( , treći kolokvij) 3. Na dite lokalne ekstreme funkcije z = x 4 + y 4 2x 2 + 2y 2 3. (20 bodova)

Pismeni ispit iz matematike Riješiti sistem jednačina i diskutovati rješenja sistema u zavisnosti od parametra: ( ) + 1.

RIJEŠENI ZADACI I TEORIJA IZ

18. listopada listopada / 13

PRIMJER 3. MATLAB filtdemo

Trigonometrija 2. Adicijske formule. Formule dvostrukog kuta Formule polovičnog kuta Pretvaranje sume(razlike u produkt i obrnuto

2.2 Srednje vrijednosti. aritmetička sredina, medijan, mod. Podaci (realizacije varijable X): x 1,x 2,...,x n (1)

MATRICE I DETERMINANTE - formule i zadaci - (Matrice i determinante) 1 / 15

Δομημένος Προγραμματισμός

Π. Σταθοπούλου ή Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7

Osnovni primer. (Z, +,,, 0, 1) je komutativan prsten sa jedinicom: množenje je distributivno prema sabiranju

Λειτουργικά Συστήματα

MATEMATIKA Pokažite da za konjugiranje (a + bi = a bi) vrijedi. a) z=z b) z 1 z 2 = z 1 z 2 c) z 1 ± z 2 = z 1 ± z 2 d) z z= z 2

Numerička matematika 2. kolokvij (1. srpnja 2009.)

Kaskadna kompenzacija SAU

5. Karakteristične funkcije

radni nerecenzirani materijal za predavanja

Small Basic zadatci - 8. Razred

Teorijske osnove informatike 1

Računarska grafika. Rasterizacija linije

1. Osnove programiranja

Funkcija gustoće neprekidne slučajne varijable ima dva bitna svojstva: 1. Nenegativnost: f(x) 0, x R, 2. Normiranost: f(x)dx = 1.

Funkcije dviju varjabli (zadaci za vježbu)

numeričkih deskriptivnih mera.

Algoritmi i strukture podataka (450)

Ulaz i izlaz podataka

Najjednostavnija metoda upravljanja slijedom instrukcija:

PARCIJALNI IZVODI I DIFERENCIJALI. Sama definicija parcijalnog izvoda i diferencijala je malo teža, mi se njome ovde nećemo baviti a vi ćete je,

Η γλώσσα προγραμματισμού C

Programski jezik C - 1. deo. Struktura C-programa. Struktura programa u C-u. (materijal sa predavanja D. Vitasa)

Dijagonalizacija operatora

Linearna algebra 2 prvi kolokvij,

EXIT. Programski jezik C - 6. deo. Funkcija exit. (materijal sa predavanja D. Vitasa)

ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ

IspitivaƬe funkcija: 1. Oblast definisanosti funkcije (ili domen funkcije) D f

Veleučilište u Rijeci Stručni studij sigurnosti na radu Akad. god. 2011/2012. Matematika. Monotonost i ekstremi. Katica Jurasić. Rijeka, 2011.

APROKSIMACIJA FUNKCIJA

1.4 Tangenta i normala

Kontrolni zadatak (Tačka, prava, ravan, diedar, poliedar, ortogonalna projekcija), grupa A

Program testirati pomoću podataka iz sledeće tabele:

TRIGONOMETRIJA TROKUTA

POTPUNO RIJEŠENIH ZADATAKA PRIRUČNIK ZA SAMOSTALNO UČENJE

Ηλεκτρονικοί Υπολογιστές

Programski jezik C. M. Jurak. predavanja. ak. g. 2003/04.

π π ELEKTROTEHNIČKI ODJEL i) f (x) = x 3 x 2 x + 1, a = 1, b = 1;

Sistemi veštačke inteligencije primer 1

Elementi spektralne teorije matrica

Algoritmi zadaci za kontrolni

Iskazna logika 3. Matematička logika u računarstvu. novembar 2012

Pismeni ispit iz matematike GRUPA A 1. Napisati u trigonometrijskom i eksponencijalnom obliku kompleksni broj, zatim naći 4 z.

Riješeni zadaci: Nizovi realnih brojeva

Γεώργιος Δημητρίου Προσαρμογή Εισαγωγικού Μαθήματος από Prof. Stephen A. Edwards (Columbia University)

6 Polinomi Funkcija p : R R zadana formulom

Doc. dr. sc. Markus Schatten. Zbirka rješenih zadataka iz baza podataka

Δεδομένα, Τύποι και Τιμές

Αλγόριθμοι. Χρυσόστομος Στύλιος. Εργαστήριο Γνώσης και Ευφυούς Πληροφορικής. Δομές Δεδομένων & Αλγόριθμοι 1

( ) ( ) Zadatak 001 (Ines, hotelijerska škola) Ako je tg x = 4, izračunaj

Matematika 1 - vježbe. 11. prosinca 2015.

Matematička analiza 1 dodatni zadaci

1. Pojam fazi skupa. 2. Pojam fazi skupa. 3. Funkcija pripadnosti, osobine i oblici. 4. Funkcija pripadnosti, osobine i oblici

IZRAČUNAVANJE POKAZATELJA NAČINA RADA NAČINA RADA (ISKORIŠĆENOSTI KAPACITETA, STEPENA OTVORENOSTI RADNIH MESTA I NIVOA ORGANIZOVANOSTI)

IZVODI ZADACI ( IV deo) Rešenje: Najpre ćemo logaritmovati ovu jednakost sa ln ( to beše prirodni logaritam za osnovu e) a zatim ćemo

INTEGRALNI RAČUN. Teorije, metodike i povijest infinitezimalnih računa. Lucija Mijić 17. veljače 2011.

Η γλώσσα προγραμματισμού C

Prikaz algoritma, pseudo-kod. Prikaz algoritma LOGIKA PROGRAMIRANJA

FTN Novi Sad Katedra za motore i vozila. Teorija kretanja drumskih vozila Vučno-dinamičke performanse vozila: MAKSIMALNA BRZINA

Uvod u teoriju brojeva

Transcript:

Primjena računala Preddiplomski studij računarstva 2010/2011 prof.dr.sc. Ivo Ipšić 1

Saržaj kolegija Primjena računala Uvod i razvoj računala Programska oprema računala Uvod u programiranje i programski jezik C 2

Sadržaj Algoritam Kompleksnost algoritma Elementi programa Strukturirano programiranje Prevođenje i izvršavanje programa 3

Algoritam Slijed pravila koja daju rješenja nekog problema Definiraju se objekti nad kojima se obavljaju operacije Rezultat obrade su završni objekti Broj koraka koje izvodi algoritam mora biti konačan Izvršavanje algoritma mora biti u konačnom vremenu Svaki korak algoritma je opisan instrukcijom 4

Algoritam mora biti: razumljiv jednostavna implementacija jednostavno otklanjanje pogreški efikasna iskorištenost računalnih resursa brzina vs. prostor... jednokratna upotreba (troškovi razvoja) učestala upotreba (troškovi korištenja) 5

Algoritam Program - Opis algoritma koji u nekom programskom jeziku jednoznačno određuje što računalo treba napraviti. Algoritmi + strukture podataka = PROGRAMI algoritamski proces programski jezici = umjetni jezici objekti = podaci klase objekata = tipovi podataka 6

Cijena ukoliko algoritam radi često i s velikom količinom podataka isplati se potrošiti resurse (vrijeme i rad) na njegovo optimiranje isplati se implementirati kompleksniji algoritam koji će raditi efikasnije (vremenski i prostorno) potrebno uvesti mjeru kompleksnosti algoritma, koja će ocijeniti njegove vremenske i prostorne potrebe 7

Vrijeme izvođenja programa ovisi od: količine i vrste ulaznih podataka u program kvalitete kode koju generira compiler brzini i performansama računala (sklopovlja) vremenskoj zahtjevnosti (kompleksnosti) algoritma 8

Primjer I sortiranje (najprije najmanji) 9 2 1 3 1 5 8 1 1 2 3 5 8 mjera kompleksnosti: broj elemenata koje sortiramo odnosno dužina liste T(n) vrijeme potrebno za izvođenje programa, koji na ulazu ima n podataka T(n) = broj potrebnih instrukcija za izvršenje zadataka na idealnom računalu

Vremenska kompleksnost ovisi od količine ulaznih podataka ali i od njihove vrijednosti za različite vrijednosti na ulazu različita kompleksnost: T(n) najgori slučaj T pr (n) - prosječno gdje je n broj ulaznih podataka najčešće se koristi T(n) - vrijeme izvođenja u najgorem slučaju 10

Vremenska kompleksnost II dužina izvođenja ovisi i o radu compilera i brzini sklopovlja, zato je vrijeme teško izraziti u standardnim vremenskim jedinicama zato se kaže da je vrijeme izvođenja algoritma proporcionalno npr. n 2 uvodi se mjera rasta funkcije O(f(n)) O(f(n)) je gornja procjena rasta funkcije Ω(f(n)) je donja procjena rasta funkcije 11

Primjer II T(0) = 1 T(1) = 4 T(n) = (n+1) 2 O(n 2 ) T(n) = 3n 3 + 2n 2 O(n 3 ) T(n)= n log(n)+n O(n log(n)) 12

T(n) 2 n n 3/2 5n 2 3000 100 n 2000 1000 13 5 10 15 20 n

Razvoj programske opreme 1. ukoliko će se program koristiti samo nekoliko puta: udio troškova pisanja i testiranja je značajan u ukupnom trošku 2. ukoliko različite osobe razvijaju i održavaju: algoritam efikasan ali kompleksan, raste trošak održavanja 3. poneki algoritmi rade brzo ali zahtijevaju puno prostora i zato koriste spore vanjske memorije i time postaju spori 4. kod numeričkih algoritama je točnost i stabilnost barem isto toliko važna kao i brzina 14

Pregled programskih jezika 15 Copyright 2006 Addison-Wesley. 1-15

16 16

Koje osobine mora imati programski jezik? razvoj interpreterski, izvođenje u prevedenoj verziji dobro otklanjanje pogreški (debug) jasna i jednostavna sintaksa široka grupa korisnika namjenjeni za vrstu problema koju rješavamo brzo kodiranje, portabilnost,...... svaki programer ima svoju listu želja! 17 17

Programski jezik C Razvijen za potrebe razvoja UNIX operacijskog sustava (Dennis Ritchie, Bell Telephone Laboratories, 1970) prenosivost UNIX operacijskog sustava na razna računala jezgra operacijskog sustava napisana u višem programskom jeziku C 18

Programski jezik C C je programski jezik blizak arhitekturi računala aritmetičke, logičke, relacijske operacije operacije na bitovima (posmak, logički operatori) C omogućava i lakši rad s podacima izvedene strukture podataka: polja, strukture, datoteke,... organizacija programa u funkcije, koje mogu biti u različitim datotekama 19

Programski jezik C programska biblioteka, sadrži strojno ovisne funkcije funkcije za unos i ispis podataka funkcije za formatirani unos i ispis matematičke funkcije funkcije za rad s datotekama,... header datoteke koje sadrže deklaracije funkcija i tipova podataka 20

Programski jezik C ANSI-C opisan u knjizi Kernighan B. W., Ritchie D. M., The C Programming Language, Prentice Hall, Inc., 1988. ANSI/ISO standard 1990. godine C90 1999. novi ISO standard manje dopune C90 standard C99 21

Prevođenje programa programe napisane u nekom programskom jeziku je potrebno prevesti u strojni kod interpreter prevodioc (compiler) 22

Prevođenje programa Z :=A + B; MVT 1024 ADD 1025 MVF 1026 1110011001100000 1100011000001100 0111100001111001 23

Prevođenje programa 24

Programski kod tekst C program (p1.c) prevodioc - compiler (gcc -S) tekst asemblerski program (p1.s) asembler (gcc, as) binarni kod objektni program (p1.o) binarni kod 25 Izvršni program (p)

Programski kod int zbroji(int x, int y) { int zbroj; } return zbroj=x+y; 26

Programski kod prevođenje izvornog programa u asemblerski kod gcc O2 S zbroji.c gcc - GNU compiler prikaz asembleskog programa objdump -d zbroji.s 27

Programski kod zbroji.o: file format pe-i386 Disassembly of section.text: 00000000 <_zbroji>: 0: 55 push %ebp 1: 89 e5 mov %esp,%ebp 3: 8b 45 0c mov 0xc(%ebp),%eax 6: 8b 55 08 mov 0x8(%ebp),%edx 9: 5d pop %ebp a: 01 d0 add %edx,%eax c: c3 ret d: 90 nop e: 90 nop f: 90 nop 28 objektni kod asemblerski kod

Programski kod instrukcija zbroji zbroj=x+y registri mikroprocesora 01 d0 add %edx,%eax 0000000111010000 16-bitna instrukcija 29

Prevođenje programa 30

Prevodioc (Compiler) 31

Razvojna okolina 32

KDevelop 33

PRIMJER Programski zadatak pronaći veći od dva zadana broja Pseudokod koji koristi isključivo termine govornog jezika pročitaj dva realna broja ispiši pročitane brojeve odredi veći broj ispiši nađeni broj 34

Pseudokod pročitaj (x,y) ispiši (x,y) {odredi veći broj} ako je x > y tada rez := x inače rez := y ispiši (rez) kraj 35

Dijagram toka početak učitaj x i y ispiši x i y DA x>y NE rez = x rez = y ispiši rez 36 kraj

Varijable svi podaci moraju imati imena i tip tip podataka je oznaka prevodiocu koliko memorijskog prostora je potrebno za zapis vrijednosti neke varijable npr. deklaracija varijable a kao cijeli broj int a znači da je prevodioc rezervirao 4 bajta memorije za zapis varijable 37

Varijable Općenito: promjenljiv podatak (lat.variabilis-promjenljiv) U programiranju: podatak smješten u memoriji računala, poznate veličine, koji se može mijenjati i kojemu je dodijeljeno ime Simbolički se prikazuje pravokutnikom uz koji stoji ime x y Smještaj u memoriji računala...... x y 38

Instrukcije programa instrukcije za aritmetičke i logičke operacije instrukcije za određivanje toka programa instrukcije za ponavljanje dijelova programa instrukcije za ulaz i izlaz podataka 39

Instrukcije za aritmetičke i logičke operacije operator pridruživanja = operator jednakost == nejednakost!= aritmetički operatori: * / % + - 40

Instrukcije za određivanje toka programa Normalan programski slijed (sekvencija instrukcija): instrukcija_1 instrukcija_1 instrukcija_2 instrukcija_2 instrukcija_3 instrukcija_3... 41

Selekcija - kontrolna instrukcija if - jednostrana selekcija Pseudokôd ako je logički_izraz istinit tada naredbe U C-u if (logički_izraz) naredba logički_izraz D niz naredbi N 42 ili if (logički_izraz){ niz naredbi }

Pseudokôd ako je logički_izraz istinit tada niz_naredbi_1 inače niz_naredbi_2 43 U C-u Kontrolna instrukcija if - dvostrana selekcija if (logički_izraz){ niz_naredbi_1 } else { niz_naredbi_2 } D niz naredbi_1 logički_izraz N niz naredbi_2

Instrukcije za ponavljanje dijelova programa iteracije instrukcija - petlje kontrolne varijable za izvođenje iteracija (unaprijed zadan) logički izrazi (ispitivanje uvjeta), koji određuju broj iteracija 44

Instrukcije za ulaz i izlaz podataka čitanje ulaznih podataka (standardni ulaz, datoteka) ispis podataka ( zaslon, datoteka, štampač,...) funkcije u C-u 45

Funkcija za ispis printf(const char *format [, argument]... ) printf( Dobar dan \n "); printf("%f \n", rez); formatirani ispis konstantni znakovni niz sadrži informaciju o formatu ispisa printf("%5.1f\n",ime_varijable);

Funkcija printf %format predstavlja oblik podatka koje unosimo odnosno ispisujemo Format: d cijeli broj(integer) ld dugi cijeli broj(long) f realni broj (float) c znak s niz znakova 47

Funkcija za unos podataka scanf(const char *format [,argument]... ); scanf("%f", &a); varijabla a tipa float operator & - adresni operator &a = adresa varijable a

Struktura programa u C-u naredbe pretprocesora deklaracija tipova podataka deklaracija varijabli prototipovi funkcija deklaracija tipova funkcija i varijabli koje se unose u funkciju definicija funkcija 49

Struktura programa u C-u programi su organizirani u funkcije oblik funkcije: tip_funkcije ime_funkcije(varijable) { lokalne varijable naredbe } 50

Primjer funkcije 1: /* Funkcija zbroji_dva_broja zbraja dva cijela broja i vrača zbroj*/ 2: int zbroji_dva_broja( int x, int y ) 3: { 4: int result; 5: result = x + y; 6: return result; 7: } 51

Struktura programa u C-u svaki program mora sadržavati barem jednu funkciju main (glavna) main glavni program unutar kojega se mogu pozivati ostale funkcije int main () {...... return 0; } 52

PRIMJER #include <stdio.h> int main() { float x, y, rez; scanf("%f %f", &x, &y); printf("%f %f \n", x, y); 53 /* odredi veći broj */ if ( x > y ) { rez = x; } else { rez = y; } printf("%f \n", rez); return 0; }

Elementi C-programa definicija 3 varijable x, y i rez funkcija za čitanje sa ulaza funkcija za ispis #include <stdio.h> int main() { float x, y, rez; scanf("%f %f ", &x, &y); printf("%f %f \n", x, y); /* odredi veci broj */ if ( x > y ) { rez = x; } else { rez = y; } poziv knjiznice stdio.h glavna funkcija 54 } printf("%f \n", rez); return 0;

Elementi jezika C ključne riječi programskog jezika C sadrže definicje tipova podataka i naredbe programskog jezika: auto double int struct break else long switch case enum register typedef char extern return union const float short unsigned continue for signed void default goto sizeof volatile do if static while 55

Prvi program #include <stdio.h> naredba predprocesoru int main() { početak funkcije printf( Dobar dan \n "); return 0; glavna funkcija funkcija za ispis } kraj funkcije 56

Osnovni tipovi podataka u C-u char - znakovni tip ili mali cijeli broj int - cjelobrojni tip float - realni tip double - realni tip u dvostrukoj preciznosti 57

Operatori * / % + - < <= >= > ==!= & &&?: (right->left) = += -= (right->left) 58

Primjer rješenja kvadratne jednadžbe ax 2 +bx+c=0 diskriminanta D=b 2-4ac rješenja ovise od D D>0 D=0 x 1 = x 2 = 59 D<0 -b- D 2a -b+ D 2a

Struktogram unesi vrijednosti a,b,c izračunaj D = b 2 4ac da D>0? ne f ima realne različite korijene da f ima dvostruki realni korijen D=0? ne f nema realne korijene kraj programa 60

#include <stdio.h> #include <math.h> int main() { float a, b, c; /* parametri jednadzbe */ float dis; /* diskriminanta */ /* inicijalizacija i citanje parametara */ printf("a="); scanf("%f", &a); printf("b="); scanf("%f", &b); printf("c="); scanf("%f", &c); 61

/* izracun diskriminante */ dis= b*b-4*a*c; 62

/* izracun korijena */ if (dis == 0) /* dvostruki korijen */ printf(" rjesenje - dvostruki korijen = %f\n", -b/(2.0*a)); else if (dis>0){ /* realni razliciti korijeni */ printf("1. korijen = %f\n", (sqrt(dis)-b)/(2.0*a)); } else printf("2. korijen = %f\n", (-sqrt(dis)-b)/(2.0*a)); /* nema realnih korijena */ 63 } printf("f nema realnih korijena\n"); return 0;

#include <stdio.h> #include <math.h> int main() { float a, b, c; /* parametri jednadzbe */ float dis; /* diskriminanta */ /* inicijalizacija i citanje parametara */ printf("a="); scanf("%f", &a); printf("b="); scanf("%f", &b); printf("c="); scanf("%f", &c); /* izracun diskriminante */ dis= b*b-4*a*c; /* izracun korijena */ if (dis == 0) else if (dis>0){ /* dvostruki korijen */ printf(" rjesenje - dvostruki korijen = %f\n", -b/(2.0*a)); /* realni razliciti korijeni */ printf("1. korijen = %f\n", (sqrt(dis)-b)/(2.0*a)); } else printf("2. korijen = %f\n", (-sqrt(dis)-b)/(2.0*a)); 64 } return 0; /* nema realnih korijena */ printf("f nema realnih korijena\n");

Primjer program ispisuje tablicu za pretvaranje stupnjeva u fahrenheitima u celsijuse prema formuli ºC = (5/9)( ºF-32) ispis programa: 0.0-17.8 20.0-6.7 40.0 4.4 60.0 15.6 80.0 26.7 100.0 37.8 120.0 48.9 140.0 60.0 160.0 71.1 180.0 82.2 200.0 93.3 220.0 104.4 240.0 115.6 260.0 126.7 280.0 137.8 300.0 148.9 65

Primjer #include <stdio.h> main () { float cel, faren; int donji, gornji, korak; donji = 0; gornji = 300; korak = 20; faren = donji; while (faren <= gornji) { cel = (5.0/9.0)*(faren-32.0); printf("%5.1f%8.1f\n",faren,cel); faren = faren+20; } } 66

for petlja Naredbe za ponavljanja for(izraz_1;izraz_2;izraz_3) izraz_1 inicijalizacija brojača { izraz_2 uvjet brojača naredba_1; izraz_3 inkrement/dekrement brojača naredba_2:.. } while petlja while (uvjet) { naredba_1; naredba_2:.. } 67 naredba switch

Naredbe za ponavljanja while petlja while (faren <= gornji) { cel = (5.0/9.0)*(faren-32.0); printf("%5.1f%8.1f\n",faren,cel); faren = faren+20; } for petlja for (faren=0; faren<= 300; faren=faren+20) printf("%5.1f%8.1f\n",faren,(5.0/9.0)*(faren-32.0)); 68

Literatura Kernighan B. W., Ritchie D. M., The C Programming Language, Prentice Hall, Inc., 1988. Rajko Vulin: Od sada programiramo u C-u, Turbo C, Školska knjiga, Zagreb 1991. Rajko Vulin: "Zbirka riješenih zadataka iz C- a", Školska knjiga, Zagreb 1995. 69