Programiranje predavanje
|
|
- Ανάκλητος Καλύβας
- 7 χρόνια πριν
- Προβολές:
Transcript
1 Programiranje predavanje Saša Singer singer@math.hr web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog2 2017, 12. predavanje p. 1/57
2 Sadržaj predavanja Pretprocesor: Naredba #include. Naredba #define. Parametrizirana #define naredba. Uvjetno uključivanje. Pregled standardne C biblioteke. Standardne datoteke zaglavlja *.h. Matematičke funkcije iz <math.h>. Neke funkcije iz <stdlib.h>. Mjerenje vremena neke funkcije iz <time.h>. Prog2 2017, 12. predavanje p. 2/57
3 Informacije Konzultacije: petak, sati, ili po dogovoru. Programiranje 2 je u kolokvijskom razredu C3. Drugi kolokvij: petak, , u 15 sati. Popravni kolokvij: utorak, , u 15 sati. Uputa: izbjegnite popravni obavite to ranije! Ne zaboravite, žive su i domaće zadaće na adresi Dodatni bodovi čekaju na vas. Prog2 2017, 12. predavanje p. 3/57
4 Informacije rok za zadaće, podsjetnik, usmeni Rok za predaju zadaća je dan drugog kolokvija, do početka kolokvija. Aplikacija se tada zatvara za javnost bodovi su konačni. Napomena o podsjetniku = šalabahteru na službenom webu: Nemojte ga nositi na kolokvij to je zabranjeno! Dobit ćete ga na kolokviju. Pogledajte unaprijed što sve piše tamo, da se lakše snadete! Ako netko poželi izaći na usmeni (nakon rezultata kolokvija), dogovor za usmeni je u vrijeme uvida u kolokvije. Prog2 2017, 12. predavanje p. 4/57
5 Pretprocesor Prog2 2017, 12. predavanje p. 5/57
6 Općenito o pretprocesoru Prije prevodenja izvornog kôda u objektni ili izvršni kôd izvršavaju se pretprocesorske naredbe. Svaka linija izvornog kôda koja započinje znakom # (osim u komentaru) predstavlja jednu pretprocesorsku naredbu. Pretprocesorska naredba završava krajem linije, a ne znakom ;. Opći oblik pretprocesorske naredbe je #naredba parametri One nisu sastavni dio jezika C, te ne podliježu sintaksi jezika. Neke od pretprocesorskih naredbi su: #include, #define, #undef, #if, #ifdef, #ifndef, #elif, #else, #endif. Prog2 2017, 12. predavanje p. 6/57
7 Naredba #include Naredba #include može se pojaviti u dva oblika: ili #include "ime_datoteke" #include <ime_datoteke> U oba slučaja pretprocesor briše liniju s #include naredbom i uključuje sadržaj datoteke ime_datoteke u izvorni kôd, na mjestu #include naredbe. Ta datoteka smije imati svoje pretprocesorske naredbe, koje će se, takoder, obraditi (= uključi tekst, prodi kroz njega ). Prog2 2017, 12. predavanje p. 7/57
8 Naredba #include (nastavak) Gdje se traži navedena datoteka? Ako je ime_datoteke navedeno unutar navodnika ", onda pretprocesor traži datoteku u direktoriju u kojem se nalazi izvorni program. Ako je ime_datoteke navedeno izmedu znakova < >, to signalizira da se radi o sistemskoj datoteci (kao na pr. stdio.h), pa će pretprocesor tražiti datoteku na mjestu odredenom operacijskim sustavom. Prog2 2017, 12. predavanje p. 8/57
9 Naredba #define Naredba #define ima oblik #define ime tekst_zamjene i definira simbol ime kao živi objekt. Ako je zadan i tekst_zamjene (ne mora), onda ime postaje tzv. makro naredba. U tom slučaju, pretprocesor će od mjesta #define naredbe, do kraja datoteke, svaku pojavu imena ime zamijeniti tekstom tekst_zamjene. Do zamjene neće doći unutar znakovnih nizova (string konstanti), tj. unutar para dvostrukih navodnika ", komentara, tj. unutar susjednog para znakova /* i */. Prog2 2017, 12. predavanje p. 9/57
10 Parametrizirane makro naredbe U parametriziranoj makro naredbi, simboličko ime i tekst_zamjene sadrže tzv. formalne argumente. #define ime(argumenti) tekst_zamjene Argumenti se pišu u zagradama ( ) i odvajaju zarezom. Prilikom poziva makro naredbe, ovi formalni argumenti se zamjenjuju stvarnim argumentima navedenim u pozivu. Zamjena ide na razini teksta tekst, umjesto teksta! Makro naredba je efikasnija od funkcije, jer u njoj nema prijenosa argumenata, ali može izazvati neželjene efekte. Prog2 2017, 12. predavanje p. 10/57
11 Primjer parametrizirane makro naredbe Primjer. Makro naredba za nalaženje većeg od dva argumenta #define max(a, B) ((A) > (B)? (A) : (B)) Ovdje su A i B formalni argumenti. Ako se u kôdu pojavi naredba x = max(a1, a2); pretprocesor će je zamijeniti naredbom x = ((a1) > (a2)? (a1) : (a2)); Formalni argumenti (parametri) A i B zamijenjeni su stvarnim argumentima a1 i a2 na razini teksta. Prog2 2017, 12. predavanje p. 11/57
12 Primjer parametrizirane makro naredbe (nast.) Ako na drugom mjestu imamo naredbu x = max(a1 + a2, a1 - a2); ona će biti zamijenjena s x = ((a1 + a2) > (a1 - a2)? (a1 + a2) : (a1 - a2)); Napomena. Sličnost makro naredbe i funkcije može zavarati. Kod makro naredbe nema kontrole tipa argumenata. Supstitucija argumenata je doslovna na razini teksta, što može izazvati neželjene efekte. Prog2 2017, 12. predavanje p. 12/57
13 Razlika makro naredbe i funkcije Ako makro naredbu max pozovemo na sljedeći način x = max(i++, j++); nakon supstitucije dobivamo x = ((i++) > (j++)? (i++) : (j++)); Posljedica: jedna od varijabli i, j neće biti inkrementirana samo jednom (kao kod poziva funkcije) veća varijabla bit će inkrementirana dva puta(!), a rezultat x ovisi o prevoditelju. Napomena. Neke funkcije deklarirane u <stdio.h> su, zapravo, makro naredbe na primjer, getchar i putchar. Isto tako, funkcije u <ctype.h> izvedene su, uglavnom, kao makro naredbe. Prog2 2017, 12. predavanje p. 13/57
14 Makro naredbe i prioritet operacija Primjer. Različite makro naredbe za kvadriranje argumenta. #include <stdio.h> #define SQ1(x) x*x #define SQ2(x) (x)*(x) #define SQ3(x) ((x)*(x)) int main(void) { printf("%d\n", SQ1(1+1)); printf("%d\n", 4/SQ2(2)); printf("%d\n", 4/SQ3(2)); return 0; } Prog2 2017, 12. predavanje p. 14/57
15 Makro naredbe i prioritet operacija (nastavak) Ovaj program ispisuje: Objašnjenje. SQ1: #define SQ1(x) x*x x = 1+1 i doslovnom supstitucijom u SQ1 dobivamo 1+1*1+1 = (prioritet!) = = 3 SQ2: #define SQ2(x) (x)*(x) x = 2 i supstitucijom u 4/SQ2(2) dobivamo 4/(2)*(2) = 4/2*2 = 2*2 = 4 Prog2 2017, 12. predavanje p. 15/57
16 Makro naredbe i prioritet operacija (nastavak) SQ3: #define SQ3(x) ((x)*(x)) x = 2 i supstitucijom u 4/SQ3(2) dobivamo 4/((2)*(2)) = 4/(2*2) = 4/4 = 1 Zato se u parametriziranim makro naredbama koristi gomila zagrada da se osigura korektan prioritet operacija! Tek zadnji SQ3 korektno daje kvadrat argumenta u svim slučajevima, a to se htjelo! Prog2 2017, 12. predavanje p. 16/57
17 Naredba #define i više linija teksta U #define naredbi, tekst_zamjene ide od kraja imena koje definiramo, do kraja linije. Ako želimo da ime bude zamijenjeno s više linija teksta, moramo koristiti obratnu kosu crtu (\) na kraju svakog reda, osim posljednjeg. Kao i prije, \ znači da se red nastavlja na početku sljedećeg. Primjer. Makro za inicijalizaciju polja možemo definirati ovako (nije jako čitljivo i bolje je ne koristiti): #define INIT(polje, dim) for(int i=0;\ i < (dim); ++i) \ (polje)[i] = 0.0; Prog2 2017, 12. predavanje p. 17/57
18 Naredba #undef Definicija nekog imena može se poništiti korištenjem #undef naredbe. Nakon naredbe #undef ime simbol ime više nije definiran ( nije živ ). Primjer. Redefinicija konstante M_PI (vrijednost π u double) #include <math.h> /* math.h definira M_PI kao */ #undef M_PI #define M_PI (4.0*atan(1.0)) Provjeru je li simbol ime definiran ili ne, možemo napraviti naredbama #ifdef, odnosno, #ifndef (v. malo kasnije). Prog2 2017, 12. predavanje p. 18/57
19 Uvjetno uključivanje kôda #if, #endif Pretprocesorske naredbe #if, #endif, #else, #elif služe za uvjetno uključivanje (ili isključivanje) pojedinih dijelova programa. Uvjetno uključivanje kôda naredbama #if, #endif ima oblik: #if uvjet blok naredbi #endif Ako je uvjet ispunjen, onda će blok naredbi izmedu #if uvjet i #endif biti uključen u izvorni kôd koji ide prevoditelju na prevodenje. Ako uvjet nije ispunjen, taj blok neće biti uključen, tj. u prevoditelj ide tekst bez tog bloka kôda. Prog2 2017, 12. predavanje p. 19/57
20 Uvjetno uključivanje kôda (nastavak) Oprez: ovaj #if radi na nivou teksta izvornog kôda i nije zamjena za if naredbu u samom jeziku C. Uvjet koji se pojavljuje u #if naredbi je konstantan cjelobrojni izraz. Nula se interpretira kao laž, a svaka vrijednost različita od nule kao istina. Najčešća svrha uključivanja/isključivanja je uključiti neku datoteku zaglavlja, ako neko ime nije bilo definirano ranije (ime = simbol, ili pretprocesorska varijabla ). Za provjeru definiranosti nekog imena (simbola) služi izraz defined(ime) koji daje 1 ako je ime definirano, a 0 ako nije. Prog2 2017, 12. predavanje p. 20/57
21 Uvjetno uključivanje kôda (nastavak) Najčešće se koristi provjera je li neko ime nedefinirano. Tu smijemo koristiti i operator negacije!!defined(ime) Primjer. Provjera nedefiniranosti nekog privatnog imena za uključivanje odgovarajuće datoteke zaglavlja datoteka.h #if!defined( datoteka.h ) #include "datoteka.h" #endif s tim da se na početku datoteka.h definira privatno ime #define datoteka.h Prog2 2017, 12. predavanje p. 21/57
22 Naredbe #ifdef i #ifndef To je standardna tehnika kojom se izbjegava višestruko uključivanje.h datoteka (i potencijalna beskonačna rekurzija). Konstrukcije #if defined i #if!defined se vrlo često pojavljuju u praksi, pa postoje pokrate u obliku naredbi #ifdef i #ifndef (respektivno). Usput, zagrade oko imena simbola (ime) nisu obavezne. Primjer. Prethodnu provjeru možemo napisati u obliku #ifndef datoteka.h #include "datoteka.h" #endif a na početku datoteka.h se definira ime datoteka.h. Prog2 2017, 12. predavanje p. 22/57
23 Naredbe #else i #elif Složene if naredbe za uključivanje ili isključivanje pojedinih dijelova kôda (u pretprocesoru) grade se pomoću naredbi #else i #elif. Značenje #else je isto kao značenje else u C-u. Značenje #elif je isto kao značenje else if. Oprez: sve ove naredbe rade na nivou teksta programa i nisu zamjena za odgovarajuće naredbe u samom jeziku C! Prog2 2017, 12. predavanje p. 23/57
24 Uvjetno uključivanje kôda Primjer 1 Primjer. Za kôd koji treba raditi na raznim operacijskim sustavima, testira se koji je operacijski sustav u pitanju, kroz ime (ili simbol) SYSTEM, da bi se uključilo ispravno zaglavlje. #if SYSTEM == SYSV #define DATOTEKA "sysv.h" #elif SYSTEM == BSD #define DATOTEKA "bsd.h" #elif SYSTEM == MSDOS #define DATOTEKA "msdos.h" #else #define DATOTEKA "default.h" #endif Prog2 2017, 12. predavanje p. 24/57
25 Uvjetno uključivanje kôda Primjer 2 Primjer. U fazi razvoja programa korisno je ispisivati razne medurezultate, za kontrolu korektnosti izvršavanja programa. U završnoj verziji programa, sav taj suvišan ispis treba eliminirati. Za to se koristi standardni simbol DEBUG.... scanf("%d", &x); #ifdef DEBUG printf("debug: x = %d\n", x); // testiranje #endif Pitanje. Može li se definirati neki simbol (poput DEBUG) izvana prilikom prevodenja programa? Svi standardni prevoditelji imaju -Dsimbol opciju koja dozvoljava da se simbol definira na komandnoj liniji. Prog2 2017, 12. predavanje p. 25/57
26 Definiranje simbola kod prevodenja Primjer. Pretpostavimo da je program koji sadrži prikazani dio kôda smješten u prog.c. Tada će prevodenje naredbom cc -o prog prog.c proizvesti program u koji ispis varijable x nije uključen. Medutim, prevodenje naredbom cc -DDEBUG -o prog prog.c dat će izvršni kôd koji uključuje printf naredbu, jer je simbol DEBUG definiran. Napomena. Ovu mogućnost -Dsimbol ima i Code::Blocks, ali samo kad se radi s projektima. Potražite i probajte! Prog2 2017, 12. predavanje p. 26/57
27 Standardna C biblioteka Prog2 2017, 12. predavanje p. 27/57
28 Općenito o zaglavljima Standardna C biblioteka sadrži niz funkcija, tipova i makro naredbi. Pripadne deklaracije nalaze se u sljedećim standardnim zaglavljima (redom kao u KR2): <assert.h> <float.h> <math.h> <stdarg.h> <stdlib.h> <ctype.h> <limits.h> <setjmp.h> <stddef.h> <string.h> <errno.h> <locale.h> <signal.h> <stdio.h> <time.h> Prog2 2017, 12. predavanje p. 28/57
29 Matematičke funkcije u <math.h> Konvencija: x i y su tipa double, a n je tipa int. Sve funkcije kao rezultat vraćaju double. Funkcija sin(x) cos(x) tan(x) Značenje sin x cos x tg x asin(x) arcsinx [ π 2, π 2], x [ 1,1] acos(x) arccosx [0,π], x [ 1,1] atan(x) arctgx [ π, ] π 2 2 atan2(y, x) (x, y) koordinate točke u ravnini vraća arctg y [ π,π], jer prepoznaje kvadrant x Prog2 2017, 12. predavanje p. 29/57
30 Matematičke funkcije u <math.h> (nastavak) Funkcija Značenje sinh(x) sh x cosh(x) ch x tanh(x) th x exp(x) e x log(x) lnx, x > 0 log10(x) log 10 x, x > 0 pow(x, y) x y greška ako x = 0 i y 0, ili x < 0 i y nije cijeli broj sqrt(x) x, x 0 Prog2 2017, 12. predavanje p. 30/57
31 Matematičke funkcije u <math.h> (nastavak) Funkcija ceil(x) floor(x) fabs(x) ldexp(x, n) Značenje x, u double formatu najmanji cijeli broj x x, u double formatu najveći cijeli broj x x x 2 n frexp(x, int *exp) ako je x = y 2 n, uz y [ 1 2,1, vraća y, a eksponent n sprema u *exp. Ako je x = 0, onda je y = n = 0. Prog2 2017, 12. predavanje p. 31/57
32 Matematičke funkcije u <math.h> (nastavak) Funkcija Značenje modf(x, double *ip) rastavlja x na cjelobrojni i razlomljeni dio, oba istog predznaka kao x. Razlomljeni dio vrati, a cjelobrojni dio spremi u *ip. fmod(x, y) realni (floating point) ostatak dijeljenja x/y, istog znaka kao x. Ako je y = 0, rezultat ovisi o implementaciji. Prog2 2017, 12. predavanje p. 32/57
33 Razlika atan i atan2 Razlika izmedu funkcija double atan(double x); double atan2(double y, double x); atan(x) vraća arctgx [ π 2, π 2 ], atan2(y, x) interpretira argumente (paziti na poredak!) kao koordinate točke (x,y) u ravnini i vraća arctg y x [ π,π], (radi i za x = 0, pita prije dijeljenja!) jer prepoznaje kvadrant u kojem je točka (x,y). Prog2 2017, 12. predavanje p. 33/57
34 Razlika atan i atan2 (nastavak) Primjer. Program #include <stdio.h> #include <math.h> main(void) { double x = -1.0, y = -1.0; printf("%f\n", atan(y / x)); printf("%f\n", atan2(y, x)); return 0; } ispisuje Točni rezultati su π/4, 3π/4 (treći kvadrant). Prog2 2017, 12. predavanje p. 34/57
35 Funkcije floor i ceil Uočite da funkcije za najmanje i najveće cijelo double floor(double x); double ceil(double x); vraćaju rezultat tipa double, a ne int. Primjer. Rezultat ispisa sljedećeg dijela kôda printf("%g\n", floor(5.2)); printf("%g\n", floor(-5.2)); printf("%g\n", ceil(5.2)); printf("%g\n", ceil(-5.2)); je: 5, -6, 6, -5 (zbog %g formata). Prog2 2017, 12. predavanje p. 35/57
36 Funkcija fmod Funkcija double fmod(double x, double y); vraća realni ostatak pri dijeljenju x/y, s tim da ostatak ima isti predznak kao x. Princip je isti kao kod cjelobrojnog dijeljenja, s tim da je ili x = cjelobrojni kvocijent y +ostatak, ostatak < y, ostatak = x ((int)(x/y)) y. Prog2 2017, 12. predavanje p. 36/57
37 Funkcija fmod (nastavak) Primjer. Sljedeći odsječak kôda ispisuje printf("%g, ", fmod(5.2, 2.6)); printf("%g, ", fmod( 5.57, 2.51)); printf("%g, ", fmod( 5.57, -2.51)); printf("%g, ", fmod(-5.57, 2.51)); printf("%g\n", fmod(-5.57, -2.51)); 0, 0.55, 0.55, -0.55, zbog (int)(5.57/2.51) = 2 i 5.57 = , itd. Prog2 2017, 12. predavanje p. 37/57
38 Funkcija frexp Funkcija double frexp(double x, int *exp); rastavlja broj x na binarnu mantisu i binarni eksponent. Primjer. Sljedeći odsječak kôda ispisuje double x = 8.0; int exp_2; printf("%f, ", frexp(x, &exp_2)); printf("%d\n", exp_2); , 4 Prog2 2017, 12. predavanje p. 38/57
39 Funkcije exp, log, log10 i pow double exp(double x); double log(double x); double log10(double x); double pow(double x, double y); Primjer. Sljedeći odsječak kôda ispisuje printf("%g\n", log(exp(22))); printf("%g\n", log10(pow(10.0, 22.0))); Prog2 2017, 12. predavanje p. 39/57
40 Neke funkcije iz <stdlib> Datoteka zaglavlja <stdlib.h> ima nekoliko vrlo korisnih funkcija. Na primjer: qsort QuickSort algoritam za općenito sortiranje niza podataka, bsearch Binarno traženje zadanog podatka u (sortiranom) nizu. U ovim funkcijama možemo (zapravo, moramo) sami zadati funkciju za usporedivanje podataka u nizu. Prog2 2017, 12. predavanje p. 40/57
41 Funkcija qsort Funkcija za sortiranje niza QuickSort algoritmom: void qsort(void *base, size_t n, size_t size, int (*comp) (const void *, const void *)); Primjer. int main(void) { char rjecnik[3][20] = {"po", "ut", "sri"}; int i; qsort(rjecnik, 3, 20, strcmp); for (i = 0; i < 3; ++i) puts(rjecnik[i]); return 0; } Prog2 2017, 12. predavanje p. 41/57
42 Funkcija bsearch Funkcija za binarno traženje zadanog podatka u sortiranom nizu: void *bsearch(const void *key, const void *base, size_t n, size_t size, int (*comp) (const void *, const void *)); Vraća pokazivač na nadeni podatak (ako ga ima), ili NULL. Primjer. printf("%s\n", bsearch("ut", rjecnik, 3, 20, strcmp)); Prog2 2017, 12. predavanje p. 42/57
43 Korektno baratanje s tipovima Na ovako napisan program (v. qs_1.c) compiler se buni na nekoliko mjesta, upozorenjem zbog miješanja tipova char * i void *. Program radi korektno, ali... nije lijepo! Popravak. Funkciju strcmp za usporedbu stringova treba zatvoriti u funkciju korektnog prototipa nazovimo ju usporedi, a iznutra pretvorimo tipove pokazivača: int usporedi(const void *a, const void *b) { return strcmp((char *) a, (char *) b); } Prog2 2017, 12. predavanje p. 43/57
44 Korektno baratanje s tipovima (nastavak) Poziv funkcije qsort onda glasi: qsort(rjecnik, 3, 20, usporedi); Sasvim analogno, povratnu vrijednost funkcije bsearch treba propisno castati u char * printf("%s\n", (char *) bsearch("ut", rjecnik, 3, 20, usporedi)); Na popravljeni program (v. qs_1a.c) compiler nema teksta. Napomena. Kod sortiranja rječnika zamjenama pokazivača, a ne stringova (kao ovdje), treba paziti na tipove u usporedi! Prog2 2017, 12. predavanje p. 44/57
45 Definiranje kriterija sortiranja Primjer. Sortiranje polja cijelih brojeva (v. qs_2.c, qs_2a.c). int main(void) { int i, polje[4] = {1, 3, -4, 2}; qsort(polje, 4, sizeof(int), usporedi); for (i = 0; i < 4; ++i) printf("%d\n", polje[i]); } return 0; Prog2 2017, 12. predavanje p. 45/57
46 Funkcija usporedi Funkcija usporedi za usporedivanje cijelih brojeva: int usporedi(const void *a, const void *b) { int na = *((int *) a), nb = *((int *) b); // int na = * (int *) a, nb = * (int *) b; } if (na == nb) return 0; else if (na > nb) return 1; else return -1; Prog2 2017, 12. predavanje p. 46/57
47 Funkcije rand i srand Funkcije za generiranje slučajnih cijelih brojeva: int rand(void); void srand(unsigned int seed); Funkcija rand() vraća tzv. pseudo slučajni cijeli broj u rasponu od 0 do RAND_MAX, s tim da RAND_MAX mora biti barem = (tj. 16 bitni int). Funkcija srand(seed) postavlja tzv. sjeme za generator pseudo slučajnih brojeva na zadanu vrijednost seed. Standardno sjeme je 1, ako ga ne postavimo sami! Prog2 2017, 12. predavanje p. 47/57
48 Funkcije rand i srand (nastavak) Primjer. unsigned int seed; int i; printf("%d\n", RAND_MAX); /* */ scanf("%u", &seed); srand(seed); for (i = 1; i <= 10; ++i) printf(" %6d\n", rand()); Prog2 2017, 12. predavanje p. 48/57
49 Mjerenje vremena Prog2 2017, 12. predavanje p. 49/57
50 Datoteka zaglavlja <time.h> U datoteci zaglavlja <time.h> deklarirani su tipovi i funkcije za manipulaciju danima, datumima i vremenom. Detaljnije ćemo opisati samo funkcije za vrijeme, s ciljem: kako napraviti jednostavnu štopericu za vrijeme izvršavanja pojedinih dijelova programa. Za početak, deklarirana su dva aritmetička tipa za prikaz vremena: time_t za prikaz stvarnog kalendarskog vremena, clock_t za prikaz procesorskog vremena. Razlog za dva različita tipa = različite jedinice! Prog2 2017, 12. predavanje p. 50/57
51 Stvarno vrijeme funkcija time Stvarno kalendarsko vrijeme mjeri se u nekim standardnim jedinicama za vrijeme (recimo, sekundama nije bitno). Funkcija za očitanje trenutnog vremena je: Vraća time_t time(time_t *tp); trenutno vrijeme, ili -1, ako vrijeme nije dostupno. Ako pokazivač tp nije NULL, onda se izlazna vrijednost sprema i u *tp. To je katkad zgodno napraviti radi preglednosti. Prog2 2017, 12. predavanje p. 51/57
52 Razlika vremena funkcija difftime Stvarna vrijednost rezultata nije naročito korisna (uključivo i jedinice). Najčešće je to broj sekundi proteklih od nekog nultog trenutka! Za štopericu realnog vremena treba nam samo razlika vremena: vrijeme na kraju vrijeme na početku. Tome služi funkcija double difftime(time_t time2, time_t time1); koja vraća razliku time2 time1 izraženu u sekundama. Prog2 2017, 12. predavanje p. 52/57
53 Primjer mjerenje realnog vremena Primjer. Treba izabrati neki posao koji dovoljno dugo traje, da nešto i vidimo. Zato koristimo dvije cjelobrojne petlje, da dobijemo kvadratnu složenost. Za demo, radimo oko poziva funkcije rand. Cijeli program za ovaj eksperiment je (v. time_1.c) #include <stdio.h> #include <stdlib.h> #include <time.h> int main(void) { int i, j; time_t t1, t2; Prog2 2017, 12. predavanje p. 53/57
54 Primjer mjerenje realnog vremena time(&t1); /* Moze i t1 = time(null); */ for (i = 1; i < ; ++i) for (j = 1; j < i; ++j) rand(); time(&t2); /* Moze i t2 = time(null); */ printf("%g\n", difftime(t2, t1)); } return 0; Na mom računalu (uz Intelov C), rezultat je 161 (sekundi). Prog2 2017, 12. predavanje p. 54/57
55 Procesorsko vrijeme funkcija clock Procesorsko vrijeme mjeri se u broju tzv. otkucaja procesorskog sata. Funkcija za očitanje procesorskog vremena je: Vraća clock_t clock(void); procesorsko vrijeme (u broju otkucaja sata) od početka izvršavanja programa, ili -1, ako vrijeme nije dostupno. Dodatno, simbolička konstanta CLOCKS_PER_SEC sadrži broj otkucaja procesorskog sata u jednoj sekundi. Primjena u štoperici ide po istom principu razlike vremena. Prog2 2017, 12. predavanje p. 55/57
56 Primjer mjerenje procesorskog vremena Primjer. Pretvaranje u sekunde realiziramo funkcijom dsecnd. Cijeli program za ovaj eksperiment je (v. time_2.c) #include <stdio.h> #include <stdlib.h> #include <time.h> double dsecnd (void) { return (double)( clock( ) ) / CLOCKS_PER_SEC; } int main(void) { int i, j; double t1, t2, time; Prog2 2017, 12. predavanje p. 56/57
57 Primjer mjerenje procesorskog vremena t1 = dsecnd( ); for (i = 1; i < ; ++i) for (j = 1; j < i; ++j) rand(); t2 = dsecnd( ); time = t2 - t1; printf("%g\n", time); } return 0; Rezultati za dva izvršavanja su , (sekundi). Prog2 2017, 12. predavanje p. 57/57
Programiranje predavanje
Programiranje 2 12. predavanje Saša Singer singer@math.hr web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog2 2018, 12. predavanje p. 1/66 Sadržaj predavanja Pretprocesor: Naredba #include.
Strukture podataka i algoritmi 1. kolokvij 16. studenog Zadatak 1
Strukture podataka i algoritmi 1. kolokvij Na kolokviju je dozvoljeno koristiti samo pribor za pisanje i službeni šalabahter. Predajete samo papire koje ste dobili. Rezultati i uvid u kolokvije: ponedjeljak,
18. listopada listopada / 13
18. listopada 2016. 18. listopada 2016. 1 / 13 Neprekidne funkcije Važnu klasu funkcija tvore neprekidne funkcije. To su funkcije f kod kojih mala promjena u nezavisnoj varijabli x uzrokuje malu promjenu
7 Algebarske jednadžbe
7 Algebarske jednadžbe 7.1 Nultočke polinoma Skup svih polinoma nad skupom kompleksnih brojeva označavamo sa C[x]. Definicija. Nultočka polinoma f C[x] je svaki kompleksni broj α takav da je f(α) = 0.
2 tg x ctg x 1 = =, cos 2x Zbog četvrtog kvadranta rješenje je: 2 ctg x
Zadatak (Darjan, medicinska škola) Izračunaj vrijednosti trigonometrijskih funkcija broja ako je 6 sin =,,. 6 Rješenje Ponovimo trigonometrijske funkcije dvostrukog kuta! Za argument vrijede sljedeće formule:
M086 LA 1 M106 GRP. Tema: Baza vektorskog prostora. Koordinatni sustav. Norma. CSB nejednakost
M086 LA 1 M106 GRP Tema: CSB nejednakost. 19. 10. 2017. predavač: Rudolf Scitovski, Darija Marković asistent: Darija Brajković, Katarina Vincetić P 1 www.fizika.unios.hr/grpua/ 1 Baza vektorskog prostora.
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,
PARCIJALNI IZVODI I DIFERENCIJALI Sama definicija parcijalnog ivoda i diferencijala je malo teža, mi se njome ovde nećemo baviti a vi ćete je, naravno, naučiti onako kako vaš profesor ahteva. Mi ćemo probati
a M a A. Može se pokazati da je supremum (ako postoji) jedinstven pa uvodimo oznaku sup A.
3 Infimum i supremum Definicija. Neka je A R. Kažemo da je M R supremum skupa A ako je (i) M gornja meda skupa A, tj. a M a A. (ii) M najmanja gornja meda skupa A, tj. ( ε > 0)( a A) takav da je a > M
3.1 Granična vrednost funkcije u tački
3 Granična vrednost i neprekidnost funkcija 2 3 Granična vrednost i neprekidnost funkcija 3. Granična vrednost funkcije u tački Neka je funkcija f(x) definisana u tačkama x za koje je 0 < x x 0 < r, ili
Trigonometrija 2. Adicijske formule. Formule dvostrukog kuta Formule polovičnog kuta Pretvaranje sume(razlike u produkt i obrnuto
Trigonometrija Adicijske formule Formule dvostrukog kuta Formule polovičnog kuta Pretvaranje sume(razlike u produkt i obrnuto Razumijevanje postupka izrade složenijeg matematičkog problema iz osnova trigonometrije
IZVODI ZADACI (I deo)
IZVODI ZADACI (I deo) Najpre da se podsetimo tablice i osnovnih pravila:. C`=0. `=. ( )`= 4. ( n )`=n n-. (a )`=a lna 6. (e )`=e 7. (log a )`= 8. (ln)`= ` ln a (>0) 9. = ( 0) 0. `= (>0) (ovde je >0 i a
Funkcije dviju varjabli (zadaci za vježbu)
Funkcije dviju varjabli (zadaci za vježbu) Vidosava Šimić 22. prosinca 2009. Domena funkcije dvije varijable Ako je zadano pridruživanje (x, y) z = f(x, y), onda se skup D = {(x, y) ; f(x, y) R} R 2 naziva
INTEGRALNI RAČUN. Teorije, metodike i povijest infinitezimalnih računa. Lucija Mijić 17. veljače 2011.
INTEGRALNI RAČUN Teorije, metodike i povijest infinitezimalnih računa Lucija Mijić lucija@ktf-split.hr 17. veljače 2011. Pogledajmo Predstavimo gornju sumu sa Dodamo još jedan Dobivamo pravokutnik sa Odnosno
Sortiranje prebrajanjem (Counting sort) i Radix Sort
Sortiranje prebrajanjem (Counting sort) i Radix Sort 15. siječnja 2016. Ante Mijoč Uvod Teorem Ako je f(n) broj usporedbi u algoritmu za sortiranje temeljenom na usporedbama (eng. comparison-based sorting
(P.I.) PRETPOSTAVKA INDUKCIJE - pretpostavimo da tvrdnja vrijedi za n = k.
1 3 Skupovi brojeva 3.1 Skup prirodnih brojeva - N N = {1, 2, 3,...} Aksiom matematičke indukcije Neka je N skup prirodnih brojeva i M podskup od N. Ako za M vrijede svojstva: 1) 1 M 2) n M (n + 1) M,
Osnovni primer. (Z, +,,, 0, 1) je komutativan prsten sa jedinicom: množenje je distributivno prema sabiranju
RAČUN OSTATAKA 1 1 Prsten celih brojeva Z := N + {} N + = {, 3, 2, 1,, 1, 2, 3,...} Osnovni primer. (Z, +,,,, 1) je komutativan prsten sa jedinicom: sabiranje (S1) asocijativnost x + (y + z) = (x + y)
UNIVERZITET U NIŠU ELEKTRONSKI FAKULTET SIGNALI I SISTEMI. Zbirka zadataka
UNIVERZITET U NIŠU ELEKTRONSKI FAKULTET Goran Stančić SIGNALI I SISTEMI Zbirka zadataka NIŠ, 014. Sadržaj 1 Konvolucija Literatura 11 Indeks pojmova 11 3 4 Sadržaj 1 Konvolucija Zadatak 1. Odrediti konvoluciju
Operacije s matricama
Linearna algebra I Operacije s matricama Korolar 3.1.5. Množenje matrica u vektorskom prostoru M n (F) ima sljedeća svojstva: (1) A(B + C) = AB + AC, A, B, C M n (F); (2) (A + B)C = AC + BC, A, B, C M
IspitivaƬe funkcija: 1. Oblast definisanosti funkcije (ili domen funkcije) D f
IspitivaƬe funkcija: 1. Oblast definisanosti funkcije (ili domen funkcije) D f IspitivaƬe funkcija: 1. Oblast definisanosti funkcije (ili domen funkcije) D f 2. Nule i znak funkcije; presek sa y-osom IspitivaƬe
Numerička matematika 2. kolokvij (1. srpnja 2009.)
Numerička matematika 2. kolokvij (1. srpnja 29.) Zadatak 1 (1 bodova.) Teorijsko pitanje. (A) Neka je G R m n, uz m n, pravokutna matrica koja ima puni rang po stupcima, tj. rang(g) = n. (a) Napišite puni
Matematička analiza 1 dodatni zadaci
Matematička analiza 1 dodatni zadaci 1. Ispitajte je li funkcija f() := 4 4 5 injekcija na intervalu I, te ako jest odredite joj sliku i inverz, ako je (a) I = [, 3), (b) I = [1, ], (c) I = ( 1, 0].. Neka
Kaskadna kompenzacija SAU
Kaskadna kompenzacija SAU U inženjerskoj praksi, naročito u sistemima regulacije elektromotornih pogona i tehnoloških procesa, veoma često se primenjuje metoda kaskadne kompenzacije, u čijoj osnovi su
IZVODI ZADACI (I deo)
IZVODI ZADACI (I deo Najpre da se podsetimo tablice i osnovnih pravila:. C0.. (. ( n n n-. (a a lna 6. (e e 7. (log a 8. (ln ln a (>0 9. ( 0 0. (>0 (ovde je >0 i a >0. (cos. (cos - π. (tg kπ cos. (ctg
Riješeni zadaci: Limes funkcije. Neprekidnost
Riješeni zadaci: Limes funkcije. Neprekidnost Limes funkcije Neka je 0 [a, b] i f : D R, gdje je D = [a, b] ili D = [a, b] \ { 0 }. Kažemo da je es funkcije f u točki 0 jednak L i pišemo f ) = L, ako za
PRAVA. Prava je u prostoru određena jednom svojom tačkom i vektorom paralelnim sa tom pravom ( vektor paralelnosti).
PRAVA Prava je kao i ravan osnovni geometrijski ojam i ne definiše se. Prava je u rostoru određena jednom svojom tačkom i vektorom aralelnim sa tom ravom ( vektor aralelnosti). M ( x, y, z ) 3 Posmatrajmo
Iskazna logika 3. Matematička logika u računarstvu. novembar 2012
Iskazna logika 3 Matematička logika u računarstvu Department of Mathematics and Informatics, Faculty of Science,, Serbia novembar 2012 Deduktivni sistemi 1 Definicija Deduktivni sistem (ili formalna teorija)
PRIMJER 3. MATLAB filtdemo
PRIMJER 3. MATLAB filtdemo Prijenosna funkcija (IIR) Hz () =, 6 +, 3 z +, 78 z +, 3 z +, 53 z +, 3 z +, 78 z +, 3 z +, 6 z, 95 z +, 74 z +, z +, 9 z +, 4 z +, 5 z +, 3 z +, 4 z 3 4 5 6 7 8 3 4 5 6 7 8
Linearna algebra 2 prvi kolokvij,
Linearna algebra 2 prvi kolokvij, 27.. 20.. Za koji cijeli broj t je funkcija f : R 4 R 4 R definirana s f(x, y) = x y (t + )x 2 y 2 + x y (t 2 + t)x 4 y 4, x = (x, x 2, x, x 4 ), y = (y, y 2, y, y 4 )
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.
Neka je a 3 x 3 + a x + a 1 x + a 0 = 0 algebarska jednadžba trećeg stupnja. Rješavanje ove jednadžbe sastoji se od nekoliko koraka. 1 Normiranje jednadžbe. Jednadžbu podijelimo s a 3 i dobivamo x 3 +
TRIGONOMETRIJSKE FUNKCIJE I I.1.
TRIGONOMETRIJSKE FUNKCIJE I I Odredi na brojevnoj trigonometrijskoj kružnici točku Et, za koju je sin t =,cost < 0 Za koje realne brojeve a postoji realan broj takav da je sin = a? Izračunaj: sin π tg
ELEKTROTEHNIČKI ODJEL
MATEMATIKA. Neka je S skup svih živućih državljana Republike Hrvatske..04., a f preslikavanje koje svakom elementu skupa S pridružuje njegov horoskopski znak (bez podznaka). a) Pokažite da je f funkcija,
1.4 Tangenta i normala
28 1 DERIVACIJA 1.4 Tangenta i normala Ako funkcija f ima derivaciju u točki x 0, onda jednadžbe tangente i normale na graf funkcije f u točki (x 0 y 0 ) = (x 0 f(x 0 )) glase: t......... y y 0 = f (x
( , 2. kolokvij)
A MATEMATIKA (0..20., 2. kolokvij). Zadana je funkcija y = cos 3 () 2e 2. (a) Odredite dy. (b) Koliki je nagib grafa te funkcije za = 0. (a) zadanu implicitno s 3 + 2 y = sin y, (b) zadanu parametarski
Linearna algebra 2 prvi kolokvij,
1 2 3 4 5 Σ jmbag smjer studija Linearna algebra 2 prvi kolokvij, 7. 11. 2012. 1. (10 bodova) Neka je dano preslikavanje s : R 2 R 2 R, s (x, y) = (Ax y), pri čemu je A: R 2 R 2 linearan operator oblika
5. Karakteristične funkcije
5. Karakteristične funkcije Profesor Milan Merkle emerkle@etf.rs milanmerkle.etf.rs Verovatnoća i Statistika-proleće 2018 Milan Merkle Karakteristične funkcije ETF Beograd 1 / 10 Definicija Karakteristična
radni nerecenzirani materijal za predavanja
Matematika 1 Funkcije radni nerecenzirani materijal za predavanja Definicija 1. Kažemo da je funkcija f : a, b R u točki x 0 a, b postiže lokalni minimum ako postoji okolina O(x 0 ) broja x 0 takva da je
Ulaz i izlaz podataka
Ulaz i izlaz podataka Kada funkcija getchar naidje na kraj ulaznih podataka vraća vrijednost EOF (skraćeno od eng. End of File). EOF je simbolička konstanta definirana u koja signalizira kraj
DISKRETNA MATEMATIKA - PREDAVANJE 7 - Jovanka Pantović
DISKRETNA MATEMATIKA - PREDAVANJE 7 - Jovanka Pantović Novi Sad April 17, 2018 1 / 22 Teorija grafova April 17, 2018 2 / 22 Definicija Graf je ure dena trojka G = (V, G, ψ), gde je (i) V konačan skup čvorova,
Veleučilište u Rijeci Stručni studij sigurnosti na radu Akad. god. 2011/2012. Matematika. Monotonost i ekstremi. Katica Jurasić. Rijeka, 2011.
Veleučilište u Rijeci Stručni studij sigurnosti na radu Akad. god. 2011/2012. Matematika Monotonost i ekstremi Katica Jurasić Rijeka, 2011. Ishodi učenja - predavanja Na kraju ovog predavanja moći ćete:,
1 Promjena baze vektora
Promjena baze vektora Neka su dane dvije različite uredene baze u R n, označimo ih s A = (a, a,, a n i B = (b, b,, b n Svaki vektor v R n ima medusobno različite koordinatne zapise u bazama A i B Zapis
Sume kvadrata. mn = (ax + by) 2 + (ay bx) 2.
Sume kvadrata Koji se prirodni brojevi mogu prikazati kao zbroj kvadrata dva cijela broja? Propozicija 1. Ako su brojevi m i n sume dva kvadrata, onda je i njihov produkt m n takoder suma dva kvadrata.
IZVODI ZADACI ( IV deo) Rešenje: Najpre ćemo logaritmovati ovu jednakost sa ln ( to beše prirodni logaritam za osnovu e) a zatim ćemo
IZVODI ZADACI ( IV deo) LOGARITAMSKI IZVOD Logariamskim izvodom funkcije f(), gde je >0 i, nazivamo izvod logarima e funkcije, o jes: (ln ) f ( ) f ( ) Primer. Nadji izvod funkcije Najpre ćemo logarimovai
RIJEŠENI ZADACI I TEORIJA IZ
RIJEŠENI ZADACI I TEORIJA IZ LOGARITAMSKA FUNKCIJA SVOJSTVA LOGARITAMSKE FUNKCIJE OSNOVE TRIGONOMETRIJE PRAVOKUTNOG TROKUTA - DEFINICIJA TRIGONOMETRIJSKIH FUNKCIJA - VRIJEDNOSTI TRIGONOMETRIJSKIH FUNKCIJA
21. ŠKOLSKO/OPĆINSKO/GRADSKO NATJECANJE IZ GEOGRAFIJE GODINE 8. RAZRED TOČNI ODGOVORI
21. ŠKOLSKO/OPĆINSKO/GRADSKO NATJECANJE IZ GEOGRAFIJE 2014. GODINE 8. RAZRED TOČNI ODGOVORI Bodovanje za sve zadatke: - boduju se samo točni odgovori - dodatne upute navedene su za pojedine skupine zadataka
Zavrxni ispit iz Matematiqke analize 1
Građevinski fakultet Univerziteta u Beogradu 3.2.2016. Zavrxni ispit iz Matematiqke analize 1 Prezime i ime: Broj indeksa: 1. Definisati Koxijev niz. Dati primer niza koji nije Koxijev. 2. Dat je red n=1
Riješeni zadaci: Nizovi realnih brojeva
Riješei zadaci: Nizovi realih brojeva Nizovi, aritmetički iz, geometrijski iz Fukciju a : N R azivamo beskoači) iz realih brojeva i ozačavamo s a 1, a,..., a,... ili a ), pri čemu je a = a). Aritmetički
Cauchyjev teorem. Postoji više dokaza ovog teorema, a najjednostvniji je uz pomoć Greenove formule: dxdy. int C i Cauchy Riemannovih uvjeta.
auchyjev teorem Neka je f-ja f (z) analitička u jednostruko (prosto) povezanoj oblasti G, i neka je zatvorena kontura koja čitava leži u toj oblasti. Tada je f (z)dz = 0. Postoji više dokaza ovog teorema,
Osnovne teoreme diferencijalnog računa
Osnovne teoreme diferencijalnog računa Teorema Rolova) Neka je funkcija f definisana na [a, b], pri čemu važi f je neprekidna na [a, b], f je diferencijabilna na a, b) i fa) fb). Tada postoji ξ a, b) tako
2log. se zove numerus (logaritmand), je osnova (baza) log. log. log =
( > 0, 0)!" # > 0 je najčešći uslov koji postavljamo a još je,, > 0 se zove numerus (aritmand), je osnova (baza). 0.. ( ) +... 7.. 8. Za prelazak na neku novu bazu c: 9. Ako je baza (osnova) 0 takvi se
Računarska grafika. Rasterizacija linije
Računarska grafika Osnovni inkrementalni algoritam Drugi naziv u literaturi digitalni diferencijalni analizator (DDA) Pretpostavke (privremena ograničenja koja se mogu otkloniti jednostavnim uopštavanjem
Ispitivanje toka i skiciranje grafika funkcija
Ispitivanje toka i skiciranje grafika funkcija Za skiciranje grafika funkcije potrebno je ispitati svako od sledećih svojstava: Oblast definisanosti: D f = { R f R}. Parnost, neparnost, periodičnost. 3
41. Jednačine koje se svode na kvadratne
. Jednačine koje se svode na kvadrane Simerične recipročne) jednačine Jednačine oblika a n b n c n... c b a nazivamo simerične jednačine, zbog simeričnosi koeficijenaa koeficijeni uz jednaki). k i n k
Matematika 1 - vježbe. 11. prosinca 2015.
Matematika - vježbe. prosinca 5. Stupnjevi i radijani Ako je kut φ jednak i rad, tada je veza između i 6 = Zadatak.. Izrazite u stupnjevima: a) 5 b) 7 9 c). d) 7. a) 5 9 b) 7 6 6 = = 5 c). 6 8.5 d) 7.
Teorijske osnove informatike 1
Teorijske osnove informatike 1 9. oktobar 2014. () Teorijske osnove informatike 1 9. oktobar 2014. 1 / 17 Funkcije Veze me du skupovima uspostavljamo skupovima koje nazivamo funkcijama. Neformalno, funkcija
Eliminacijski zadatak iz Matematike 1 za kemičare
Za mnoge reakcije vrijedi Arrheniusova jednadžba, koja opisuje vezu koeficijenta brzine reakcije i temperature: K = Ae Ea/(RT ). - T termodinamička temperatura (u K), - R = 8, 3145 J K 1 mol 1 opća plinska
Elementi spektralne teorije matrica
Elementi spektralne teorije matrica Neka je X konačno dimenzionalan vektorski prostor nad poljem K i neka je A : X X linearni operator. Definicija. Skalar λ K i nenula vektor u X se nazivaju sopstvena
XI dvoqas veжbi dr Vladimir Balti. 4. Stabla
XI dvoqas veжbi dr Vladimir Balti 4. Stabla Teorijski uvod Teorijski uvod Definicija 5.7.1. Stablo je povezan graf bez kontura. Definicija 5.7.1. Stablo je povezan graf bez kontura. Primer 5.7.1. Sva stabla
Pismeni ispit iz matematike Riješiti sistem jednačina i diskutovati rješenja sistema u zavisnosti od parametra: ( ) + 1.
Pismeni ispit iz matematike 0 008 GRUPA A Riješiti sistem jednačina i diskutovati rješenja sistema u zavisnosti od parametra: λ + z = Ispitati funkciju i nacrtati njen grafik: + ( λ ) + z = e Izračunati
SEMINAR IZ KOLEGIJA ANALITIČKA KEMIJA I. Studij Primijenjena kemija
SEMINAR IZ OLEGIJA ANALITIČA EMIJA I Studij Primijenjena kemija 1. 0,1 mola NaOH je dodano 1 litri čiste vode. Izračunajte ph tako nastale otopine. NaOH 0,1 M NaOH Na OH Jak elektrolit!!! Disoira potpuno!!!
( , treći kolokvij) 3. Na dite lokalne ekstreme funkcije z = x 4 + y 4 2x 2 + 2y 2 3. (20 bodova)
A MATEMATIKA (.6.., treći kolokvij. Zadana je funkcija z = e + + sin(. Izračunajte a z (,, b z (,, c z.. Za funkciju z = 3 + na dite a diferencijal dz, b dz u točki T(, za priraste d =. i d =.. c Za koliko
6 Polinomi Funkcija p : R R zadana formulom
6 Polinomi Funkcija p : R R zadana formulom p(x) = a n x n + a n 1 x n 1 +... + a 1 x + a 0, gdje su a 0, a 1,..., a n realni brojevi, a n 0, i n prirodan broj ili 0, naziva se polinom n-tog stupnja s
ASIMPTOTE FUNKCIJA. Dakle: Asimptota je prava kojoj se funkcija približava u beskonačno dalekoj tački. Postoje tri vrste asimptota:
ASIMPTOTE FUNKCIJA Naš savet je da najpre dobro proučite granične vrednosti funkcija Neki profesori vole da asimptote funkcija ispituju kao ponašanje funkcije na krajevima oblasti definisanosti, pa kako
INTELIGENTNO UPRAVLJANJE
INTELIGENTNO UPRAVLJANJE Fuzzy sistemi zaključivanja Vanr.prof. Dr. Lejla Banjanović-Mehmedović Mehmedović 1 Osnovni elementi fuzzy sistema zaključivanja Fazifikacija Baza znanja Baze podataka Baze pravila
numeričkih deskriptivnih mera.
DESKRIPTIVNA STATISTIKA Numeričku seriju podataka opisujemo pomoću Numeričku seriju podataka opisujemo pomoću numeričkih deskriptivnih mera. Pokazatelji centralne tendencije Aritmetička sredina, Medijana,
Više dokaza jedne poznate trigonometrijske nejednakosti u trokutu
Osječki matematički list 000), 5 9 5 Više dokaza jedne poznate trigonometrijske nejednakosti u trokutu Šefket Arslanagić Alija Muminagić Sažetak. U radu se navodi nekoliko različitih dokaza jedne poznate
Ĉetverokut - DOMAĆA ZADAĆA. Nakon odgledanih videa trebali biste biti u stanju samostalno riješiti sljedeće zadatke.
Ĉetverokut - DOMAĆA ZADAĆA Nakon odgledanih videa trebali biste biti u stanju samostalno riješiti sljedeće zadatke. 1. Duljine dijagonala paralelograma jednake su 6,4 cm i 11 cm, a duljina jedne njegove
Programiranje 1 6. predavanje
Programiranje 1 6. predavanje Saša Singer singer@math.hr web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog1 2016, 6. predavanje p. 1/91 Sadržaj predavanja Konstante i varijable: Konstante.
NOMENKLATURA ORGANSKIH SPOJEVA. Imenovanje aromatskih ugljikovodika
NOMENKLATURA ORGANSKIH SPOJEVA Imenovanje aromatskih ugljikovodika benzen metilbenzen (toluen) 1,2-dimetilbenzen (o-ksilen) 1,3-dimetilbenzen (m-ksilen) 1,4-dimetilbenzen (p-ksilen) fenilna grupa 2-fenilheptan
Funkcija gustoće neprekidne slučajne varijable ima dva bitna svojstva: 1. Nenegativnost: f(x) 0, x R, 2. Normiranost: f(x)dx = 1.
σ-algebra skupova Definicija : Neka je Ω neprazan skup i F P(Ω). Familija skupova F je σ-algebra skupova na Ω ako vrijedi:. F, 2. A F A C F, 3. A n, n N} F n N A n F. Borelova σ-algebra Definicija 2: Neka
( ) ( ) 2 UNIVERZITET U ZENICI POLITEHNIČKI FAKULTET. Zadaci za pripremu polaganja kvalifikacionog ispita iz Matematike. 1. Riješiti jednačine: 4
UNIVERZITET U ZENICI POLITEHNIČKI FAKULTET Riješiti jednačine: a) 5 = b) ( ) 3 = c) + 3+ = 7 log3 č) = 8 + 5 ć) sin cos = d) 5cos 6cos + 3 = dž) = đ) + = 3 e) 6 log + log + log = 7 f) ( ) ( ) g) ( ) log
π π ELEKTROTEHNIČKI ODJEL i) f (x) = x 3 x 2 x + 1, a = 1, b = 1;
1. Provjerite da funkcija f definirana na segmentu [a, b] zadovoljava uvjete Rolleova poučka, pa odredite barem jedan c a, b takav da je f '(c) = 0 ako je: a) f () = 1, a = 1, b = 1; b) f () = 4, a =,
- pravac n je zadan s točkom T(2,0) i koeficijentom smjera k=2. (30 bodova)
MEHANIKA 1 1. KOLOKVIJ 04/2008. grupa I 1. Zadane su dvije sile F i. Sila F = 4i + 6j [ N]. Sila je zadana s veličinom = i leži na pravcu koji s koordinatnom osi x zatvara kut od 30 (sve komponente sile
Funkcije. Definisanje funkcija. [tip] ime(argumenti) telo
Funkcije Definisanje funkcija Potprogrami: dekompozicija složenih problema na jednostavnije procesna apstrakcija samo funkcije (nema procedura) funkcija - n-arni operator najvišeg prioriteta vraća rezultat
Programiranje 2 3. predavanje
Programiranje 2 3. predavanje Saša Singer singer@math.hr web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog2 2017, 3. predavanje p. 1/76 Sadržaj predavanja Struktura programa (kraj): Blokovska
Računarska grafika. Rasterizacija linije
Računarska grafika Osnovni inkrementalni algoritam Drugi naziv u literaturi digitalni diferencijalni analizator (DDA) Pretpostavke (privremena ograničenja koja se mogu otkloniti jednostavnim uopštavanjem
Pismeni ispit iz matematike GRUPA A 1. Napisati u trigonometrijskom i eksponencijalnom obliku kompleksni broj, zatim naći 4 z.
Pismeni ispit iz matematike 06 007 Napisati u trigonometrijskom i eksponencijalnom obliku kompleksni broj z = + i, zatim naći z Ispitati funkciju i nacrtati grafik : = ( ) y e + 6 Izračunati integral:
2. Ako je funkcija f(x) parna onda se Fourierov red funkcije f(x) reducira na Fourierov kosinusni red. f(x) cos
. KOLOKVIJ PRIMIJENJENA MATEMATIKA FOURIEROVE TRANSFORMACIJE 1. Za periodičnu funkciju f(x) s periodom p=l Fourierov red je gdje su a,a n, b n Fourierovi koeficijenti od f(x) gdje su a =, a n =, b n =..
#define, 70, 575 #elif, 580 #else, 580 #endif, 580 #error, 584 #if, 580 #ifdef, 583 #ifndef, 580, 583 #include, 70, 227, 574 #undef, 579
Ευρετήριο Η γλώσσα C σε βάθος # #define, 70, 575 #elif, 580 #else, 580 #endif, 580 #error, 584 #if, 580 #ifdef, 583 #ifndef, 580, 583 #include, 70, 227, 574 #undef, 579 A abs(), 625 AND, 64 ASCII πίνακας
IZRAČUNAVANJE POKAZATELJA NAČINA RADA NAČINA RADA (ISKORIŠĆENOSTI KAPACITETA, STEPENA OTVORENOSTI RADNIH MESTA I NIVOA ORGANIZOVANOSTI)
IZRAČUNAVANJE POKAZATELJA NAČINA RADA NAČINA RADA (ISKORIŠĆENOSTI KAPACITETA, STEPENA OTVORENOSTI RADNIH MESTA I NIVOA ORGANIZOVANOSTI) Izračunavanje pokazatelja načina rada OTVORENOG RM RASPOLOŽIVO RADNO
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
(kompleksna analiza, vježbe ). Izračunajte a) (+i) ( i)= b) (i+) = c) i + i 4 = d) i+i + i 3 + i 4 = e) (a+bi)(a bi)= f) (+i)(i )= Skicirajte rješenja u kompleksnoj ravnini.. Pokažite da za konjugiranje
Matematičke metode u marketingumultidimenzionalno skaliranje. Lavoslav ČaklovićPMF-MO
Matematičke metode u marketingu Multidimenzionalno skaliranje Lavoslav Čaklović PMF-MO 2016 MDS Čemu služi: za redukciju dimenzije Bazirano na: udaljenosti (sličnosti) među objektima Problem: Traži se
radni nerecenzirani materijal za predavanja R(f) = {f(x) x D}
Matematika 1 Funkcije radni nerecenzirani materijal za predavanja Definicija 1. Neka su D i K bilo koja dva neprazna skupa. Postupak f koji svakom elementu x D pridružuje točno jedan element y K zovemo funkcija
SISTEMI NELINEARNIH JEDNAČINA
SISTEMI NELINEARNIH JEDNAČINA April, 2013 Razni zapisi sistema Skalarni oblik: Vektorski oblik: F = f 1 f n f 1 (x 1,, x n ) = 0 f n (x 1,, x n ) = 0, x = (1) F(x) = 0, (2) x 1 0, 0 = x n 0 Definicije
Κεφάλαιο , 3.2: Συναρτήσεις II. (Διάλεξη 12)
Κεφάλαιο 3.5-3.6, 3.2: Συναρτήσεις II (Διάλεξη 12) 12-1 Ανασκόπηση Δομής Προγράμματος με Συναρτήσεις 1 void PrintMessage (); Πρότυπο (Δήλωση) Συνάρτησης (Δηλώνουν τι επιπλέον συναρτήσεις θα χρησιμοποιήσουμε
Konstruisati efikasan algoritam znači dati skup preciznih uputstava kako doći do rešenja zadatog problema Algoritmi se mogu opisivati:
Staša Vujičić Konstruisati efikasan algoritam znači dati skup preciznih uputstava kako doći do rešenja zadatog problema Algoritmi se mogu opisivati: pseudo jezikom prirodnim jezikom dijagramom toka. 2
MATRICE I DETERMINANTE - formule i zadaci - (Matrice i determinante) 1 / 15
MATRICE I DETERMINANTE - formule i zadaci - (Matrice i determinante) 1 / 15 Matrice - osnovni pojmovi (Matrice i determinante) 2 / 15 (Matrice i determinante) 2 / 15 Matrice - osnovni pojmovi Matrica reda
KVADRATNA FUNKCIJA. Kvadratna funkcija je oblika: Kriva u ravni koja predstavlja grafik funkcije y = ax + bx + c. je parabola.
KVADRATNA FUNKCIJA Kvadratna funkcija je oblika: = a + b + c Gde je R, a 0 i a, b i c su realni brojevi. Kriva u ravni koja predstavlja grafik funkcije = a + b + c je parabola. Najpre ćemo naučiti kako
Κεφάλαιο 3.5-3.6, 3.2: Συναρτήσεις II. ( ιάλεξη 12) ιδάσκων: ηµήτρης Ζεϊναλιπούρ
Κεφάλαιο 3.5-3.6, 3.2: Συναρτήσεις II ( ιάλεξη 12) ιδάσκων: ηµήτρης Ζεϊναλιπούρ 12-1 Ανασκόπηση οµής Προγράµµατος µε Συναρτήσεις #include 1 void PrintMessage (); Πρότυπο ( ήλωση) Συνάρτησης (
Pošto pretvaramo iz veće u manju mjernu jedinicu broj 2.5 množimo s 1000,
PRERAČUNAVANJE MJERNIH JEDINICA PRIMJERI, OSNOVNE PRETVORBE, POTENCIJE I ZNANSTVENI ZAPIS, PREFIKSKI, ZADACI S RJEŠENJIMA Primjeri: 1. 2.5 m = mm Pretvaramo iz veće u manju mjernu jedinicu. 1 m ima dm,
4.7. Zadaci Formalizam diferenciranja (teorija na stranama ) 343. Znajući izvod funkcije x arctg x, odrediti izvod funkcije x arcctg x.
4.7. ZADACI 87 4.7. Zadaci 4.7.. Formalizam diferenciranja teorija na stranama 4-46) 340. Znajući izvod funkcije arcsin, odrediti izvod funkcije arccos. Rešenje. Polazeći od jednakosti arcsin + arccos
Program za tablično računanje Microsoft Excel
Program za tablično računanje Microsoft Excel Teme Formule i funkcije Zbrajanje Oduzimanje Množenje Dijeljenje Izračun najveće vrijednosti Izračun najmanje vrijednosti 2 Formule i funkcije Naravno da je
ΛΥΜΕΝΕΣ ΑΣΚΗΣΕΙΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ-ΓΛΩΣΣΑ C ΑΤΕΙ (ΝΑ ΕΚΤΕΛΕΣΤΟΥΝ ΤΑ ΠΑΡΑΚΑΤΩ ΜΕ ΧΡΗΣΗ ΤΟΥ LCC COMPILER)
ΛΥΜΕΝΕΣ ΑΣΚΗΣΕΙΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ-ΓΛΩΣΣΑ C ΑΤΕΙ (ΝΑ ΕΚΤΕΛΕΣΤΟΥΝ ΤΑ ΠΑΡΑΚΑΤΩ ΜΕ ΧΡΗΣΗ ΤΟΥ LCC COMPILER) 1. Να γραφεί πρόγραµµα το οποίο να αναγνωρίζει αν κάποιος χαρακτήρας είναι ψηφίο, κεφαλαίο γράµµα ή
Determinante. a11 a. a 21 a 22. Definicija 1. (Determinanta prvog reda) Determinanta matrice A = [a] je broj a.
Determinante Determinanta A deta je funkcija definirana na skupu svih kvadratnih matrica, a poprima vrijednosti iz skupa skalara Osim oznake deta za determinantu kvadratne matrice a 11 a 12 a 1n a 21 a
4 INTEGRALI Neodredeni integral Integriranje supstitucijom Parcijalna integracija Odredeni integral i
Sdržj 4 INTEGRALI 64 4. Neodredeni integrl........................ 64 4. Integrirnje supstitucijom.................... 68 4. Prcijln integrcij....................... 7 4.4 Odredeni integrl i rčunnje površine
Programski jezik C. M. Jurak. predavanja. ak. g. 2003/04.
Programski jezik C predavanja ak. g. 2003/04. M. Jurak Sadržaj 1 Uvod 8 1.1 Programski jezici......................... 8 1.2 Osnove pisanja programa u Unix okruženju.......... 10 1.2.1 Editor teksta.......................
POTPUNO RIJEŠENIH ZADATAKA PRIRUČNIK ZA SAMOSTALNO UČENJE
**** MLADEN SRAGA **** 011. UNIVERZALNA ZBIRKA POTPUNO RIJEŠENIH ZADATAKA PRIRUČNIK ZA SAMOSTALNO UČENJE SKUP REALNIH BROJEVA α Autor: MLADEN SRAGA Grafički urednik: BESPLATNA - WEB-VARIJANTA Tisak: M.I.M.-SRAGA
Uvod u teoriju brojeva
Uvod u teoriju brojeva 2. Kongruencije Borka Jadrijević Borka Jadrijević () UTB 2 1 / 25 2. Kongruencije Kongruencija - izjava o djeljivosti; Teoriju kongruencija uveo je C. F. Gauss 1801. De nicija (2.1)
III VEŽBA: FURIJEOVI REDOVI
III VEŽBA: URIJEOVI REDOVI 3.1. eorijska osnova Posmatrajmo neki vremenski kontinualan signal x(t) na intervalu definisati: t + t t. ada se može X [ k ] = 1 t + t x ( t ) e j 2 π kf t dt, gde je f = 1/.
12. Συναρτήσεις (Μέρος ΙI)
Προγραμματισμός Μεθόδων Επίλυσης Προβλημάτων 12. Συναρτήσεις (Μέρος ΙI) Ιωάννης Κατάκης Σήμερα o Συναρτήσεις χωρίς παραμέτρους o Συναρτήσεις με παραμέτρους Χωρίς επιστροφή τιμής Με επιστροφή τιμής o Εμβέλεια
Računanje sume članova polja
Računanje sume članova polja Zadatak: napisati funkciju koja računa sumu članova polja. Najjednostavnije rješenje: enje: int suma1 (int polje[], int n) { složenost O(n) int i, suma = 0; for (i = 0; i