1 / 28

Programiranje 1 algoritmi

Programiranje 1 algoritmi. Staša Vujičić. Formiranje algoritma. Konstruisati efikasan algoritam znači dati skup preciznih uputstava kako do ć i do re š enja z adatog problema Algoritmi se mogu opisivati: pseudo jezikom prirodnim jezikom dijagramom toka.

duman
Download Presentation

Programiranje 1 algoritmi

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Programiranje 1algoritmi Staša Vujičić

  2. Formiranje algoritma • 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.

  3. OPIS ALGORITAMA PRIRODNIM JEZIKOM • Opisati prirodnim jezikom detaljno, precizno i nedvosmisleno korake pri rešavanju problema,vodeći računa o redosledu operacija koje se izvršavaju.

  4. OPIS ALGORITAMA PSEUDO JEZIKOM • Pseudo jezik je neformalna kombinacija prirodnog jezika i nekog programskoj jezika. • Priupotrebi pseudo jezika mora se voditi računa da se jezičke konstrukcije koriste uvek na istinačin i da budu praćene objašnjenjima (ako je potebno).

  5. OPISIVANJE ALGORITAMA dijagramom toka • Za ovaj oblik opisa koriste se grafički simboli čiji je opis propisan ISO standardom. Tekst kojiopisuje obradu se zapisuje unutar grafičkih simbola. Tok rada algoritma se opisuje linijamakoje povezuju grafičke simbole koji reprezentuju obradu.

  6. Zdravo svete! • Napisati algoritam za ispisivanje poruke ”Zdravo svete” na izlazu. • Algoritam Ispis ulaz: Nema podataka na ulazu. izlaz: poruka ”Zdravo, svete!!!” početak izlaz: "Zdravo, svete!!!" kraj

  7. Sabiranje 2 broja • Napisati algoritam za sabiranje dva broja. • Algoritam Sabiranje ulaz: x,y izlaz: zbir brojeva x,y početak ulaz x,y; zbir = x + y; izlaz zbir; kraj

  8. razmena dva broja • Napisati algoritam za razmenu dva broja. • Algoritam razmena ulaz: dva broja izlaz: razmenjena dva broja početak ulaz x,y; pom=x; /* pom je pomocna promenljiva */ x=y; y=pom; izlaz x,y; kraj

  9. Površina i zapremina valjka • Dat je prav valjak visine H i poluprečnika osnove r.Izračunati površinu i zapreminu valjka. • Algoritam P i V valjka ulaz: visina valjka H i poluprecnik osnove r izlaz: P i V valjka početak ulaz H,r; B = πr2; V = B * H; O = 2πrH; P = O + 2B; izlaz P,V; kraj

  10. Grananjamaksimum dva broja • Napisati algoritam za određivanje maksimuma dva broja. • Algoritam Maksimum dva broja ulaz: x, y; izlaz: veći od brojeva x i y početak ulaz x,y; ako je x>y onda je max=x; inace je max=y; izlaz max; kraj

  11. Grananjakvadratna jednačina • Napisati algoritam koji rešava kvadratnu jednačinu a * x2 + b * x + c. • Algoritam kvadratna jednačina ulaz: koeficijenti a, b, c izlaz: rešenje kvadratne jednačine x1 i x2 početak ulaz a,b,c;

  12. D = b2 - 4ac; ako je D >= 0 onda je { x1 = (- b + √D)/2a x2 = (- b - √D)/2a } inace je { x1 = (-b + i √-D)/2a x2 = (-b - i √-D)/2a } izlaz x1, x2; kraj

  13. Petlje • Napisati algoritam za izračunavanje sume brojeva koji se unose na ulazu sve dok se neunese nula. • Algoritam Zbir ulaz: brojevi sve dok se ne unese nula izlaz: zbir brojeva početak zbir = 0; /* Inicijalizujemo zbir na nulu */ ulaz x; /* Unosimo prvi u nizu brojeva */

  14. sve dok je x!=0 radi { zbir=zbir+x; /* Na tekuću vrednost zbira dodajemo broj sa ulaza */ ulaz x; /* Unosimo novi ulazni broj */ } izlaz zbir; /* Na izlaz saljemo izračunati zbir */ kraj

  15. Petlje • Napisati algoritam za izračunavanje maksimuma brojeva koji se unose na ulazu sve dokse ne unese nula. • Algoritam Maksimum brojeva ulaz: brojevi sve dok se ne unese nula izlaz: maksimum unetih brojeva početak ulaz x; max = x;

  16. sve dok je x!=0 radi { ulaz x; /* Unosimo novi ulazni broj */ ako je x>max onda je max=x; /* Proveravamo da li je uneti broj veći od tekućeg maksimumai ako jeste onda tekućem maksimumu dodeljujemo njegovu vrednost */ } izlaz max; /* Na izlaz šaljemo izračunati maximum */ kraj

  17. Petlje • Napisati algoritam za određivanje faktorijela prirodnog broja. • Algoritam n! ulaz: prirodan broj n izlaz: faktorijel prirodnog broja n početak ulaz n; f=1;

  18. sve dok je n>1 radi { f=f*n; n=n-1; } izlaz f; kraj

  19. petlje • Napisati algoritam za izračunavanje celobrojnog količnika q i ostatka r pri deljenjubroja x sa brojem y: x = qy + r; 0 ≤ r < y; 0 ≤ q. • Algoritam količnik ulaz: prirodni brojevi x i y izlaz: količnik q i ostatak r pri deljenju x sa y početak ulaz x,y;

  20. kolicnik=0; ostatak=x; sve dok je ostatak>=y radi { ostatak=ostatak-y; kolicnik=kolicnik+1; } izlaz kolicnik, ostatak; kraj

  21. petlje • Napisati algoritam za izračunavanje n-tog Fibonačijevog broja. • Algoritam Fibonaci ulaz: n izlaz: n-ti Fibonacijev broj početak ulaz n; x0=0; x1=1;

  22. ako je n=0 onda je rezultat=x0; inace je { sve dok je n>1 radi { pom=x0; x0=x1; x1=pom+x1; n=n-1; } } rezultat=x1; izlaz rezultat; kraj

  23. NZD • Naći najveći zajednički delitelj za dva broja. • Algoritam NZD1 ulaz: prirodni brojevi a, b izlaz: nzd(a,b) početak ulaz a,b; nzd = 1; br=2;

  24. sve dok je br <= a i br <= b radi { ako je a%br==0 i b%br==0 onda je nzd=br; br=br+1; } izlaz nzd; kraj

  25. nzd • Algoritam NZD2 ulaz: prirodni brojevi a, b izlaz: nzd(a,b) početak ulaz a,b; nzd = 1; ako je a < b onda je nzd=a; inace je nzd=b; indikator=1;

  26. sve dok je indikator=1 radi { ako je a%nzd==0 i b%nzd==0 onda je indikator=0; inace je nzd=nzd-1; } izlaz nzd; kraj

  27. Euklidov algoritam • Algoritam Euklid 1 ulaz: prirodni brojevi a, b izlaz: nzd(a,b) početak ulaz a,b; sve dok je a!=b radi { ako je a>b onda je a=a-b; inace je b=b-a; }

  28. izlaz a; kraj

More Related