Oblikovanje i analiza algoritama 5. predavanje Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb OAA 2017, 5. pr

Величина: px
Почињати приказ од странице:

Download "Oblikovanje i analiza algoritama 5. predavanje Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb OAA 2017, 5. pr"

Транскрипт

1 Oblikovanje i analiza algoritama 5. predavanje Saša Singer singer@math.hr web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb OAA 2017, 5. predavanje p. 1/68

2 Sadržaj predavanja Nehomogene rekurzije i homogenizacija: Opće rješenje homogenizirane rekurzije. Opće rješenje polazne nehomogene rekurzije. Primjer sporog algoritma Hanojski tornjevi: Jednostavni model složenosti broj poteza. Hanojski tornjevi razne varijante (Pascal). Hanojski tornjevi Intel C compiler. Prošireni model složenosti. OAA 2017, 5. predavanje p. 2/68

3 Informacije web stranica Moja web stranica za Oblikovanje i analizu algoritama je ili, skraćeno Kopija je na adresi Službena web stranica za Oblikovanje i analizu algoritama je OAA 2017, 5. predavanje p. 3/68

4 Informacije kolokviji Oblikovanje i analiza algoritama je u kolokvijskom razredu B1. Službeni termini svih kolokvija su: Prvi kolokvij: srijeda, , u 9 sati. Drugi kolokvij: srijeda, , u 9 sati. Popravni kolokvij: srijeda, , u 9 sati. Uputa: izbjegnite popravni obavite to ranije! OAA 2017, 5. predavanje p. 4/68

5 Osnovni model složenosti OAA 2017, 5. predavanje p. 5/68

