Programiranje 1 programski jezik c

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Napisala Borka Jadrijević
Advertisements

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Ευάγγελος Γ. Ούτσιος Θεόδωρος Γ. Λάντζος.
ΔΟΜΗ ΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΟΣ ΣΕ C 1.Σχόλια 2.Οδηγίες προεπεξεργαστή 3.Ορισμοί τύπων 4.Δηλώσεις συναρτήσεων (πρωτότυπα) 5.Ορισμός της main 6.Ορισμοί συναρτήσεων.
Funkcionalno programiranje
Επανάληψη.
Ενισχυτική διδασκαλία
Π Ι Ν Α Κ Ε Σ (arrays) ΤΑΞΙΝΟΜΗΣΗ
KRUŽNICA I KRUG VJEŽBA ZA ISPIT ZNANJA.
Ενισχυτική διδασκαλία
ΕΝΤΟΛΕΣ ΕΠΙΛΟΓΗΣ Η εντολή if if ( παράσταση) εντολή επόμενη εντολή.
ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΓΛΩΣΣΑ C
Τεχνολογία και Προγραμματισμός Υπολογιστών
Asimetrični algoritmi kriptiranja
Laboratorijske vežbe iz Osnova Elektrotehnike
MS Excel 2003.
Ogledni čas iz matematike
PTP – Vježba za 2. kolokvij Odabir vrste i redoslijeda operacija
KOMBINATORIKA Vežbe 1 1.
AOS
Kliknite ovde za unos prikaza časa u Word dokumentu!
Kliknite ovde za unos prikaza časa u Word dokumentu!
PROIZVODNJA.
BROJ π Izradio: Tomislav Svalina, 7. razred, šk. god /2016.
NASLOV TEME: OPTICKE OSOBINE KRIVIH DRUGOG REDA
Digitalna logika i minimizacija logičkih funkcija
Čvrstih tela i tečnosti
SNAGA U TROFAZNOM SUSTAVU I RJEŠAVANJE ZADATAKA
Generator naizmenične struje
Toplotno sirenje cvrstih tela i tecnosti
RAD I SNAGA ELEKTRIČNE STRUJE
POLINOMI :-) III℠, X Силвија Мијатовић.
VREMENSKI ODZIVI SISTEMA
Funkcije u Excelu Lovorka Muminović.
SPECIJALNE ELEKTRIČNE INSTALACIJE
Merni uređaji na principu ravnoteže
Programski jezik C.
Metode za rešavanja kola jednosmernih struja
Ojlerovi uglovi Filip Luković 257/2010 Uroš Jovanović 62 /2010
Merni uređaji na principu ravnoteže
Vijetove formule. Rastavljanje kvadratnog trinoma na linearne činioce
TROUGΔO.
Vijetove formule. Rastavljanje kvadratnog trinoma na linearne činioce
JEDNAČINA PRAVE Begzada Kišić.
Podsetnik.
Obrada slika dokumenta
Elektronika 6. Proboj PN spoja.
KRETANJE TELA U SREDINI SA PRIGUŠENJEM – PROBLEM KIŠNE KAPI
MATEMATIČKI MODELI EFIKASNOSTI
FORMULE SUMIRANJE.
Normalna raspodela.
Strujanje i zakon održanja energije
Izolovanje čiste kulture MO
Polifazna kola Polifazna kola – skup električnih kola napajanih iz jednog izvora i vezanih pomoću više od dva čvora, kod kojih je svako kolo pod dejstvom.
Analiza deponovane energije kosmičkih miona u NaI(Tl) detektoru
Transformacija vodnog vala
Primjena Pitagorina poučka na kvadrat i pravokutnik
Potenciranje i korjenovanje komleksnih brojeva
10. PLAN POMAKA I METODA SUPERPOZICIJE
Booleova (logička) algebra
Deset zapovijedi – δεκα λογοι (Izl 34,28 Pnz 10,4)
Dan broja pi Ena Kuliš 1.e.
POUZDANOST TEHNIČKIH SUSTAVA
Natjecanje u pamćenju decimala broja π
Balanced scorecard slide 1
Kako izmjeriti opseg kruga?
DAN BROJA π.
Broj Pi (π).
Tehnička kultura 8, M.Cvijetinović i S. Ljubović
PONOVIMO Što su svjetlosni izvori? Kako ih dijelimo?
OŠ ”Jelenje – Dražice” Valentina Mohorić, 8.b
Μεταγράφημα παρουσίασης:

