1 / 67

Načela programiranja

Načela programiranja. Rješavanje zadataka. Da bi računalo riješilo zadatak, zadatak treba pretvoriti u oblik koji uključuje samo sposobnosti pamćenja i logičkog rasuđivanja. U pretvorbi zadataka pomažu pomoćni postupci. Rješavanje zadataka. Pomoćni postupci.

dillian
Download Presentation

Načela programiranja

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. Načela programiranja

  2. Rješavanje zadataka

  3. Da bi računalo riješilo zadatak, zadatak treba pretvoriti u oblik koji uključuje samo sposobnosti pamćenja i logičkog rasuđivanja. U pretvorbi zadataka pomažu pomoćni postupci. Rješavanje zadataka Sanda, 2012.

  4. Pomoćni postupci Sanda, 2012.

  5. Primjer - pretvorba zadatka u oblik prihvatljiv računalu: Pješak u zadanom vremenu učini određeni broj koraka. Potrebno je odrediti: Brzinu pješaka u km/h i m/s ako je poznata prosječna duljina njegovog koraka. Sanda, 2012.

  6. Prvi korak - predviđanje i raspored pojedinih faza izrade programa. Određuje se tko će, kada i što raditi. Planiranje Sanda, 2012.

  7. Analiza je raščlamba i potpuno razumijevanje zadatka i traženih rezultata. Rezultat analize je specifikacija, dokument koji sadrži podroban opis zadatka i željenih rezultata. To nije prijedlog kako riješiti zadatak, nego opis onoga što je na raspolaganju i željenog rezultata. Analiza zadatka i specifikacija Sanda, 2012.

  8. Sanda, 2012.

  9. OBRADA (algoritam) IZLAZ (rezultat) ULAZ (ulazni podaci) To je naputak kako riješiti zadatak. Sačinjen je od niza elementarnih radnji poredanih u ispravnom redosljedu. Algoritam Sanda, 2012.

  10. Unijeti poznate ulazne podatke. Provjeriti u kojim su jedinicama uneseni ulazni podaci. Ovisno o jedinicama mjere ulaznih podataka odlučiti treba li iznose preračunati u vrijednosti izražene u jedinicama osnovnog SI sustava. Izračunati put na osnovu ukupnog broja koraka i prosječne duljine jednog koraka. Pomoću formule za računanje brzine jednolikog gibanja i podatka o putu i vremenu izračunati brzinu v1 izraženu u m/s. Preračunati vrijednost iz m/s u km/h. Ispisati rezultate (izlazne vrijednosti). Sanda, 2012.

  11. Većina zadataka se može riješiti na više različitih načina, no treba nastojati pronaći što brži, što učinkovitiji i što sigurniji algoritam. • Algoritam se može prikazati: • dijagramom tijeka, • pseudokôdom. Algoritam Sanda, 2012.

  12. To je grafički prikaz algoritma. Omogućava lakšu analizu i provjeru predloženog rješenja, te pronalaženje boljih rješenja zadatka. Sastoji od nekoliko jednostavnih geometrijskih likova spojenih usmjerenim crtama koje pokazuju tijek rješavanja zadatka. Dijagram tijeka Sanda, 2012.

  13. Geometrijski likovi dijagrama tijeka POČETAK, KRAJ ILI PREKID PROGRAMA JEDNA ILI VIŠE NAREDBI ULAZ PODATAKA DA ? ODLUKA ILI GRANANJE IZLAZ PODATAKA NE

  14. Pseudokôd je tobožnji program (grč. pseudos – laž). Sastoji se od kratkih izraza na govornom jeziku koji opisuju i ukratko objašnjavaju pojedine zadatke algoritma. Pseudokôd bi trebao biti napisan tako da programer može na temelju njega napisati program u bilo kojem programskom jeziku. Pseudokôd Sanda, 2012.

  15. ulaz (N); ulaz (t); ako je t izražen u jedinicama koje nisu sekunde onda pretvori t u sekunde ; ulaz (sk); ako je sk izražen u jedinicama koje nisu metri onda pretvori sk u metre; s:= sk *N; v1:=s/t; v2:=v1*3,6; (1m=0,001km; 1s=1/3600h) izlaz (v1,v2); Sanda, 2012.

  16. Zapis algoritma naredbama programskog jezika. • Svaki programski jezik ima: • ograničeni skup riječi posebnog značenja (ključne riječi), • propisana pravila slaganja ključnih riječi u naredbe (sintaksa). Programiranje Sanda, 2012.

  17. Ključne riječi Sanda, 2012.

  18. Da bi se program mogao izvršiti, mora biti pravopisno ispravan, tj. mora biti zadovoljena sintaksa. Da bi program bio uporabno koristan, mora biti logički ispravan, tj. potrebno ga je provjeravati (testirati). Program provjerava autor programa, više ljudi kod proizvođača progama ili neovisni ispitivači. provjera i ispravljanje Sanda, 2012.

  19. provjera • Postupak treba ponoviti za što više ulaznih podataka za koje je poznat rezultat ili se rezultat zna izračunati. Sanda, 2012.

  20. Postupak mijenjanja programa tijekom njegovog “životnog” vijeka. • Izravno: ugovor o održavanju. • Neizravno:izdavanje novih inačica i ispravaka programa za programe koji se prodaju u velikim količinama (npr. program Windows). Održavanje programa Sanda, 2012.

  21. To je važan dodatak programu, a sastoji se od: • uputa za instaliranje programa, • priručnika za korisnike, • tehničkog opisa programa, itd. Dokumentacija Sanda, 2012.

  22. Pri opisu programskih struktura bit će korištene osnove pseudo jezika koji se rabi u Ispitnom katalogu za državnu maturu iz Informatike za šk.god. 2012./2013. Primjer pseudo jezika Sanda, 2012.

  23. To je mjesto u memoriji rezervirano za pohranu podatka. • Varijablu jednoznačno određuje ime (identifikator). • Ime varijable se u pseudo jeziku može zadati proizvoljno, npr. : • x, a, TX, B_Pod, AmPe Varijable Sanda, 2012.

  24. Varijabli se vrijednost pridružuje s pomoću operatora pridruživanja. Za ovu inačicu pseudo jezika to je :=. Npr. izraz x:=3 se može čitati "varijabli x se pridružuje broj 3". Svaka naredba ove inačice pseudo jezika završava znakom točka-zarez (;). Vrijednost varijable Sanda, 2012.

  25. Kolika će biti vrijednost varijable X na kraju ovog odsječka? X := 5; X := 3; X = 5; Operator pridruživanja Rezultat: X ima vrijednost 3 Sanda, 2012.

  26. To su simboli koji predstavljaju određene funkcije. • Može ih se svrstati u skupine, npr.: • aritmetički operatori, • logički operatori, • operatori uspoređivanja (relacijski operatori). operatori Sanda, 2012.

  27. Aritmetički operatori Sanda, 2012.

  28. Operatori dijeljenja Sanda, 2012.

  29. Logički podaci su podaci koji mogu poprimiti samo jednu od dvije vrijednosti, npr.: 1/0. Za rad s logičkim podacima, postoje logičke funkcije. Logički operatori Sanda, 2012.

  30. Logičke funkcije Sanda, 2012.

  31. Logički operatori Sanda, 2012.

  32. Operatori uspoređivanja Sanda, 2012.

  33. Rezultat usporedbe je 1 ako je izraz zapisan operatorima usporedbe istinit, a ako nije, rezultat će biti 0. Operatori uspoređivanja Sanda, 2012.

  34. Redoslijed izvršavanja operatora Sanda, 2012.

  35. Operatori su ravnopravni, izraz se izvršava s lijeva u desno: 22 DIV 5 = 4 4 * 11 = 44 44 MOD 3 = 2 (ostatak dijeljenja 44/3) x je 2 Redoslijed izvršavanja operatora Sanda, 2012.

  36. Zagrade poništavaju prioritete operatora : 22 DIV 5 = 4 11 MOD 3= 2 4 * 2 = 8 x je 8 Redoslijed izvršavanja operatora Sanda, 2012.

  37. 55 MOD 6 = 1 3 * 4 = 12 6 / 3= 2 12 + 2 - 1 = 13 x je 13 Redoslijed izvršavanja operatora Sanda, 2012.

  38. Opisuje način i redoslijedizvršavanja pojedinih radnji koje dovode do konačnog rješenja zadatka. • Razlikuju se osnovne programske strukture: • pravocrtna programska strutura (slijed, niz), • struktura grananja, • struktura petlje. Programska struktura Sanda, 2012.

  39. Naredbe pravocrtne strukture Sanda, 2012.

  40. Korisnik unosi dva broja, brojevi se zbrajaju, a dobiveni se zbroj ispisuje. Program se odvija uvijek istim slijedom naredbi bez obzira na unesene podatke. Pravocrtna programska struktura Sanda, 2012.

  41. To su izdvojeni nizovi naredbi koji čine logičke cjeline a obavljaju točno utvrđene zadatke. Funkcije Sanda, 2012.

  42. Potrebno je unijeti realni broj, a potom: • Izračunati drugi korijen broja. • Zaokružiti uneseni broj na najbliži cijeli broj. • Izračunati kvadrat broja. • Ispisati dobivene vrijednosti. Funkcije - primjer Sanda, 2012.

  43. Grananje je programska struktura koja omogućuje različit tijek programa, ovisno o rezultatu postavljenog uvjeta. Programska struktura grananja Sanda, 2012.

  44. Dijelovi programa koji se uvjetno izvode, grupiraju se u skupine ili blokove naredbi. Naredbe grananja Sanda, 2012.

  45. Korisnik unosi dva broja, a zatim se određuje i ispisuje veći broj. Programska struktura grananja Sanda, 2012.

  46. Dijagram tijeka grananja Sanda, 2012.

  47. Često je u programu potrebno neku radnju ponoviti više puta (iterirati). Takva se programska struktura naziva petlja. • Ponavljati se može: • unaprijed zadani broj puta, • sve dok je ispunjen zadani uvjet. Programska struktura petlje Sanda, 2012.

  48. Naredbe petlje Sanda, 2012.

  49. Korisnik treba unijeti 100 brojeva, a prije svakog unosa broja ispisuje se tekst "Unesi broj". Programska struktura petlje Sanda, 2012.

More Related