6 Osnovni model = broj osnovnih poteza Jednostavni model (vremenske) složenosti Hanojskih tornjeva dobivamo tako da gledamo samo broj osnovnih poteza = prebacivanja po jednog diska, tj., broj poziva funkcije prebaci_jednog. Dakle, model za složenost, u ovisnosti o broju diskova n, je t n := broj poteza za n diskova = h n. Pripadna rekurzija za t n je ista kao i za h n (v. Prog2) t n = { 0, za n = 0, 2t n 1 +1, za n > 0. OAA 2017, 5. predavanje p. 6/68

7 Oblik rekurzije za broj poteza Za početak, ovo je nehomogena rekurzija, sa zadanim (jednim) početnim uvjetom t 0 = 0. Pripadna homogena rekurzija ima oblik, kao u (1), t n = 2t n 1, za n > 0, = linearna rekurzija prvog reda, s konstantnim koeficijentima. Nehomogeni član u rekurziji ima standardni oblik, kao u (4), uz g(n) = b n p d (n), b = 1, p 0 (n) = 1. Dakle, treba riješiti standardnu nehomogenu rekurziju prvog reda, s konstantnim koeficijentima. OAA 2017, 5. predavanje p. 7/68

8 Rješenje rekurzije za broj poteza Rješenje. Karakteristična jednadžba homogenizirane rekurzije je (x 2)(x 1) = 0, s korijenima r 1 = 1 i r 2 = 2. Opće rješenje homogenizirane rekurzije je t n = c 1 1 n +c 2 2 n. Ovo rješenje uvrstimo u polaznu rekurziju, zato da dobijemo konstantu c 1 uz onaj dio rješenja koji odgovara nehomogenom članu. Izlazi c 1 +c 2 2 n = 2 ( c 1 +c 2 2 n 1) +1 c 1 = 2c 1 +1 c 1 = 1. OAA 2017, 5. predavanje p. 8/68

9 Rješenje rekurzije za broj poteza Dakle, opće rješenje polazne nehomogene rekurzije je t n = c 2 2 n 1, n 0, a konstanta c 2 se računa iz početnog uvjeta t 0. Početni uvjet je t 0 = 0, pa je t 0 = c = 0 = c 2 = 1. Konačno rješenje za broj poteza u Hanojskim tornjevima s n diskova je t n = 2 n 1, n 0. OAA 2017, 5. predavanje p. 9/68

10 Model trajanje jednog poteza Broj poteza za n diskova: F(n) = 2 n 1. Ako je izmjereno vrijeme T(n), onda je trajanje jednog poteza c(n) = T(n) F(n) = T(n) 2 n 1. Uočiti: c(n) je obratno proporcionalan brzini (inverz brzine). OAA 2017, 5. predavanje p. 10/68

11 Hanojski tornjevi u Pascalu OAA 2017, 5. predavanje p. 11/68

12 Hanoi ispis na ekran procedure Hanoi ( n, i, j : integer ) ; begin if n > 0 then begin Hanoi ( n - 1, i, 6 - i - j ) ; writeln ( i, ->, j ) ; Hanoi ( n - 1, 6 - i - j, j ) ; end ; { n > 0 } end ; { Hanoi } OAA 2017, 5. predavanje p. 12/68

13 Hanoi ispis na disk procedure Hanoi ( n, i, j : integer ) ; begin if n > 0 then begin Hanoi ( n - 1, i, 6 - i - j ) ; writeln ( Moves, i, ->, j ) ; Hanoi ( n - 1, 6 - i - j, j ) ; end ; { n > 0 } end ; { Hanoi } OAA 2017, 5. predavanje p. 13/68

14 Hanoi opis varijanti potprograma Za normalnije mjerenje vremena (i brzine) bez ispisa, testiramo 2 2 = 4 varijante potprograma Hanoi. Dubina rekurzije: varijanta 0 ima pozive za n = 0, koji ništa ne rade, varijanta 1 nema pozive za n = 0, s posebnim testom za n = 1. Broj argumenata: obična varijanta ima samo dvije igle kao argumente (odakle, kamo) i računa pomoćnu iglu, varijanta a ima sve tri igle kao argumente, bez računa. OAA 2017, 5. predavanje p. 14/68

15 Hanoi varijanta 0 procedure Hanoi ( n, i, j : integer ) ; begin if n > 0 then begin Hanoi ( n - 1, i, 6 - i - j ) ; Prebaci ( i, j ) ; Hanoi ( n - 1, 6 - i - j, j ) ; end ; { n > 0 } end ; { Hanoi } OAA 2017, 5. predavanje p. 15/68

16 Hanoi varijanta 1 procedure Hanoi ( n, i, j : integer ) ; begin if n <= 1 then Prebaci ( i, j ) else begin Hanoi ( n - 1, i, 6 - i - j ) ; Prebaci ( i, j ) ; Hanoi ( n - 1, 6 - i - j, j ) ; end ; { n > 0 } end ; { Hanoi } OAA 2017, 5. predavanje p. 16/68

17 Hanoi varijanta a0 procedure Hanoi ( n, i, j, k : integer ) ; begin if n > 0 then begin Hanoi ( n - 1, i, k, j ) ; Prebaci ( i, j ) ; Hanoi ( n - 1, k, j, i ) ; end ; { n > 0 } end ; { Hanoi } OAA 2017, 5. predavanje p. 17/68

18 Hanoi varijanta a1 procedure Hanoi ( n, i, j, k : integer ) ; begin if n <= 1 then Prebaci ( i, j ) else begin Hanoi ( n - 1, i, k, j ) ; Prebaci ( i, j ) ; Hanoi ( n - 1, k, j, i ) ; end ; { n > 0 } end ; { Hanoi } OAA 2017, 5. predavanje p. 18/68

19 Potprogram prebaci Potprogram Prebaci samo zbraja poteze (globalni brojač): procedure Prebaci ( i, j : integer ) ; begin { Povecaj globalni brojac poteza. Trajanje je (skoro) konstantno: T(Prebaci) = c.} Broj_poteza := Broj_poteza + 1 ; end ; { Prebaci } OAA 2017, 5. predavanje p. 19/68

20 Sudionici (žrtve) eksperimenta Test je napravljen godine, s 2 Pascal compilera: Turbo Pascal 7 generira 16 bitni kôd za obični DOS. Free Pascal generira 32 bitni kôd za tzv. DOS ekstender GO32v2. Izvršavanje je kroz DOS prozor na Windowsima (2000, XP). Računala u eksperimentu su: Pentium na 166MHz, zvani P , roden 1996., (ranije je imao Pentium na 120 MHz); Pentium 2 na 333MHz, zvani Klamath, roden 1998., (kasnije je imao Pentium 3 na 500MHz); Pentium 4/660 na 3.6 GHz, zvan(a) BabyBlue, roden(a) 2005., test iz godine (isti.exe kao prije); OAA 2017, 5. predavanje p. 20/68

21 TP7 Tablica izmjerenih vremena T(n) Usporedba izmjerenih vremena T(n) (u s) za razna računala i razne varijante: Varijanta P Klamath BabyBlue ekran, n = disk, n = , n = , n = a0, n = a1, n = Uočiti: Zelena vremena za varijantu 1 (bez poziva za n = 0) su oko 2/3 vremena za varijantu 0. OAA 2017, 5. predavanje p. 21/68

22 TP7 Tablica trajanja poteza za n = 30 Usporedba trajanja jednog poteza (u s) za razna računala i razne varijante: Varijanta P Klamath BabyBlue ekran, n = disk, n = , n = , n = a0, n = a1, n = OAA 2017, 5. predavanje p. 22/68

23 FPC Tablica izmjerenih vremena T(n) Usporedba izmjerenih vremena T(n) (u s) za razna računala i razne varijante: Varijanta P Klamath BabyBlue ekran, n = disk, n = , n = , n = a0, n = a1, n = Grubo objašnjenje zelenih i crvenih rezultata za varijantu 1 (bez poziva za n = 0) ide malo kasnije! OAA 2017, 5. predavanje p. 23/68

24 FPC Tablica trajanja poteza za n = 30 Usporedba trajanja jednog poteza (u s) za razna računala i razne varijante: Varijanta P Klamath BabyBlue ekran, n = disk, n = , n = , n = a0, n = a1, n = OAA 2017, 5. predavanje p. 24/68

25 Objašnjenje rezultata za varijante 0 i 1 Free Pascal generira loš 32 bitni kôd. Izvršavanje tog kôda (i to kroz DOS-ekstender) je sve sporije na modernim 32 bitnim procesorima. Do Pentium 4 Northwood procesora ponašanje je zeleno, isplati se izbaciti pozive za n = 0. Od Pentium 4 Prescott procesora ponašanje je crveno, ne isplati se izbaciti pozive za n = 0. Napomena. Rezultate ne treba koristiti za usporedbu računala. Posebno to vrijedi za TP7, jer izvršavanje 16-bitnog kôda postaje sve sporije. OAA 2017, 5. predavanje p. 25/68

26 Hanojski tornjevi u C-u OAA 2017, 5. predavanje p. 26/68

27 Hanoi početak i štoperica #include <stdio.h> #include <time.h> /* Hanojski tornjevi s n diskova. Broji poteze i mjeri vrijeme. */ int nmax = 30; long int broj_poteza; double dsecnd (void) { return (double)( clock( ) ) / CLOCKS_PER_SEC; } OAA 2017, 5. predavanje p. 27/68

28 Hanoi funkcija prebaci jednog Funkcija Prebaci jednog samo zbraja poteze: void prebaci_jednog(int odakle, int kamo) { /* Umjesto pisanja poteza: printf(" %d -> %d\n", odakle, kamo); samo povecavamo globalni brojac poteza. */ ++broj_poteza; } return; OAA 2017, 5. predavanje p. 28/68

29 Hanoi opis varijanti potprograma Za razumno mjerenje vremena (i brzine) bez ispisa, testiramo 2 2 = 4 varijante funkcije Hanoi. Dubina rekurzije: varijanta 0 ima pozive za n = 0, koji ništa ne rade, varijanta 1 nema pozive za n = 0, s posebnim testom za n = 1. Broj argumenata: obična varijanta ima samo dvije igle kao argumente (odakle, kamo) i računa pomoćnu iglu, varijanta a ima sve tri igle kao argumente, bez računa. OAA 2017, 5. predavanje p. 29/68

30 Hanoi varijanta 0 void Hanoi(int n, int odakle, int kamo) { if (n > 0) { Hanoi(n - 1, odakle, 6 - odakle - kamo); prebaci_jednog(odakle, kamo); Hanoi(n - 1, 6 - odakle - kamo, kamo); } } return; OAA 2017, 5. predavanje p. 30/68

31 Hanoi varijanta 1 void Hanoi(int n, int odakle, int kamo) { if (n <= 1) prebaci_jednog(odakle, kamo); else { Hanoi(n - 1, odakle, 6 - odakle - kamo); prebaci_jednog(odakle, kamo); Hanoi(n - 1, 6 - odakle - kamo, kamo); } } return; OAA 2017, 5. predavanje p. 31/68

32 Hanoi varijanta a0 void Hanoi(int n, int odakle, int kamo, int pomocni) { if (n > 0) { Hanoi(n - 1, odakle, pomocni, kamo); prebaci_jednog(odakle, kamo); Hanoi(n - 1, pomocni, kamo, odakle); } } return; OAA 2017, 5. predavanje p. 32/68

33 Hanoi varijanta a1 void Hanoi(int n, int odakle, int kamo, int pomocni) { if (n <= 1) prebaci_jednog(odakle, kamo); else { Hanoi(n - 1, odakle, pomocni, kamo); prebaci_jednog(odakle, kamo); Hanoi(n - 1, pomocni, kamo, odakle); } } return; OAA 2017, 5. predavanje p. 33/68

34 Hanoi funkcija main int main(void) { int n; double t1, t2, time, c; /* Zaglavlje tablice. */ printf(" n Broj_Poteza(n) Vrijeme " "C = T(n) / (2^n - 1)\n"); printf(" n 2^n - 1 T(n)\n"); printf(" ======================================" "=====================\n"); OAA 2017, 5. predavanje p. 34/68

35 Hanoi funkcija main (nastavak) for (n = 1; n <= nmax; ++n) { /* Inicijalizacija brojaca za ovaj n. */ broj_poteza = 0; t1 = dsecnd( ); Hanojski_tornjevi(n, 1, 3); t2 = dsecnd( ); time = t2 - t1; if (broj_poteza > 0) c = time / broj_poteza; else c = 0.0; OAA 2017, 5. predavanje p. 35/68

36 Hanoi funkcija main (nastavak) } printf(" %2d %10ld %11.6f " "%15e\n", n, broj_poteza, time, c); } return 0; OAA 2017, 5. predavanje p. 36/68

37 Intel C (2007.g.) Izmjerena vremena T(n) Usporedba izmjerenih vremena T(n) (u s) za razna računala i razne varijante (Intel C 9.1, /O3): Varijanta Klamath5 Mali 3.0 Veliki P BabyBlue 0, n = , n = a0, n = a1, n = Na normalnom prevoditelju ipak dobivamo očekivano zeleno ponašanje rezultata za varijantu 1 (bez poziva za n = 0): ušteda u vremenu je skoro 50%! Tih 50% je i gornja granica za uštedu v. malo dalje. OAA 2017, 5. predavanje p. 37/68

38 Intel C (2007.g.) Trajanje poteza za n = 30 Usporedba trajanja jednog poteza (u s) za razna računala i razne varijante (Intel C 9.1, /O3): Varijanta Klamath5 Mali 3.0 Veliki P BabyBlue 0, n = , n = a0, n = a1, n = Razlika Mali, Veliki P na varijantama 0, 1 je misterij. Vjerojatni krivac: razlika u arhitekturi procesora (Northwood C, Prescott) i optimizacija te verzije compilera! OAA 2017, 5. predavanje p. 38/68

39 Intel C (2017.g.) Izmjerena vremena T(n) Usporedba izmjerenih vremena T(n) (u s) za jedno računalo Sasa PC = Intel Core i7 4770K (Haswell) na 3.5GHz, i razne varijante (Intel C 18.0, ia32 i x64, /fast): Varijanta Sasa PC ia32 Sasa PC x64 0, n = , n = a0, n = a1, n = Očekivano, varijanta 1 (bez poziva za n = 0) je bitno brža: ušteda u vremenu je 30 40%! OAA 2017, 5. predavanje p. 39/68

40 Intel C (2017.g.) Trajanje poteza za n = 30 Usporedba trajanja jednog poteza (u s) za jedno računalo (Sasa PC) i razne varijante (Intel C 18.0, ia32 i x64, /fast): Varijanta Sasa PC ia32 Sasa PC x64 0, n = , n = a0, n = a1, n = OAA 2017, 5. predavanje p. 40/68

41 Prošireni model složenosti OAA 2017, 5. predavanje p. 41/68

42 Hanojski tornjevi modeli složenosti Osnovni model složenosti mjeri samo broj poteza Pripadna rekurzija za t n je bila t n := broj poteza za n diskova. t n = { 0, za n = 0, 2t n 1 +1, za n > 0. Rješenje za broj poteza je t n = 2 n 1, za svaki n 0. U ovom modelu nema razlike izmedu varijanti 0 i 1. Model je prejednostavan brojimo samo poteze, bez poziva. OAA 2017, 5. predavanje p. 42/68

43 Mane osnovnog modela složenosti Taj model nije dobar za procjenu vremenske složenosti. Problem se vidi već u početnom uvjetu t 0 = 0. Po tom modelu, poziv s n = 0 uvijek traje nula vremena. No, znamo da to nije istina u varijanti 0, iako nema poteza. Treba nam model u kojem je t 0 > 0. Dovoljno je uzeti da je t 0 = const > 0. Zadatak. Probajte sami napraviti takav model, sa samo jednim parametrom konstantom const. Što je značenje tog parametra const? Testirajte ovaj model, tj. probajte eksperimentalno odrediti parametar const i pogledajte kolike su greške. OAA 2017, 5. predavanje p. 43/68

44 Prošireni model složenosti Još bolji model vremenske složenosti dobivamo tako da uvedemo dva parametra dvije konstante u model. Jedna od njih mjeri samo trajanje poteza, a druga mjeri trajanje preostatka svakog poziva rekurzivne funkcije Hanoi, tj. sve ostalo, bez poteza. Takav model precizno razlikuje poteze od poziva, i mora pokazati razliku izmedu varijanti 0 i 1. OAA 2017, 5. predavanje p. 44/68

45 Dvoparametarski model složenosti parametri Preciznije, neka je: c m = trajanje jednog poteza ( move ), tj. trajanje jednog poziva funkcije prebaci jednog. Što god smatrali potezom, sakriveno je u pozivu ove funkcije! c 0 = trajanje jednog poziva funkcije Hanoi, bez poteza i bez rekurzivnih poziva te funkcije. Dakle, c 0 uključuje poziv funkcije izvana, ulaz u funkciju (priprema argumenata na stack), testiranje vrijednosti od n u if naredbi, izlaz iz funkcije (iza if), što uključuje povratak i čišćenje argumenata sa stacka. OAA 2017, 5. predavanje p. 45/68

46 Vremenska složenost za obje varijante Varijanta 0 ima pozive funkcije Hanoi s argumentom n = 0. Rekurzija za pripadnu vremensku složenost t (0) n je c 0, za n = 0, t (0) n = c 0 +2t (0) n 1 +c m, za n > 0. Varijanta 1 nema pozive funkcije Hanoi s argumentom n = 0. Rekurzija za pripadnu vremensku složenost t (1) n je c 0 +c m, za n = 1, t (1) n = c 0 +2t (1) n 1 +c m, za n > 1. Uočimo da su rekurzije iste u obje varijante! OAA 2017, 5. predavanje p. 46/68

47 Poravnanje početka na n = 0 u varijanti 1 Za lakše rješavanje rekurzija, isplati se poravnati početak, tako da obje rekurzije počinju s n = 0. Stvarni početak varijante 1 je za n = 1, i glasi t (1) 1 = c 0 +c m. Kad umjetno vratimo drugu rekurziju za jedan član unatrag dobivamo da mora biti t (1) 1 = c 0 +c m = c 0 +2t (1) 0 +c m, t (1) 0 = 0. To savršeno odgovara pravom stanju stvari, jer poziva s n = 0 zaista nema, tj. trajanje im je nula! Točno to smo htjeli. OAA 2017, 5. predavanje p. 47/68

48 Zajednička rekurzija za vremensku složenost Rekurzija za vremensku složenost t n u obje varijante je ista t n = 2t n 1 +c 0 +c m, za n > 0, a početni uvjeti su različiti c 0, za varijantu 0, t 0 = 0, za varijantu 1. Rješenje. Nehomogeni član u rekurziji ima standardni oblik g(n) = b n p d (n), uz b = 1, p 0 (n) = c 0 +c m. OAA 2017, 5. predavanje p. 48/68

49 Rješenje rekurzije za vremensku složenost Karakteristična jednadžba homogenizirane rekurzije je (x 2)(x 1) = 0, s korijenima r 1 = 1 i r 2 = 2. Opće rješenje homogenizirane rekurzije je t n = c 1 1 n +c 2 2 n. Ovo rješenje uvrstimo u polaznu rekurziju, zato da dobijemo konstantu c 1 uz onaj dio rješenja koji odgovara nehomogenom članu. Izlazi c 1 +c 2 2 n = 2 ( c 1 +c 2 2 n 1) +c 0 +c m c 1 = 2c 1 +c 0 +c m c 1 = (c 0 +c m ). OAA 2017, 5. predavanje p. 49/68

50 Rješenja za vremensku složenost Dakle, opće rješenje polazne nehomogene rekurzije je t n = c 2 2 n (c 0 +c m ), n 0, a konstanta c 2 se računa iz početnog uvjeta t 0. Za varijantu 0, početni uvjet je t 0 = c 0, pa je t 0 = c (c 0 +c m ) = c 0 = c 2 = 2c 0 +c m. Za varijantu 1, početni uvjet je t 0 = 0, pa je t 0 = c (c 0 +c m ) = 0 = c 2 = c 0 +c m. OAA 2017, 5. predavanje p. 50/68

51 Rješenja za vremensku složenost (nastavak) Konačna rješenja za vremensku složenost obje varijante algoritma, uz polazne oznake, možemo napisati ovako: Varijanta 0 Varijanta 1 t (0) n = (2c 0 +c m ) 2 n (c 0 +c m ) = (c 0 +c m ) (2 n 1)+c 0 2 n, n 0. t (1) n = (c 0 +c m ) 2 n (c 0 +c m ) = (c 0 +c m ) (2 n 1), n 0. Drugo rješenje t (1) n je skalirani broj poteza. U pripadnoj rekurziji piše c 0 +c m, umjesto 1, a početni uvjeti su isti. OAA 2017, 5. predavanje p. 51/68

52 Vremenska složenost usporedba Uz pretpostavku da su konstante c 0 i c m jednake za obje varijante algoritma, što je skoro očito usporedbom tih algoritama, smijemo usporediti dobivena rješenja. Dobivamo da je Zaključak: t (0) n = (c 0 +c m ) (2 n 1)+c 0 2 n = t (1) n +c 0 2 n. trajanje varijante 0 je veće za c 0 2 n, što točno odgovara trajanju 2 n bespotrebnih rekurzivnih poziva s n = 0 diskova. Dakle, ovaj model, bar u teoriji, radi! OAA 2017, 5. predavanje p. 52/68

53 Korektnost modela za vremensku složenost Naravno, ovaj dvoparametarski model je korektan u praksi, ako i samo ako vrijede osnovne pretpostavke tog modela. Te pretpostavke treba provjeriti verificirati u praksi. Osnovna pretpostavka našeg modela je da su parametri c m i c 0 zaista konstante, tj. da ovi parametri ne ovise o broju diskova n. Sada, kad imamo izraze za vremensku složenost t n u obje varijante algoritma, to se lako može eksperimentalno provjeriti, tako da iskoristimo izmjerena vremena trajanja T(n). OAA 2017, 5. predavanje p. 53/68

54 Verifikacija modela za vremensku složenost No, i tu treba biti oprezan da ne tražimo previše. Za verifikaciju pretpostavki i modela striktno govoreći, trebalo bi eksperimentalno provjeriti dvije stvari. Prvo, jesu li c m i c 0 skoro konstante, gledano u funkciji od n, i to za svaku varijantu algoritma posebno. Zatim treba vidjeti dobivamo li u obje varijante približno iste vrijednosti za odgovarajuće konstante. To bi značilo da, na početku, svaka varijanta ima svoje parametre c m i c 0, a onda provjeravamo jesi li oni isti u raznim varijantama. Takav pristup ne valja dobivamo previše parametara. OAA 2017, 5. predavanje p. 54/68

55 Previše parametara za pouzdanu verifikaciju Za naše dvije varijante algoritma, imamo čak 4 parametra. To je previše, u smislu da ih je nemoguće pouzdano odrediti iz mjerenja. U čemu je problem? Kako bismo, za svaku pojedinu varijantu, provjerili jesu li pripadni c m i c 0 konstantni? Recimo, ovako: izmjerimo vremena T(n) za neke vrijednosti od n; postavimo odgovarajući model T(n) = t n, s dva nepoznata konstantna parametra, i parametre odredimo diskretnom metodom najmanjih kvadrata; ako su dobivene greške dovoljno male, možemo uzeti da su nadeni parametri zaista konstantni. OAA 2017, 5. predavanje p. 55/68

56 Tablica vremena za varijantu a0 Na primjer, za varijantu a0 (Intel C 9.1, BabyBlue računalo) dobivamo sljedeći izlaz: n 2 n 1 T(n) T(n)/(2 n 1) e e e e e e e e e e e e e 009 OAA 2017, 5. predavanje p. 56/68

57 Model složenosti za varijantu a0 Pripadni model vremenske složenosti za varijantu 0 je t (0) n = (2c 0 +c m ) 2 n (c 0 +c m ) = (c 0 +c m ) (2 n 1)+c 0 2 n, n 0. Iz ova dva zapisa odmah dobivamo dva različita modela za trajanje T 0 (n) razlika je samo u izboru funkcija baze. Model (a): T 0 (n) = a 1 2 n +a 2 1, s koeficijentima a 1 = 2c 0 +c m i a 2 = c 0 +c m. Model (b): T 0 (n) = b 1 (2 n 1)+b 2 2 n, s koeficijentima b 1 = c 0 +c m i b 2 = c 0. OAA 2017, 5. predavanje p. 57/68

58 Nestabilnost računanja dva parametra Oba modela su linearna i imaju dva nepoznata koeficijenta. Kad ih izračunamo, lako nademo parametre c 0 i c m za varijantu a0 (linearni sustav reda 2). Koeficijente u modelu računamo diskretnom metodom najmanjih kvadrata, iz tablice izmjerenih vremena. I tu je problem. Tablica je vrlo netočna za male vrijednosti n. Izmjerena vremena T(n) imaju neku točnost tek za n 23. U modelu (a), član a 2 1 ima utjecaja samo za male n, tj. koeficijent a 2 se ne može dobro odrediti iz mjerenja. U modelu (b), funkcije baze 2 n 1 i 2 n se iole razlikuju samo za male n. Inače su skoro linearno zavisne, pa b 1 i b 2 ne možemo nezavisno dobro odrediti. Dakle, dva koeficijenta su previše. Jedan bi prošao (v. iza). OAA 2017, 5. predavanje p. 58/68

59 Model složenosti za varijantu a1 Isti problem imamo i u varijanti 1. Tu se još bolje vidi! Model vremenske složenosti za varijantu 1 je t (1) n = (c 0 +c m ) 2 n (c 0 +c m ) = (c 0 +c m ) (2 n 1), n 0. Složenost ovisi samo o zbroju parametara c 0 i c m, tj. stvarno, imamo samo jedan parametar. Jedini razumni model za trajanje T 1 (n) je T 1 (n) = C 1 (2 n 1), s jednim koeficijentom C 1 = c 0 +c m. OAA 2017, 5. predavanje p. 59/68

60 Stvarna ideja dvoparametarskog modela Naš dvoparametarski model vremenske složenosti, s parametrima c m i c 0, smišljen je zato da pokaže razliku izmedu dviju varijanti 0 i 1, a ne zato da dobijemo precizniji model složenosti za svaku pojedinu varijantu. Dakle, na samom početku, u izvodu modela, koji je napravljen na osnovu obje varijante algoritma, pretpostavljamo da za obje varijante vrijede iste vrijednosti parametara c m i c 0. (Očito je da c m mora biti isti zovemo istu funkciju.) Zato, u verifikaciji, treba iskoristiti izmjerena vremena za obje varijante, da bismo odredili/provjerili te parametre c m i c 0. OAA 2017, 5. predavanje p. 60/68

61 Verifikacija modela za vremensku složenost Za dvije varijante algoritma sad imamo samo 2 parametra. Bitno: Njih je lako pouzdano odrediti i verificirati! Najlakši način za to je: za obje varijante algoritma uzmemo jednoparametarski model trajanja s jednim nepoznatim koeficijentom, koji dobro opisuje trajanje za velike n tamo gdje su izmjerene vrijednosti dovoljno točne. Taj model ne mora biti egzaktan, možemo koristiti i asimptotsko ponašanje vremenske složenosti za velike vrijednosti n. Kad odredimo ta dva koeficijenta, provjerimo njihovu konstantost (grešku modela) i nademo parametre c m i c 0. OAA 2017, 5. predavanje p. 61/68

62 Jednoparametarski modeli trajanja Za trajanje T 1 (n) varijante 1 već imamo takav model T 1 (n) = C 1 (2 n 1), s jednim koeficijentom C 1 = c 0 +c m. Ovaj model je egzaktan. Jednoparametarski model za trajanje T 0 (n) varijante 0, izlazi aproksimacijom iz modela vremenske složenosti t (0) n = (2c 0 +c m ) 2 n (c 0 +c m ) = (2c 0 +c m ) (2 n 1)+c 0, n 0. Za iole veći n, zadnji član c 0 postaje zanemariv, pa je T 0 (n) C 0 (2 n 1), s jednim koeficijentom C 0 = 2c 0 +c m. OAA 2017, 5. predavanje p. 62/68

63 Odredivanje parametara i verifikacija modela Koeficijente C 0 i C 1 možemo odrediti na dva načina. Dijeljenjem izmjerenog vremena i broja poteza, C i (n) = T i(n) 2 n 1, za svaki n u tablici za pojedinu varijantu i = 0,1. Tako dobivamo profil koeficijenta C i (n) u ovisnosti o n, odakle se lako vizuelno provjerava konstantnost. Usput, točno to je zadnji stupac izlaza u programima. Diskretnom metodom najmanjih kvadrata s jednim parametrom traženim koeficijentom, uz provjeru grešaka takve aproksimacije izmjerenih podataka. Probajte sami! OAA 2017, 5. predavanje p. 63/68

64 Primjer odredivanja parametara i verifikacije Primjer. Pogledajmo rezultate programa za varijante a0 i a1 (Intel C 9.1, BabyBlue), za n 25 (vrlo slično je za 0 i 1): n 2 n 1 T 0 (n) T 0 (n)/(2 n 1) T 1 (n) T 1 (n)/(2 n 1) e e e e e e e e e e e e 009 Vidimo da su koeficijenti C 0 (n) i C 1 (n) skoro konstantni i stabiliziraju se, kako n raste, približno na sljedeće vrijednosti C 0 = 2c 0 +c m , C 1 = c 0 +c m OAA 2017, 5. predavanje p. 64/68

65 Primjer odredivanja parametara i verifikacije Odavde dobivamo približne vrijednosti za parametre modela c s, c m s. Jedinice su sekunde parametri su trajanje poziva i poteza. Komentar. Naši potezi su jako brzi jedno povećanje globalnog brojača u funkciji prebaci jednog. Brzina približno odgovara frekvenciji računala (3.6 GHz). Jedan poziv traje 11 puta dulje. Zato je ušteda u varijanti 1 skoro 50% (c 0 prema 2c 0 +c m, uz mali c m ). Uz veću točnost štoperice (ili na sporijem računalu), dobili bismo veću točnost parametara. OAA 2017, 5. predavanje p. 65/68

66 Novi parametri (2017.g.) velike razlike!? Napomena. U novim testovim, na jednom računalu Sasa PC, Intel C 18.0, ia32 i x64, /fast, za odgovarajuće varijante algoritma (0 i 1, odnosno, a0 i a1) dobivamo sljedeće rezultate (sva vremena su u 10 9 s): Test \ Parametar C 0 C 1 c 0 c m ia32 (0 i 1) ia32 (a0 i a1) x64 (0 i 1) x64 (a0 i a1) Dobivamo ogromne razlike u trajanjima jednog poziva (c 0 ), odnosno, jednog poteza (c m ). OAA 2017, 5. predavanje p. 66/68

67 Asimptotski jednoparametarski modeli trajanja Napomena. Mogli smo koristiti i jednoparametarske modele na bazi asimptotskog ponašanja vremenske složenosti T 0 (n) C 0 2 n, T 1 (n) C 1 2 n, s istim značenjima koeficijenata C 0 i C 1. Dobivamo minijaturno veću grešku nego prije, zbog zamjene funkcije baze 2 n 1 2 n. OAA 2017, 5. predavanje p. 67/68

68 Završni komentar o modelu složenosti Završni komentar o modelu složenosti i parametrima. Za parametar c m zaista očekujemo da je isti u obje varijante, jer zovemo istu funkciju. Trajanje poziva parametar c 0, bi mogao, eventualno, biti različit, jer algoritmi ipak nisu sasvim isti. Tako bismo za dvije varijante dobili model s tri parametra, ali njih, opet, nije lako pouzdano odrediti! OAA 2017, 5. predavanje p. 68/68

Oblikovanje i analiza algoritama 4. predavanje Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb OAA 2017, 4. pr

Oblikovanje i analiza algoritama 4. predavanje Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb OAA 2017, 4. pr Oblikovanje i analiza algoritama 4. predavanje Saša Singer singer@math.hr web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb OAA 2017, 4. predavanje p. 1/69 Sadržaj predavanja Složenost u praksi

Више

Programiranje 2 0. predavanje Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog2 2019, 0. predavanje p. 1/4

Programiranje 2 0. predavanje Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog2 2019, 0. predavanje p. 1/4 Programiranje 2 0. predavanje Saša Singer singer@math.hr web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog2 2019, 0. predavanje p. 1/48 Sadržaj predavanja Ponavljanje onog dijela C-a koji

Више

2015_k2_z12.dvi

2015_k2_z12.dvi OBLIKOVANJE I ANALIZA ALGORITAMA 2. kolokvij 27. 1. 2016. Skice rješenja prva dva zadatka 1. (20) Zadano je n poslova. Svaki posao je zadan kao vremenski interval realnih brojeva, P i = [p i,k i ],zai

Више

Uvod u računarstvo 2+2

Uvod u računarstvo 2+2 Programiranje 2 doc.dr.sc. Goranka Nogo PMF Matematički odsjek, Zagreb Kontakt ured: 228, drugi kat e-mail: nogo@math.hr konzultacije: četvrtak, 12:00-14:00 petak, 11:00-12:00 neki drugi termin, uz prethodni

Више

Funkcije predavač: Nadežda Jakšić

Funkcije predavač: Nadežda Jakšić Funkcije predavač: Nadežda Jakšić funkcije delovi programa koji izvršavaju neki zadatak, celinu; dele na ugrađene, korisničke i main funkciju ugrađene funkcije printf,scanf... da bi se one izvršile potrebno

Више

Microsoft PowerPoint - 03-Slozenost [Compatibility Mode]

Microsoft PowerPoint - 03-Slozenost [Compatibility Mode] Сложеност алгоритама (Програмирање 2, глава 3, глава 4-4.3) Проблем: класа задатака истог типа Велики број различитих (коректних) алгоритама Величина (димензија) проблема нпр. количина података које треба

Више

Programiranje 1 9. predavanje Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog1 2018, 9. predavanje p. 1/6

Programiranje 1 9. predavanje Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog1 2018, 9. predavanje p. 1/6 Programiranje 1 9. predavanje Saša Singer singer@math.hr web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog1 2018, 9. predavanje p. 1/60 Sadržaj predavanja Osnovni algoritmi na cijelim brojevima:

Више

Programiranje 1 IEEE prikaz brojeva sažetak Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog1 2018, IEEE p

Programiranje 1 IEEE prikaz brojeva sažetak Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog1 2018, IEEE p Programiranje IEEE prikaz brojeva sažetak Saša Singer singer@math.hr web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog 208, IEEE prikaz brojeva sažetak p. /4 Sadržaj predavanja IEEE standard

Више

Numerička matematika 11. predavanje dodatak Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb NumMat 2019, 11. p

Numerička matematika 11. predavanje dodatak Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb NumMat 2019, 11. p Numerička matematika 11. predavanje dodatak Saša Singer singer@math.hr web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb NumMat 2019, 11. predavanje dodatak p. 1/46 Sadržaj predavanja dodatka

Више

PASCAL UVOD 2 II razred gimnazije

PASCAL UVOD 2 II razred gimnazije PASCAL UVOD 2 II razred gimnazije Upis-ispis 1. Upis Read(a,b); --u jednom redu Readln(a,b); -- nakon upisa prelazi se u novi red 2. Ispis Write(a,b); -- u jednom redu Writeln(a,b); --nakon ispisa prelazi

Више

Primjena neodredenog integrala u inženjerstvu Matematika 2 Erna Begović Kovač, Literatura: I. Gusić, Lekcije iz Matematike 2

Primjena neodredenog integrala u inženjerstvu Matematika 2 Erna Begović Kovač, Literatura: I. Gusić, Lekcije iz Matematike 2 Primjena neodredenog integrala u inženjerstvu Matematika 2 Erna Begović Kovač, 2019. Literatura: I. Gusić, Lekcije iz Matematike 2 http://matematika.fkit.hr Uvod Ako su dvije veličine x i y povezane relacijom

Више

Funkcije predavač: Nadežda Jakšić

Funkcije predavač: Nadežda Jakšić Funkcije predavač: Nadežda Jakšić do sada su korišćene "gotove" funkcije iz standardnih biblioteka (cin, cout...) one su pozivane iz main funkcije koja je glavna funkcija u programu jer izvršavanje programa

Више

Programiranje 1 3. predavanje Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog1 2017, 3. predavanje p. 1/1

Programiranje 1 3. predavanje Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog1 2017, 3. predavanje p. 1/1 Programiranje 1 3. predavanje Saša Singer singer@math.hr web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog1 2017, 3. predavanje p. 1/132 Sadržaj predavanja Osnovni tipovi podataka u računalu

Више

Programiranje predavanje Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog1 2016, 10. predavanje p. 1

Programiranje predavanje Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog1 2016, 10. predavanje p. 1 Programiranje 1 10. predavanje Saša Singer singer@math.hr web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog1 2016, 10. predavanje p. 1/95 Sadržaj predavanja Funkcije: Definicija funkcije.

Више

Microsoft Word - predavanje8

Microsoft Word - predavanje8 DERIVACIJA KOMPOZICIJE FUNKCIJA Ponekad je potrebno derivirati funkcije koje nisu jednostavne (složene su). Na primjer, funkcija sin2 je kompozicija funkcija sin (vanjska funkcija) i 2 (unutarnja funkcija).

Више

Programiranje 2 1. predavanje Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog2 2019, 1. predavanje p. 1/7

Programiranje 2 1. predavanje Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog2 2019, 1. predavanje p. 1/7 Programiranje 2 1. predavanje Saša Singer singer@math.hr web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog2 2019, 1. predavanje p. 1/75 Dobar dan, dobro došli Prog2 2019, 1. predavanje

Више

Programiranje 1 drugi kolokvij, 2. veljače Ime i prezime: JMBAG: Upute: Na kolokviju je dozvoljeno koristiti samo pribor za pisanje i brisanje,

Programiranje 1 drugi kolokvij, 2. veljače Ime i prezime: JMBAG: Upute: Na kolokviju je dozvoljeno koristiti samo pribor za pisanje i brisanje, Upute: Na kolokviju je dozvoljeno koristiti samo pribor za pisanje i brisanje, te službeni podsjetnik. Kalkulatori, mobiteli, razne neslužbene tablice, papiri i sl., nisu dozvoljeni! Sva rješenja napišite

Више

Uvod u računarstvo 2+2

Uvod u računarstvo 2+2 Datoteke nastavak Funkcija fgets Funkcija koja učitava podatke iz datoteke, liniju po liniju, je char *fgets(char *str, int n, FILE *fp); gdje su str pokazivač na dio memorije (string) u koji će ulazna

Више

Programiranje 1 5. predavanje dodatak Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog1 2018, 5. predavanj

Programiranje 1 5. predavanje dodatak Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog1 2018, 5. predavanj Programiranje 1 5. predavanje dodatak Saša Singer singer@math.hr web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog1 2018, 5. predavanje dodatak p. 1/60 Sadržaj predavanja dodatka Primjeri

Више

Microsoft Word - 6ms001

Microsoft Word - 6ms001 Zadatak 001 (Anela, ekonomska škola) Riješi sustav jednadžbi: 5 z = 0 + + z = 14 4 + + z = 16 Rješenje 001 Sustav rješavamo Gaussovom metodom eliminacije (isključivanja). Gaussova metoda provodi se pomoću

Више

PowerPoint Presentation

PowerPoint Presentation Tehnička škola 9. maj Bačka Palanka Programiranje III razred Tok izvršavanja programa Tok izvršavanja programa Dosadašnji kod se izvršavao praktično linearno. Nije postojala nikakva uslovna ili brojačka

Више

Programiranje 1 3. predavanje prošireno Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog1 2018, 3. predava

Programiranje 1 3. predavanje prošireno Saša Singer web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog1 2018, 3. predava Programiranje 1 3. predavanje prošireno Saša Singer singer@math.hr web.math.pmf.unizg.hr/~singer PMF Matematički odsjek, Zagreb Prog1 2018, 3. predavanje prošireno p. 1/120 Sadržaj proširenog predavanja

Више

PROGRAMIRANJE Program je niz naredbi razumljivih računalu koje rješavaju neki problem. Algoritam je postupak raščlanjivanja problema na jednostavnije

PROGRAMIRANJE Program je niz naredbi razumljivih računalu koje rješavaju neki problem. Algoritam je postupak raščlanjivanja problema na jednostavnije PROGRAMIRANJE Program je niz naredbi razumljivih računalu koje rješavaju neki problem. Algoritam je postupak raščlanjivanja problema na jednostavnije korake. Uz dobro razrađen algoritam neku radnju ćemo

Више

Algoritmi SŠ P1

Algoritmi SŠ P1 Županijsko natjecanje iz informatike Srednja škola 9. veljače 2018. RJEŠENJA ZADATAKA Napomena: kodovi za većinu opisanih algoritama dani su u Pythonu radi jednostavnosti i lakše čitljivosti. Zbog prirode

Више

PRIRODNO MATEMATIČKI FAKULTET U NIŠU DEPARTMAN ZA RAČUNARSKE NAUKE Utorak, godine PRIJEMNI ISPIT IZ INFORMATIKE 1. Koja od navedenih ekste

PRIRODNO MATEMATIČKI FAKULTET U NIŠU DEPARTMAN ZA RAČUNARSKE NAUKE Utorak, godine PRIJEMNI ISPIT IZ INFORMATIKE 1. Koja od navedenih ekste PRIRODNO MATEMATIČKI FAKULTET U NIŠU DEPARTMAN ZA RAČUNARSKE NAUKE Utorak, 5.06.019. godine PRIJEMNI ISPIT IZ INFORMATIKE 1. Koja od navedenih ekstenzija se najčešće koristi za tekstualne datoteke? a)

Више

(Microsoft Word - Rje\232enja zadataka)

(Microsoft Word - Rje\232enja zadataka) 1. D. Svedimo sve razlomke na jedinstveni zajednički nazivnik. Lako provjeravamo da vrijede rastavi: 85 = 17 5, 187 = 17 11, 170 = 17 10, pa je zajednički nazivnik svih razlomaka jednak Tako sada imamo:

Више

Programiranje 2 popravni kolokvij, 15. lipnja Ime i prezime: JMBAG: Upute: Na kolokviju je dozvoljeno koristiti samo pribor za pisanje i brisanj

Programiranje 2 popravni kolokvij, 15. lipnja Ime i prezime: JMBAG: Upute: Na kolokviju je dozvoljeno koristiti samo pribor za pisanje i brisanj Upute: Na kolokviju je dozvoljeno koristiti samo pribor za pisanje i brisanje, te službeni šalabahter. Kalkulatori, mobiteli, razne neslužbene tablice, papiri i sl., nisu dozvoljeni! Sva rješenja napišite

Више

Računarski praktikum I - Vježbe 01 - Uvod

Računarski praktikum I - Vježbe 01 - Uvod Prirodoslovno-matematički fakultet Matematički odsjek Sveučilište u Zagrebu RAČUNARSKI PRAKTIKUM I Vježbe 01 - Uvod v2018/2019. Sastavio: Zvonimir Bujanović Gradivo i način polaganja Gradivo: osnove jezika

Више

(Microsoft Word - MATB - kolovoz osnovna razina - rje\232enja zadataka)

(Microsoft Word - MATB - kolovoz osnovna razina - rje\232enja zadataka) . B. Zapišimo zadane brojeve u obliku beskonačno periodičnih decimalnih brojeva: 3 4 = 0.7, = 0.36. Prvi od navedenih četiriju brojeva je manji od 3 4, dok su treći i četvrti veći od. Jedini broj koji

Више

23. siječnja od 13:00 do 14:00 Školsko natjecanje / Osnove informatike Srednje škole RJEŠENJA ZADATAKA S OBJAŠNJENJIMA Sponzori Medijski pokrovi

23. siječnja od 13:00 do 14:00 Školsko natjecanje / Osnove informatike Srednje škole RJEŠENJA ZADATAKA S OBJAŠNJENJIMA Sponzori Medijski pokrovi 3. siječnja 0. od 3:00 do 4:00 RJEŠENJA ZADATAKA S OBJAŠNJENJIMA Sponzori Medijski pokrovitelji Sadržaj Zadaci. 4.... Zadaci 5. 0.... 3 od 8 Zadaci. 4. U sljedećim pitanjima na pitanja odgovaraš upisivanjem

Више

Računarski praktikum I - Vježbe 09 - this, static

Računarski praktikum I - Vježbe 09 - this, static Prirodoslovno-matematički fakultet Matematički odsjek Sveučilište u Zagrebu RAČUNARSKI PRAKTIKUM I Vježbe 09 - this, static v2018/2019. Sastavio: Zvonimir Bujanović Pokazivač this Kako funkcija članica

Више

(Microsoft Word - Dr\236avna matura - svibanj osnovna razina - rje\232enja)

(Microsoft Word - Dr\236avna matura - svibanj osnovna razina - rje\232enja) I. ZADATCI VIŠESTRUKOGA IZBORA 1. A. Svih pet zadanih razlomaka svedemo na najmanji zajednički nazivnik. Taj nazivnik je najmanji zajednički višekratnik brojeva i 3, tj. NZV(, 3) = 6. Dobijemo: 15 1, 6

Више

Uvod u računarstvo 2+2

Uvod u računarstvo 2+2 Pokazivači Pointeri Definicija pokazivača Pokazivač na tip je varijabla koja sadrži adresu varijable tipa tip. Definicija pokazivača: mem_klasa tip * p_var; Primjer: static int * pi; double *px; char*

Више

Microsoft PowerPoint - Programski_Jezik_C_Organizacija_Izvornog_Programa_I_Greske [Compatibility Mode]

Microsoft PowerPoint - Programski_Jezik_C_Organizacija_Izvornog_Programa_I_Greske [Compatibility Mode] Programski jezik C organizacija izvornog programa Prevođenje Pisanje programa izvorni program Prevođenje programa izvršni program Izvršavanje programa rezultat Faze prevođenja Pretprocesiranje Kompilacija

Више

Uvod u obične diferencijalne jednadžbe Metoda separacije varijabli Obične diferencijalne jednadžbe Franka Miriam Brückler

Uvod u obične diferencijalne jednadžbe Metoda separacije varijabli Obične diferencijalne jednadžbe Franka Miriam Brückler Obične diferencijalne jednadžbe Franka Miriam Brückler Primjer Deriviranje po x je linearan operator d dx kojemu recimo kao domenu i kodomenu uzmemo (beskonačnodimenzionalni) vektorski prostor funkcija

Више

Algebarski izrazi (4. dio)

Algebarski izrazi (4. dio) Dodatna nastava iz matematike 8. razred Algebarski izrazi (4. dio) Aleksandra-Maria Vuković OŠ Gornji Mihaljevec amvukovic@gmail.com 12/21/2010 SADRŽAJ 7. KVADRATNI TRINOM... 3 [ Primjer 18. Faktorizacija

Више

Microsoft Word - AIDA2kolokvijumRsmerResenja.doc

Microsoft Word - AIDA2kolokvijumRsmerResenja.doc Konstrukcija i analiza algoritama 2 (prvi kolokvijum, smer R) 1. a) Konstruisati AVL stablo od brojeva 100, 132, 134, 170, 180, 112, 188, 184, 181, 165 (2 poena) b) Konkatenacija je operacija nad dva skupa