Programiranje 1 programski jezik c Staša Vujičić Čas 9

funkcije Veliki računski zadaci mogu se razbiti u manje delove i time se omogućava ljudima da iskoriste ono što su neki drugi već uradili, umesto da počinju sve od početka. Odgovarajuće funkcije skrivaju detalje postupka od delova programa i time čine ceo program jasnijim i jednostavnijim za menjanje. Prilikom deklaracije funkcije navodi se tip povratne vrednosti funkcije (ako se ne navede podrazumeva se int) ime funkcije lista argumenata telo funkcije. Funkcija se poziva navođenjem imena funkcije i liste stvarnih argumenata.

funkcije Napisati funkciju koja vrši sabiranje dva cela broja i program koji testira rad ove funkcije. #include <stdio.h> /* Definicija funkcije */ int zbir(int a, int b) { return a+b; }

main() { /* Poziv funkcije */ printf("%d\n", zbir(3,5)); } Deklaracija funkcije može da stoji nezavisno od definicije funkcije. Deklaracija je neophodna u situacijama kada se definicija funkcije navodi nakon upotrebe date funkcije u kodu.

#include <stdio. h> /. Deklaracija funkcije zbir() #include <stdio.h> /* Deklaracija funkcije zbir() */ int zbir(int, int); /* int zbir(int a, int b); */ main() { /* Poziv funkcije */ printf("%d\n", zbir(3,5)); } /* Definicija funkcije */ int zbir(int a, int b) return a+b;

Funkcije Nalaženje maksimuma dva broja Program pronalazi maksimum dva broja koji se učitavaju sa ulaza. Maksimum se izračunava u posebnoj funkciji. Program demonstrira upotrebu najjednostavnijih funkcija.

#include <stdio. h> / #include <stdio.h> /* Funkcija max() prihvata dva broja i vraca njihov maksimum */ int max(int a, int b) { return a > b ? a : b; }

/. Funkcija main. / int main() { int a, b, m; / /* Funkcija main */ int main() { int a, b, m; /* Ucitavamo dva cela broja */ printf("Uneti dva broja: "); scanf("%d%d", &a, &b);

/* Pozivamo funkciju max(), predajemo joj vrednosti promenljivih a i b, i njenu povratnu vrednost smestamo u m */ m = max(a,b); /* Prikazujemo m */ printf("Maksimum je: %d\n", m); }

funkcije Napisati funkciju koja izračunava zbir kvadrata brojeva od 1 do date granice kao i program koji ilustruje korišćenje date funkcije. #include <stdio.h> void Zbir_Kvad(int n); /*f-ja koja vrsi zeljeno izracunavanje */ main() { Zbir_Kvad( 5); Zbir_Kvad( 23);

} void Zbir_Kvad(int n) { int br; / } void Zbir_Kvad(int n) { int br; /* lokalna promenljiva funkcije, brojac u ciklusu */ long Zbir=0; /* lokalna promenljiva funkcije, suma kvadrata brojeva od 1..n */ for (br=1; br<=n; Zbir+=br*br, ++br) ; printf(" Zbir kvadrata brojeva od 1 do %d je %ld\n", n,Zbir);

Funkcije Ojlerova funkcija Program računa vrednost Ojlerove funkcije pozitivnog celog broja unetog sa ulaza. Pod Ojlerovom funkcijom φ(n) podrazumevamo broj brojeva m, takvih da je 1 ≤ m < n i da su m i n uzajamno prosti. Ojlerova funkcija, kao i NZD(m,n) se računaju u posebnim funkcijama. Program demonstrira upotrebu funkcija.

#include <stdio. h> /. Deklaracije funkcija (prototipovi) #include <stdio.h> /* Deklaracije funkcija (prototipovi) */ int nzd(int n, int m); int euler(int n); /* main */ int main() { int n;

/* Unosimo ceo broj, a zatim izracunavamo njegovu Ojlerovu funkciju, i ispisujemo vrednost na izlaz */ printf("Uneti pozitivan ceo broj: "); scanf("%d", &n); printf("euler(%d) = %d\n", n, euler(n)); return 0; }