Више

Uvod u računarstvo 2+2

Uvod u računarstvo 2+2 Ulaz i izlaz podataka Ulaz i izlaz podataka Nakon odslušanog bit ćete u stanju: navesti sintaksu naredbi za unos/ispis znakova znakovnih nizova cijelih brojeva realnih brojeva jednostruke i dvostruke preciznosti

Више

Konstrukcija i analiza algoritama vežbe 10 Nina Radojičić 15. decembar Algoritamske strategije - podeli pa vladaj (divide and conquer) Ova stra

Konstrukcija i analiza algoritama vežbe 10 Nina Radojičić 15. decembar Algoritamske strategije - podeli pa vladaj (divide and conquer) Ova stra Konstrukcija i analiza algoritama vežbe 10 Nina Radojičić 15. decembar 2016 1 Algoritamske strategije - podeli pa vladaj (divide and conquer) Ova strategija rekurzivno razbija problem na 2 ili više potproblema

Више

Razvoj programa, Code::Blocks, struktura programa, printf, scanf, konverzioni karakteri predavač: Nadežda Jakšić

Razvoj programa, Code::Blocks, struktura programa, printf, scanf, konverzioni karakteri predavač: Nadežda Jakšić Razvoj programa, Code::Blocks, struktura programa, printf, scanf, konverzioni karakteri predavač: Nadežda Jakšić projektni zadatak projektovanje programa (algoritmi) pisanje programskog koda, izvorni kod,

Више

Logicko projektovanje racunarskih sistema I

Logicko projektovanje racunarskih sistema I PRIMERI SA PREDAVANJA 17 Beta asembler Zadatak 1. Posmatrajmo sledeću funkciju napisanu u programskom jeziku C, za računanje najvećeg zajedničkog delioca dva pozitivna cela broja: int gcd(int a, int b)

Више

(Microsoft Word - Dr\236avna matura - studeni osnovna razina - rje\232enja)

(Microsoft Word - Dr\236avna matura - studeni osnovna razina - rje\232enja) 1. C. Imamo redom: I. ZADATCI VIŠESTRUKOGA IZBORA 9 + 7 6 9 + 4 51 = = = 5.1 18 4 18 8 10. B. Pomoću kalkulatora nalazimo 10 1.5 = 63.45553. Četvrta decimala je očito jednaka 5, pa se zaokruživanje vrši

Више

Microsoft Word - 15ms261

Microsoft Word - 15ms261 Zadatak 6 (Mirko, elektrotehnička škola) Rješenje 6 Odredite sup S, inf S, ma S i min S u skupu R ako je S = { R } a b = a a b + b a b, c < 0 a c b c. ( ), : 5. Skratiti razlomak znači brojnik i nazivnik

Више

Računarski praktikum I - Vježbe 03 - Implementacija strukture string