/. Ojlerova funkcija broja n. / int euler(int n) { int br = 0, m; / /* Ojlerova funkcija broja n */ int euler(int n) { int br = 0, m; /* Prolazimo kroz sve prirodne brojeve m koji su manji od n, i za svaki koji je uzajamno prost sa n uvecavamo brojac */ for(m = 1; m < n; m++) if(nzd(n,m) == 1) br++; /* Vracamo broj uzajamno prostih brojeva sa brojem n */ return br; }

/* Funkcija racuna nzd dva pozitivna broja primenom euklidovog algoritma. */ int nzd(int n, int m) { int r; /* Dokle god je m!=0, svodimo nzd(n,m) na nzd(m,r), gde je r = n % m. */ while(m) r = n % m; n = m; m = r; } /* Nakon sto je m postalo 0, jasno je da je nzd(n,0) = n */ return n;

Funkcije Stepen broja Program računa n-ti stepen unetog realnog broja. Računanje ovog stepena se realizuje u posebnoj funkciji. Učitavanje i ispis se takođe izdvajaju u posebne funkcije.

#include <stdio. h> / #include <stdio.h> /* Funkcija nema argumente, i ne vraca vrednost. Jedina njena uloga je da ispise pozdravnu poruku */ void ispisi_poruku() { printf("Program racuna n-ti stepen realnog broja!\n"); }

/* Funkcija ucitava sa ulaza realan broj, i vraca ga kao povratnu vrednost. Funkcija nema argumente */ double ucitaj_realan_broj() { double a; printf("Uneti realan broj: "); scanf("%lf", &a); return a; }

/* Funkcija ucitava sa ulaza ceo broj, i vraca ga kao povratnu vrednost. Funkcija nema argumente */ int ucitaj_ceo_broj() { int a; printf("Uneti ceo broj: "); scanf("%d", &a); return a; }

/. Funkcija vraca n-ti stepen broja a /* Funkcija vraca n-ti stepen broja a */ double stepen(double a, int n) { double r; for(r = 1; n ; n--, r *= a); return r; }

/* Funkcija prihvata realan broj, i prikazuje ga na izlazu, sa tri decimale. Funkcija ne vraca vrednost */ void prikazi_broj(double a) { printf("%5.3lf\n", a); }

int main() { int n; double a; ispisi_poruku(); / int main() { int n; double a; ispisi_poruku(); /* Prikaz pozdravne poruke */ a = ucitaj_realan_broj(); /* Ucitava realan broj */ n = ucitaj_ceo_broj(); /* Ucitava ceo broj */ prikazi_broj(stepen(a, n)); /* Racuna stepen i ispisuje rezultat */ return 0; }

Funkcije Stepen broja Program računa n-ti stepen unetog realnog broja, gde broj n može biti negativan. Računanje ovog stepena se realizuje u posebnoj funkciji.

double power_k(double x, int k) { int i; /* brojac u petlji */ /* promenljiva negative dobija vrednost 1 ako je stepen k negativan, odnosno 0 ako je stepen pozitivan alternativno if (k<0) negative=1; else negative=0; */ int negative = k<0; if (negative) k = -k;

double s = 1; for (i = 0; i<k; i++) s*=x; return negative ? 1.0/s : s; } main() { /* Poziv funkcije */ double s = power_k(2.0,-1); printf("%f\n", s);

Funkcije - vežba (a) Napisati funkciju koja izračunava faktorijel celog broja. (b) Napisati program koji izračunava faktorijel unetog broja koristeći prethodno definisanu funkciju.