Računarski praktikum I - Vježbe 03 - Implementacija strukture string Prirodoslovno-matematički fakultet Matematički odsjek Sveučilište u Zagrebu RAČUNARSKI PRAKTIKUM I Vježbe 03 - Implementacija strukture string v2018/2019. Sastavio: Zvonimir Bujanović Stringovi u C-u String

Више

7. predavanje Vladimir Dananić 14. studenoga Vladimir Dananić () 7. predavanje 14. studenoga / 16

7. predavanje Vladimir Dananić 14. studenoga Vladimir Dananić () 7. predavanje 14. studenoga / 16 7. predavanje Vladimir Dananić 14. studenoga 2011. Vladimir Dananić () 7. predavanje 14. studenoga 2011. 1 / 16 Sadržaj 1 Operator kutne količine gibanja 2 3 Zadatci Vladimir Dananić () 7. predavanje 14.

Више

Računarski praktikum I - Vježbe 07 - Podstrukture, const, reference

Računarski praktikum I - Vježbe 07 - Podstrukture, const, reference Prirodoslovno-matematički fakultet Matematički odsjek Sveučilište u Zagrebu RAČUNARSKI PRAKTIKUM I Vježbe 07 - Podstrukture, const, reference v2018/2019. Sastavio: Zvonimir Bujanović Podstrukture Član

Више

Nastavna cjelina: 1. Jezik računala Kataloška tema: 1.1. Bit 1.2. Brojevi zapisani četvorkom bitova Nastavna jedinica: 1.1. Bit   1.2. Brojevi zapisan

Nastavna cjelina: 1. Jezik računala Kataloška tema: 1.1. Bit 1.2. Brojevi zapisani četvorkom bitova Nastavna jedinica: 1.1. Bit   1.2. Brojevi zapisan Nastavna cjelina: 1. Osnove IKT-a Kataloška tema: 1.6. Paralelni i slijedni ulazno-izlazni pristupi računala 1.7. Svojstva računala Unutar računala podatci su prikazani električnim digitalnim signalima

Више

Slide 1

Slide 1 OSNOVNI POJMOVI Naredba je uputa računalu za obavljanje određene radnje. Program je niz naredbi razumljivih računalu koje rješavaju neki problem. Pisanje programa zovemo programiranje. Programski jezik

Више

Matematika 1 - izborna

Matematika 1 - izborna 3.3. NELINEARNE DIOFANTSKE JEDNADŽBE Navest ćemo sada neke metode rješavanja diofantskih jednadžbi koje su drugog i viših stupnjeva. Sve su te metode zapravo posebni oblici jedne opće metode, koja se naziva

Више

Programski jezik C

Programski jezik C Pojam funkcije Deklaracija i definicija funcije Poziv funkcije Memorijske klase promjenljivih Primjeri. Za kompajliranje koda koristen DEV-C++ 4.9.9.2 Compiler!!!! Moze is koristiti I bilo koji drugi standardni

Више

Microsoft Word - IZVODI ZADACI _2.deo_

Microsoft Word - IZVODI ZADACI _2.deo_ IZVODI ZADACI ( II deo U ovom del ćemo pokšati da vam objasnimo traženje izvoda složenih fnkcija. Prvo da razjasnimo koja je fnkcija složena? Pa, najprostije rečeno, to je svaka fnkcija koje nema tablici

Више

Numeričke metode u fizici 1, Projektni zadataci 2018./ Za sustav običnih diferencijalnih jednadžbi, koje opisuju kretanje populacije dviju vrs

Numeričke metode u fizici 1, Projektni zadataci 2018./ Za sustav običnih diferencijalnih jednadžbi, koje opisuju kretanje populacije dviju vrs Numeričke metode u fizici, Projektni zadataci 8./9.. Za sustav običnih diferencijalnih jednadžbi, koje opisuju kretanje populacije dviju vrsta životinja koje se nadmeću za istu hranu, dx ( dt = x x ) xy

Више

Maksimalni protok kroz mrežu - Ford-Fulkerson, Edmonds-Karp

Maksimalni protok kroz mrežu - Ford-Fulkerson, Edmonds-Karp Maksimalni protok kroz mrežu - Ford-Fulkerson, Edmonds-Karp PMF-MO Seminar iz kolegija Oblikovanje i analiza algoritama 22.1.2019. mrežu - Ford-Fulkerson, Edmonds-Karp 22.1.2019. 1 / 35 Uvod - definicije

Више

Microsoft Word - 12ms121

Microsoft Word - 12ms121 Zadatak (Goran, gimnazija) Odredi skup rješenja jednadžbe = Rješenje α = α c osα, a < b < c a + < b + < c +. na segmentu [ ], 6. / = = = supstitucija t = + k, k Z = t = = t t = + k, k Z t = + k. t = +

Више

Microsoft PowerPoint - Datoteke [Compatibility Mode]

Microsoft PowerPoint - Datoteke [Compatibility Mode] Датотеке стандардни улаз / излаз Датотека је именовани низ знакова (бајтова) У програмском језику C датотека је везана за улаз и излаз података функције стандардне библиотеке Најједностaвније

Више

1 jmbag ime i prezime Programiranje 2 prvi kolokvij, Rezultati i uvidi u kolokvije: Rezultati u petak, 3.5., navečer na webu, a uvidi u p

1 jmbag ime i prezime Programiranje 2 prvi kolokvij, Rezultati i uvidi u kolokvije: Rezultati u petak, 3.5., navečer na webu, a uvidi u p 1 Rezultati i uvidi u kolokvije: Rezultati u petak 3.5. navečer na webu a uvidi u ponedjeljak 6.5. u 16 sati. Upute: Na kolokviju je dozvoljeno koristiti samo pribor za pisanje i brisanje te službeni podsjetnik.

Више

Sadržaj 1 Diskretan slučajan vektor Definicija slučajnog vektora Diskretan slučajan vektor

Sadržaj 1 Diskretan slučajan vektor Definicija slučajnog vektora Diskretan slučajan vektor Sadržaj Diskretan slučajan vektor Definicija slučajnog vektora 2 Diskretan slučajan vektor Funkcija distribucije slučajnog vektora 2 4 Nezavisnost slučajnih vektora 2 5 Očekivanje slučajnog vektora 6 Kovarijanca

Више

6-8. ČAS Celobrojno programiranje Rešavamo sledeći poblem celobrojnog programiranja: Gde pretpostavljamo da je A celobrojna matrica dimenzije,. Takođe

6-8. ČAS Celobrojno programiranje Rešavamo sledeći poblem celobrojnog programiranja: Gde pretpostavljamo da je A celobrojna matrica dimenzije,. Takođe 6-8. ČAS Celobrojno programiranje Rešavamo sledeći poblem celobrojnog programiranja: Gde pretpostavljamo da je A celobrojna matrica dimenzije,. Takođe, očekuje se da su koordinate celobrojne. U slučaju

Више

(Microsoft Word - Dr\236avna matura - kolovoz ni\236a razina - rje\232enja)

(Microsoft Word - Dr\236avna matura - kolovoz ni\236a razina - rje\232enja) 1. C. Imamo redom: I. ZADATCI VIŠESTRUKOGA IZBORA. B. Imamo redom: 0.3 0. 8 7 8 19 ( 3) 4 : = 9 4 = 9 4 = 9 = =. 0. 0.3 3 3 3 3 0 1 3 + 1 + 4 8 5 5 = = = = = = 0 1 3 0 1 3 0 1+ 3 ( : ) ( : ) 5 5 4 0 3.

Више

070-ALIP2-udzbenik.indb

070-ALIP2-udzbenik.indb 0. U uvodnom ćemo poglavlju ponoviti osnove programskog jezika C s kojima smo se susreli u. razredu. U kratkom pregledu navedeni su operatori (aritmetički, relacijski i logički), neke od funkcija iz biblioteka

Више

Sveučilište J.J. Strossmayera Fizika 2 FERIT Predložak za laboratorijske vježbe Lom i refleksija svjetlosti Cilj vježbe Primjena zakona geometrijske o

Sveučilište J.J. Strossmayera Fizika 2 FERIT Predložak za laboratorijske vježbe Lom i refleksija svjetlosti Cilj vježbe Primjena zakona geometrijske o Lom i refleksija svjetlosti Cilj vježbe Primjena zakona geometrijske optike (lom i refleksija svjetlosti). Određivanje žarišne daljine tanke leće Besselovom metodom. Teorijski dio Zrcala i leće su objekti

Више

Sveučilište J.J. Strossmayera Fizika 2 FERIT Predložak za laboratorijske vježbe Određivanje relativne permitivnosti sredstva Cilj vježbe Određivanje r

Sveučilište J.J. Strossmayera Fizika 2 FERIT Predložak za laboratorijske vježbe Određivanje relativne permitivnosti sredstva Cilj vježbe Određivanje r Sveučilište J.J. Strossmayera Fizika 2 Predložak za laboratorijske vježbe Cilj vježbe Određivanje relativne permitivnosti stakla, plastike, papira i zraka mjerenjem kapaciteta pločastog kondenzatora U-I

Више

Interpretacija čuda pomoću teorije determinističkog kaosa (Jerko Kolovrat, KBF Split; Marija Todorić, PMF Zagreb) Postoje razne teme koje zaokupljaju

Interpretacija čuda pomoću teorije determinističkog kaosa (Jerko Kolovrat, KBF Split; Marija Todorić, PMF Zagreb) Postoje razne teme koje zaokupljaju Interpretacija čuda pomoću teorije determinističkog kaosa (Jerko Kolovrat, KBF Split; Marija Todorić, PMF Zagreb) Postoje razne teme koje zaokupljaju ljudski um i tjeraju ga da prema njima zauzme stav

Више

OD MONOKRISTALNIH ELEKTRODA DO MODELÂ POVRŠINSKIH REAKCIJA

OD MONOKRISTALNIH ELEKTRODA DO MODELÂ POVRŠINSKIH REAKCIJA UVOD U PRAKTIKUM FIZIKALNE KEMIJE TIN KLAČIĆ, mag. chem. Zavod za fizikalnu kemiju, 2. kat (soba 219) Kemijski odsjek Prirodoslovno-matematički fakultet Sveučilište u Zagrebu e-mail: tklacic@chem.pmf.hr

Више

XIII. Hrvatski simpozij o nastavi fizike Istraživački usmjerena nastava fizike na Bungee jumping primjeru temeljena na analizi video snimke Berti Erja

XIII. Hrvatski simpozij o nastavi fizike Istraživački usmjerena nastava fizike na Bungee jumping primjeru temeljena na analizi video snimke Berti Erja Istraživački usmjerena nastava fizike na Bungee jumping primjeru temeljena na analizi video snimke Berti Erjavec Institut za fiziku, Zagreb Sažetak. Istraživački usmjerena nastava fizike ima veću učinkovitost

Више

Microsoft PowerPoint - Bitovi [Compatibility Mode]

Microsoft PowerPoint - Bitovi [Compatibility Mode] Оператори над битовима (Јаничић, Марић: Програмирање 2, тачка 5.6) Оператори за рад са појединачним битовима Само на целобројне аргументе: ~ битовска негација & битовска конјункција (и) битовска (инклузивна)

Више

Stručno usavršavanje

Stručno usavršavanje TOPLINSKI MOSTOVI IZRAČUN PO HRN EN ISO 14683 U organizaciji: TEHNIČKI PROPIS O RACIONALNOJ UPORABI ENERGIJE I TOPLINSKOJ ZAŠTITI U ZGRADAMA (NN 128/15, 70/18, 73/18, 86/18) dalje skraćeno TP Čl. 4. 39.

Више

Microsoft PowerPoint - Programski_Jezik_C_Organizacija_Izvrsnog_Programa [Compatibility Mode]

Microsoft PowerPoint - Programski_Jezik_C_Organizacija_Izvrsnog_Programa [Compatibility Mode] Организација извршног програма (Марић, Јаничић: Програмирање 1, 9.3.3) Извршавање програма После успешног превођења (претпроцесирања, компилације, повезивања) програм може да се изврши Извршавање се захтева

Више

8 2 upiti_izvjesca.indd

8 2 upiti_izvjesca.indd 1 2. Baze podataka Upiti i izvješća baze podataka Na početku cjeline o bazama podataka napravili ste plošnu bazu podataka o natjecanjima učenika. Sada ćete izraditi relacijsku bazu u Accessu o učenicima

Више

SVEUČILIŠTE U ZAGREBU PRIRODOSLOVNO MATEMATIČKI FAKULTET MATEMATIČKI ODSJEK Ivana Šore REKURZIVNOST REALNIH FUNKCIJA Diplomski rad Voditelj rada: doc.

SVEUČILIŠTE U ZAGREBU PRIRODOSLOVNO MATEMATIČKI FAKULTET MATEMATIČKI ODSJEK Ivana Šore REKURZIVNOST REALNIH FUNKCIJA Diplomski rad Voditelj rada: doc. SVEUČILIŠTE U ZAGREBU PRIRODOSLOVNO MATEMATIČKI FAKULTET MATEMATIČKI ODSJEK Ivana Šore REKURZIVNOST REALNIH FUNKCIJA Diplomski rad Voditelj rada: doc.dr.sc. Zvonko Iljazović Zagreb, rujan, 2015. Ovaj diplomski

Више

PLAN I PROGRAM ZA DOPUNSKU (PRODUŽNU) NASTAVU IZ MATEMATIKE (za 1. razred)

PLAN I PROGRAM ZA DOPUNSKU (PRODUŽNU) NASTAVU IZ MATEMATIKE (za 1. razred) PLAN I PROGRAM ZA DOPUNSKU (PRODUŽNU) NASTAVU IZ MATEMATIKE (za 1. razred) Učenik prvog razreda treba ostvarit sljedeće minimalne standarde 1. SKUP REALNIH BROJEVA -razlikovati brojevne skupove i njihove

Више

Microsoft Word - ASIMPTOTE FUNKCIJA.doc

Microsoft Word - ASIMPTOTE FUNKCIJA.doc 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

Више

Skalarne funkcije više varijabli Parcijalne derivacije Skalarne funkcije više varijabli i parcijalne derivacije Franka Miriam Brückler

Skalarne funkcije više varijabli Parcijalne derivacije Skalarne funkcije više varijabli i parcijalne derivacije Franka Miriam Brückler i parcijalne derivacije Franka Miriam Brückler Jednadžba stanja idealnog plina uz p = nrt V f (x, y, z) = xy z x = n mol, y = T K, z = V L, f == p Pa. Pritom je kodomena od f skup R, a domena je Jednadžba

Више

Microsoft Word - V03-Prelijevanje.doc

Microsoft Word - V03-Prelijevanje.doc Praktikum iz hidraulike Str. 3-1 III vježba Prelijevanje preko širokog praga i preljeva praktičnog profila Mali stakleni žlijeb je izrađen za potrebe mjerenja pojedinih hidrauličkih parametara tečenja

Више

(Microsoft Word - Dr\236avna matura - rujan osnovna razina - rje\232enja)

(Microsoft Word - Dr\236avna matura - rujan osnovna razina - rje\232enja) I. ZADATCI VIŠESTRUKOGA IZBORA. B. Broj je cijeli broj, tj. pripada skupu cijelih brojeva Z. Skup cijelih brojeva Z je pravi podskup skupa racionalnih brojeva Q, pa je i racionalan broj. 9 4 je očito broj

Више

Konstrukcija i analiza algoritama Nina Radojičić februar Analiza algoritama, rekurentne relacije 1 Definicija: Neka su f i g dve pozitivne fun

Konstrukcija i analiza algoritama Nina Radojičić februar Analiza algoritama, rekurentne relacije 1 Definicija: Neka su f i g dve pozitivne fun Konstrukcija i analiza algoritama Nina Radojičić februar 2018. 1 Analiza algoritama, rekurentne relacije 1 Definicija: Neka su f i g dve pozitivne funkcije od argumenta n iz skupa N prirodnih brojeva.

Више

My_P_Trigo_Zbir_Free

My_P_Trigo_Zbir_Free Штa треба знати пре почетка решавања задатака? ТРИГОНОМЕТРИЈА Ниво - Основне формуле које произилазе из дефиниција тригонометријских функција Тригонометријске функције се дефинишу у правоуглом троуглу

Више

atka 26 (2017./2018.) br. 102 NEKE VRSTE DOKAZA U ČAROBMATICI Jadranka Delač-Klepac, Zagreb jednoj smo priči spomenuli kako je važno znati postavljati

atka 26 (2017./2018.) br. 102 NEKE VRSTE DOKAZA U ČAROBMATICI Jadranka Delač-Klepac, Zagreb jednoj smo priči spomenuli kako je važno znati postavljati NEKE VRSTE DOKAZA U ČAROBMATICI Jadranka Delač-Klepac, Zagreb jednoj smo priči spomenuli kako je važno znati postavljati prava pitanja. U Jednako je važno znati pronaći odgovore na postavljena pitanja,

Више

Рачунарска интелигенција

Рачунарска интелигенција Рачунарска интелигенција Генетско програмирање Александар Картељ kartelj@matf.bg.ac.rs Ови слајдови представљају прилагођење слајдова: A.E. Eiben, J.E. Smith, Introduction to Evolutionary computing: Genetic

Више

07_PJISP_II_Predavanja

07_PJISP_II_Predavanja Rekurzija i rekurzivne funkcije Informacioni inženjering 1 Rekurzija Rekurzija nastaje kada se pojam definiše pomoću sebe samog Javlja se u različitim oblastima, od lingvistike i logike, preko matematike

Више

Celobrojno programiranje Rešavamo sledeći poblem celobrojnog programiranja: min c T x Ax = b x 0 x Z n Gde pretpostavljamo da je A celobrojna matrica

Celobrojno programiranje Rešavamo sledeći poblem celobrojnog programiranja: min c T x Ax = b x 0 x Z n Gde pretpostavljamo da je A celobrojna matrica Celobrojno programiranje Rešavamo sledeći poblem celobrojnog programiranja: min c T x Ax = b x 0 x Z n Gde pretpostavljamo da je A celobrojna matrica dimenzije m n, b Z m, c Z n. Takođe, očekuje se da

Више

JMBAG IME I PREZIME BROJ BODOVA MJERA I INTEGRAL završni ispit 6. srpnja (Knjige, bilježnice, dodatni papiri i kalkulatori nisu dozvoljeni!) 1.

JMBAG IME I PREZIME BROJ BODOVA MJERA I INTEGRAL završni ispit 6. srpnja (Knjige, bilježnice, dodatni papiri i kalkulatori nisu dozvoljeni!) 1. MJERA I INTEGRAL završni ispit 6. srpnja 208. (Knjige bilježnice dodatni papiri i kalkulatori nisu dozvoljeni!). (8 bodova) Kao na predavanjima za d N sa P d : a b ] a d b d ] : a i b i R a i b i za i

Више

Microsoft PowerPoint - MR - Vjezbe - 03.ppt [Compatibility Mode]

Microsoft PowerPoint - MR - Vjezbe - 03.ppt [Compatibility Mode] Sveučilište u Zagrebu PMF Matematički odsjek Mreže računala Vježbe 03 Zvonimir Bujanović Slaven Kožić Vinko Petričević Mrežno programiranje: SocketAPI Programiramo u aplikacijskom sloju, za ostale se brinu

Више

Računarski praktikum I - Vježbe 11 - Funktori

Računarski praktikum I - Vježbe 11 - Funktori Prirodoslovno-matematički fakultet Matematički odsjek Sveučilište u Zagrebu RAČUNARSKI PRAKTIKUM I Vježbe 11 - Funktori v2018/2019. Sastavio: Zvonimir Bujanović Funkcijski objekti (funktori) Objekt klase

Више

Hej hej bojiš se matematike? Ma nema potrebe! Dobra priprema je pola obavljenog posla, a da bi bio izvrsno pripremljen tu uskačemo mi iz Štreberaja. D

Hej hej bojiš se matematike? Ma nema potrebe! Dobra priprema je pola obavljenog posla, a da bi bio izvrsno pripremljen tu uskačemo mi iz Štreberaja. D Hej hej bojiš se matematike? Ma nema potrebe! Dobra priprema je pola obavljenog posla, a da bi bio izvrsno pripremljen tu uskačemo mi iz Štreberaja. Donosimo ti primjere ispita iz matematike, s rješenjima.

Више

Test ispravio: (1) (2) Ukupan broj bodova: 21. veljače od 13:00 do 14:00 Županijsko natjecanje / Osnove informatike Osnovne škole Ime i prezime

Test ispravio: (1) (2) Ukupan broj bodova: 21. veljače od 13:00 do 14:00 Županijsko natjecanje / Osnove informatike Osnovne škole Ime i prezime Test ispravio: () () Ukupan broj bodova:. veljače 04. od 3:00 do 4:00 Ime i prezime Razred Škola Županija Mentor Sadržaj Upute za natjecatelje... Zadaci... Upute za natjecatelje Vrijeme pisanja: 60 minuta

Више

P1.1 Analiza efikasnosti algoritama 1

P1.1 Analiza efikasnosti algoritama 1 Analiza efikasnosti algoritama I Asimptotske notacije Master metoda (teorema) 1 Asimptotske notacije (1/2) Služe za opis vremena izvršenja algoritma T(n) gde je n N veličina ulaznih podataka npr. br. elemenata

Више

Microsoft Word - DIOFANTSKE JEDNADŽBE ZADACI docx

Microsoft Word - DIOFANTSKE JEDNADŽBE ZADACI docx DIOFANTSKE JEDNADŽBE Jednadžba s dvjema ili više nepoznanica čiji su koeficijenti i rješenja cijeli brojevi naziva se DIOFANTSKA JEDNADŽBA. Linearne diofantske jednadžbe 3" + 7% 8 = 0 nehomogena (s dvjema

Више

(Microsoft Word - Dr\236avna matura - kolovoz osnovna razina - rje\232enja)

(Microsoft Word - Dr\236avna matura - kolovoz osnovna razina - rje\232enja) I. ZADATCI VIŠESTRUKOGA IZBORA. C. Zadani broj očito nije niti prirodan broj niti cijeli broj. Budući da je 3 78 3. = =, 00 5 zadani broj možemo zapisati u obliku razlomka kojemu je brojnik cijeli broj

Више

Logičke izjave i logičke funkcije

Logičke izjave i logičke funkcije Logičke izjave i logičke funkcije Građa računala, prijenos podataka u računalu Što su logičke izjave? Logička izjava je tvrdnja koja može biti istinita (True) ili lažna (False). Ako je u logičkoj izjavi

Више

Programiranje 1

Programiranje 1 Sveučilište u Rijeci ODJEL ZA INFORMATIKU Ulica Radmile Matejčić 2, Rijeka Akademska 2018./2019. godina PROGRAMIRANJE 1 Studij: Preddiplomski studij informatike (jednopredmetni) Godina i semestar: 1. godina,

Више

Zadatak 1 U tablici se nalaze podaci dobiveni odredivanjem bilirubina u 24 uzoraka seruma (µmol/l):

Zadatak 1 U tablici se nalaze podaci dobiveni odredivanjem bilirubina u 24 uzoraka seruma (µmol/l): Zadatak 1 U tablici se nalaze podaci dobiveni odredivanjem bilirubina u 4 uzoraka seruma (µmol/l): 1.8 13.8 15.9 14.7 13.7 14.7 13.5 1.4 13 14.4 15 13.1 13. 15.1 13.3 14.4 1.4 15.3 13.4 15.7 15.1 14.5

Више

1 Polinomi jedne promenljive Neka je K polje. Izraz P (x) = a 0 + a 1 x + + a n x n = n a k x k, x K, naziva se algebarski polinom po x nad poljem K.

1 Polinomi jedne promenljive Neka je K polje. Izraz P (x) = a 0 + a 1 x + + a n x n = n a k x k, x K, naziva se algebarski polinom po x nad poljem K. 1 Polinomi jedne promenljive Neka je K polje. Izraz P (x) = a 0 + a 1 x + + a n x n = n a k x k, x K, naziva se algebarski polinom po x nad poljem K. Elementi a k K su koeficijenti polinoma P (x). Ako

Више

(Microsoft Word - Dr\236avna matura - lipanj osnovna razina - rje\232enja)

(Microsoft Word - Dr\236avna matura - lipanj osnovna razina - rje\232enja) 1. D. Prirodni brojevi su svi cijeli brojevi strogo veći od nule. je strogo negativan cijeli broj, pa nije prirodan broj. 14 je racionalan broj koji nije cijeli broj. Podijelimo li 14 s 5, dobit ćemo.8,

Више

Microsoft Word - Rjesenja zadataka

Microsoft Word - Rjesenja zadataka 1. C. Svi elementi zadanoga intervala su realni brojevi strogo veći od 4 i strogo manji od. Brojevi i 5 nisu strogo veći od 4, a 1 nije strogo manji od. Jedino je broj 3 strogo veći od 4 i strogo manji

Више

Državna matura iz informatike

Državna matura iz informatike DRŽAVNA MATURA IZ INFORMATIKE U ŠK. GOD. 2013./14. 2016./17. SADRŽAJ Osnovne informacije o ispitu iz informatike Područja ispitivanja Pragovi prolaznosti u 2014./15. Primjeri zadataka po područjima ispitivanja

Више

Microsoft PowerPoint - OOPpredavanja05 [Compatibility Mode]

Microsoft PowerPoint - OOPpredavanja05 [Compatibility Mode] OBJEKTNO ORIJENTISANO PROGRAMIRANJE PREDAVANJE 5 OBJEKTI U INTERAKCIJI Miloš Kovačević Đorđe Nedeljković 1 /25 OSNOVNI KONCEPTI - Abstrakcija - Modularizacija - Objektne reference - Klasni dijagram - Objektni

Више

(Microsoft Word - Dr\236avna matura - kolovoz osnovna razina - rje\232enja)

(Microsoft Word - Dr\236avna matura - kolovoz osnovna razina - rje\232enja) 5 5: 5 5. B. Broj.5 možemo zapisati u obliku = =, a taj broj nije cijeli broj. 0 0 : 5 Broj 5 je iracionalan broj, pa taj broj nije cijeli broj. Broj 5 je racionalan broj koji nije cijeli broj jer broj

Више

Pripreme 2016 Indukcija Grgur Valentić lipanj Zadaci su skupljeni s dva predavanja na istu temu, za učenike od prvog do trećeg razreda i za MEMO

Pripreme 2016 Indukcija Grgur Valentić lipanj Zadaci su skupljeni s dva predavanja na istu temu, za učenike od prvog do trećeg razreda i za MEMO Pripreme 016 Indukcija Grgur Valentić lipanj 016. Zadaci su skupljeni s dva predavanja na istu temu, za učenike od prvog do trećeg razreda i za MEMO kandidate. Zato su zadaci podjeljeni u odlomka. U uvodu

Више