SlideShare une entreprise Scribd logo
1  sur  12
Izračunavanje vrednosnih funkcija 2014 
1
Izračunavanje vrednosnih funkcija 2014 
2
Izračunavanje vrednosnih funkcija 2014 
3 
Slika 1.Blez Paskal 
Sadržaj: 
Sadržaj _________________________________________________________________________________ 3 
O Paskal-u ______________________________________________________________________________ 4 
Tabeliranje vrednostnih funkcija ___________________________________________________________ 6 
Izračunavanje sume i proizvoda ____________________________________________________________ 7 
Ispitivanje svojstava celih brojeva __________________________________________________________ 9 
Zaključak ______________________________________________________________________________ 11 
Literatura _____________________________________________________________________________ 12
Izračunavanje vrednosnih funkcija 2014 
4 
Slika 1.Blez Paskal 
O Paskal-u 
Paskal (Pascal) je imperativni programski 
jezik, koji je 1974. godine razvio Niklaus Virt, 
kao jezik pogodan za učenje strukturnog 
programiranja. Imenovan je po čuvenom 
francuskom matematičaru i filozofu Blezu 
Paskalu. Standardizovan je 1983. godine od 
strane Međunarodnog komiteta za 
standardizaciju. Paskal se danas koristi kao 
početni program za obuku budućih programera. 
Istorija Paskal-a 
Krajem 60-ih godina švajcarski naučnik 
Niklaus Virt imao je za cilj da napravi jezik u 
kome bi se mogla efikasno realizovati obuka 
programera. Međutim, danas Pascal ima mnogo 
širu primenu. On se koristi ne samo za pisanje 
programa u raznim oblastima primene računara 
već i kao jezik za sistemsko i vizuelno 
programiranje. Vizuelni Pascal, realizovan 
paketom Delphi, danas je jedan od najpopularnijih jezika za projektovanje Windows aplikacija. 
To je jednostavan jezik koji se može brzo naučiti, i u njemu se mogu pisati algoritamski vrlo 
složeni programi. Programski jezik Pascal razvio je, izmedju 1968 i 1970, na temeljima tad 
popularnog jezika ALGOL-a, radi prevazilaženja poteškoća koje su se javljale programiranjem u 
višim programskim jezicima sekvencijalnog karaktera (FORTRAN, COBOL, ALGOL i BASIC), 
kao i zbog potreba uvođenja standardnog programskog jezika za učenje u školama i fakultetima. 
Virt je programskom jeziku dao ime Pascal u čast francuskog filozofa i matematičara Bleza 
Paskala, koji je 1641. izumeo mehanički kalkulator. Prva specifikacija objavljena je 1971. Već 
od 1972 Pascal se počinje izučavati na fakultetima kao jezik prikladan za uvod u programiranje. 
Prvobitna standardizacija jezika dogodila se 1983. Pascal uvodi paradigmu strukturnog i 
proceduralnog programiranja, što znači da se programski kod razlaže na samostalne strukture - 
podatke i podprograme, koji se ne izvršavaju u istom redosledu u kom su navedeni, kao što je 
slučaj kod naredbi sekvencijalnih programskih jezika, nego se po potrebi pozivaju i izvode. 
Sedamdesetih godina Pascal stiče veliku popularnost te se u velikoj meri koristi za aplikacijsko i 
i sistemsko programiranje.
Izračunavanje vrednosnih funkcija 2014 
5 
Slika 2. Turbo Paskal 
Borlandov Pascal 
1983. pojavljuje se Turbo Pascal firme Borland, prvo integrisano razvojno okruženje 
(IDE). 
Turbo Pascal objedinjuje sve funkcije ciklusa razvoja softvera u jedan celovit program 
(pisanje koda, kompajlovanje, linkovanje, debugovanje), a istovremeni pristup svakoj od 
funkcija bez potrebe pokretanja zasebnih programa i gašenja predhodno pokrenutih je doprineo 
još većoj popularizaciji Pascala u softverskoj industriji, jer su programeri do tad morali pokretati 
zasebno nekoliko različitih programa (editor, kompajler, linker, debugger) da bi dovršili konačan 
program. IDE Turbo Pascal je masovno korišćen, kako zbog mogućnosti velike uštede vremena 
pri razvoju softvera, tako i zbog svoje niske cene i licence koja je omogućivala kupovinu samo 
jedne kopije proizvoda bez obzira na kolikom broju kompjutera će softver biti korišćen. Osim 
Turbo Pascala, Borland je izporučivao i skuplju verziju IDE-a pod nazivom Borland Pascal koja 
se od Turbo Pascala neznatno razlikovala po mogućnostima i imala uključen izvorni kod 
standardnih modula. Od novina koje uvodi Borland u Turbo Pascal značajna je mogućnost 
deljenja koda na odvojene datoteke, takozvane module.
Izračunavanje vrednosnih funkcija 2014 
Ako je potrebno izračunati vrednosti nekih funkcija za seriju početnih vrednosti 
argumenata onda se za to mogu koristiti ciklusi. Koji ciklus će se koristiti zavisi od odnosa 
između vrednosti argumenata. Ako postoji neko pravilo na osnovu kojeg se argumenti menjaju i 
to tako da se unapred zna broj vrednosti argumenata možemo koristiti bilo koju vrstu ciklusa. 
Ako se ne može unapred znati koliko puta će se računati vrednost funkcije onda ćemo koristiti 
neki od ciklusa sa uslovom. 
Nekad treba ispisati vrednosti trigonometrijskih funkcija sin i cos na intervalu od ao do 
bo stepeni sa korakom od co. Zadatak ćemo rešiti primenom ciklusa while. Kao početnu vrednost 
argumenta funkcije uzećemo broj a, odrediti vrednost funkcije i ispisati je, a zatim povećavati 
argument dok ne stignemo do broja b. Potrebno je voditi računa o tome da trigonometrijske 
funkcije rade sa uglovima u radijanima. Zadatak je jednostavno moguće rešiti i korišćenjem 
ciklusa repeat uz uslov da korisnik upiše da je a<b, a ako nije, pre primene rešenja, treba 
zameniti vrednosti promenljivih. Rešenje pomoću ciklusa for nije tako jednostavno. 
6 
Tabeliranje vrednostnih funkcija 
Slika 3. Ciklus While 
Slika 4. Ciklus Repeat
Izračunavanje vrednosnih funkcija 2014 
Ako je potrebno računati sume ili proizvode neke grupe brojeva koji imaju neku 
funkcionalnu zavisnost, uglavnom mogu se koristiti sve vrste ciklusa, ali se najčešće koristi 
ciklus for jer je takvo rešenje najjednostavnije (osim u nekim specifičnim slučajevima). Neka 
treba sabrati sve parne brojeve od a do b. Najjednostavnije rešenje je: 
7 
Izračunavanje sume i proizvoda 
Slika 4. Ciklus Repeat 
Slika 5. Ciklus sa uslovom 
Naravno, postavljanje početnog broja na paran broj veći ili jednak broju a moglo se izvesti 
i pomoću jedne If naredbe, ali to je već stvar “ukusa”. Na isti način bi se rešavali i zadaci sa 
proizvodom brojeva. Ako bi trebalo sabirati ili množiti brojeve koji nisu celi, onda bi trebalo 
koristiti cikluse sa uslovom jer je rešenje jednostavnije nego sa brojačkim ciklusima (a ponekad i 
jedino moguće).
Izračunavanje vrednosnih funkcija 2014 
8 
Slika 6. If naredba
Izračunavanje vrednosnih funkcija 2014 
Problemi tipa: odrediti da li je broj prost, ispisati sve proste delioce broja, ispisati 
savršene brojeve do n, ispisati Armstrongove brojeve do n i slični, mogu se rešavati bilo kojom 
vrstom ciklusa, a često se koristi i kombinovanje različitih vrsta, da bi se rešenje pojednostavilo. 
Prikazaćemo prvi algoritam. Broj je prost ako osim 1 i samog sebe nema drugih delioca, zato 
ćemo izbrojati takve delioce: 
bd:=0; // broj delioca različitih od 1 i samog broja je na početku 0 
For del:=2 to broj-1 do // počinjemo testiranje od 2 do prvog manjeg broja 
If broj mod del=0 then bd:=bd+1; // ako je broj deljiv uvećavamo broj delilaca za 1 
9 
Ispitivanje svojstava celih brojeva 
Slika 7. Ispitivanje svojstava celih 
brojeva 
If bd>0 then // ispisati broj nije prost 
U algoritmu ima puno nepotrebnih testiranja, pa je neefikasan i ne treba ga koristiti. Bilo 
koji broj, osim samog sebe, nema delioca koji su veći od njegove polovine. Broj nije prost ako 
ima bar jednog delioca različitog od 1 i samog sebe, pa nema potrebe tražiti sve takve delioce. 
Bolji algoritam se prekida čim se pronađe prvi takav delilac: 
Prvi uslov u ciklusu je jasan. Objasniću drugi. Algoritam je zamišljen da se ciklus prekida 
čim se naiđe na prvog delioca koji je veći od 1. To znači, ako je broj deljiv sa 2 nema potrebe 
proveravati da li je deljiv sa svojom polovinom; ako je broj deljiv sa 3 nema potrebe proveravati 
da li je deljiv svojom trećinom i tako dalje do nekog broja n. Da bismo pronašli koji je to broj
Izračunavanje vrednosnih funkcija 2014 
formiramo niz parova delilaca koji kao proizvod daju taj broj, odnosno: 2 * broj/2, 3 * broj/3, 4 * 
broj/4 ... Prvi delilac stalno raste, drugi se stalno smanjuje i prvi je uvek manji od drugog. Jasno 
je da prvi delilac ne može biti veći od korena tog broja (jer ako je veći mora se pomnožiti sa 
brojem koji je manji od njega da bi se dobio broj). Znači, poslednji delilac u ovom nizu je koren 
početnog broja, zato je to poslednji broj za koji proveravamo da li može biti delilac početnog i 
ako je delilac veći od korena broja znači da nismo našli nijednog delioca, pa je početni broj 
prost. 
10
Izračunavanje vrednosnih funkcija 2014 
11 
Zaključak
Izračunavanje vrednosnih funkcija 2014 
12 
Literatura 
1. http://sr.wikipedia.org/sr/%D0%9F%D0%B0%D1%81%D0%BA%D0%B0%D0%BB_%28%D0 
%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D1%81%D0%BA%D0%B8_ 
%D1%98%D0%B5%D0%B7%D0%B8%D0%BA%29 
2. “RAČUNARSTVO I INFORMATIKA”, Dušan Tomić, “Zavod za udžbenike” Beograd 
3. http://znakoviporedputa.com/religija- i-zivot/523-blez-paskal 
4. http://profesorka.wordpress.com/2011/11/02/uvod-u-pascal/ 
5. http://www.tehnickaue.edu.rs/srp/cas/?conid=1799

Contenu connexe

En vedette

Movement in brazil
Movement in brazilMovement in brazil
Movement in brazil
nickolas5696
 
Gazi bolcocuk 20060629 mukkattes
Gazi bolcocuk 20060629 mukkattesGazi bolcocuk 20060629 mukkattes
Gazi bolcocuk 20060629 mukkattes
gazi999
 
Get Advice, Solve Problems, Influence IT-ers in the Spiceworks Community
Get Advice, Solve Problems, Influence IT-ers in the Spiceworks CommunityGet Advice, Solve Problems, Influence IT-ers in the Spiceworks Community
Get Advice, Solve Problems, Influence IT-ers in the Spiceworks Community
Auskosh
 

En vedette (20)

Movement in brazil
Movement in brazilMovement in brazil
Movement in brazil
 
Gazi bolcocuk 20060629 mukkattes
Gazi bolcocuk 20060629 mukkattesGazi bolcocuk 20060629 mukkattes
Gazi bolcocuk 20060629 mukkattes
 
Regions of Greece
Regions of GreeceRegions of Greece
Regions of Greece
 
Schmitzrollingeyeballs
SchmitzrollingeyeballsSchmitzrollingeyeballs
Schmitzrollingeyeballs
 
Steve's sample presentation
Steve's sample presentationSteve's sample presentation
Steve's sample presentation
 
9 audacity
9 audacity9 audacity
9 audacity
 
Tampere 4.11.2011 - BTW koulussa
Tampere 4.11.2011 - BTW koulussaTampere 4.11.2011 - BTW koulussa
Tampere 4.11.2011 - BTW koulussa
 
Get Advice, Solve Problems, Influence IT-ers in the Spiceworks Community
Get Advice, Solve Problems, Influence IT-ers in the Spiceworks CommunityGet Advice, Solve Problems, Influence IT-ers in the Spiceworks Community
Get Advice, Solve Problems, Influence IT-ers in the Spiceworks Community
 
Spiceworks Unplugged Microsoft UK 30 Nov 11
Spiceworks Unplugged Microsoft UK 30 Nov 11Spiceworks Unplugged Microsoft UK 30 Nov 11
Spiceworks Unplugged Microsoft UK 30 Nov 11
 
6 wikit opettajan_tyovalineena
6 wikit opettajan_tyovalineena6 wikit opettajan_tyovalineena
6 wikit opettajan_tyovalineena
 
Soluci prob
Soluci probSoluci prob
Soluci prob
 
Lasten ja nuorten verkonkaytto
Lasten ja nuorten verkonkayttoLasten ja nuorten verkonkaytto
Lasten ja nuorten verkonkaytto
 
Conflict resolution
Conflict resolutionConflict resolution
Conflict resolution
 
PHP MySQL
PHP MySQLPHP MySQL
PHP MySQL
 
Brazil
Brazil Brazil
Brazil
 
Conflict resolution
Conflict resolutionConflict resolution
Conflict resolution
 
Edmonton oilers ppt
Edmonton oilers pptEdmonton oilers ppt
Edmonton oilers ppt
 
Рефакторинг и второе рождение веб-приложения на Zend Framework 2
Рефакторинг и второе рождение веб-приложения на Zend Framework 2Рефакторинг и второе рождение веб-приложения на Zend Framework 2
Рефакторинг и второе рождение веб-приложения на Zend Framework 2
 
Building happiness resilience_and_motivation_in_adolescents
Building happiness resilience_and_motivation_in_adolescentsBuilding happiness resilience_and_motivation_in_adolescents
Building happiness resilience_and_motivation_in_adolescents
 
Luokk6 2. kerta
Luokk6 2. kertaLuokk6 2. kerta
Luokk6 2. kerta
 

Similaire à Paskal-Izračunavanje vrednosnih funkcija (13)

Python - osnove
Python - osnovePython - osnove
Python - osnove
 
Paskal zadaci
Paskal zadaciPaskal zadaci
Paskal zadaci
 
09. -10. WHILE PETLJA.pptx
09. -10. WHILE PETLJA.pptx09. -10. WHILE PETLJA.pptx
09. -10. WHILE PETLJA.pptx
 
PROGRAMIRANJE-C-IIRAZRED.pdf
PROGRAMIRANJE-C-IIRAZRED.pdfPROGRAMIRANJE-C-IIRAZRED.pdf
PROGRAMIRANJE-C-IIRAZRED.pdf
 
Paskal teorija i-zadaci
Paskal teorija i-zadaciPaskal teorija i-zadaci
Paskal teorija i-zadaci
 
06.-08. CIKLICNE ALGOR STRUKTURE FOR.pptx
06.-08.  CIKLICNE ALGOR STRUKTURE FOR.pptx06.-08.  CIKLICNE ALGOR STRUKTURE FOR.pptx
06.-08. CIKLICNE ALGOR STRUKTURE FOR.pptx
 
Analiza sta ako Jelena Nikolic
Analiza sta ako Jelena NikolicAnaliza sta ako Jelena Nikolic
Analiza sta ako Jelena Nikolic
 
Postupci sortiranja u programskom jeziku c
Postupci sortiranja u programskom jeziku cPostupci sortiranja u programskom jeziku c
Postupci sortiranja u programskom jeziku c
 
Pripreme za programiranje 8. drugi dio
Pripreme za programiranje 8. drugi dioPripreme za programiranje 8. drugi dio
Pripreme za programiranje 8. drugi dio
 
Dev c++ sekcija OS"N.Tesla" Prnjavor (Brankica Jokic)
Dev c++ sekcija OS"N.Tesla" Prnjavor (Brankica Jokic)Dev c++ sekcija OS"N.Tesla" Prnjavor (Brankica Jokic)
Dev c++ sekcija OS"N.Tesla" Prnjavor (Brankica Jokic)
 
R2 MS Excel - Analiza Šta ako - Jelena Nikolić
R2 MS Excel - Analiza Šta ako - Jelena NikolićR2 MS Excel - Analiza Šta ako - Jelena Nikolić
R2 MS Excel - Analiza Šta ako - Jelena Nikolić
 
R3 t9 z71
R3 t9 z71R3 t9 z71
R3 t9 z71
 
Statisticke funkcije u Excel u Luka Jovanovic
Statisticke funkcije u Excel u  Luka JovanovicStatisticke funkcije u Excel u  Luka Jovanovic
Statisticke funkcije u Excel u Luka Jovanovic
 

Plus de Osnovna škola "Žarko Zrenjanin"

Plus de Osnovna škola "Žarko Zrenjanin" (13)

Cybersmart
CybersmartCybersmart
Cybersmart
 
Izvori digitalnih slika - uvod
Izvori digitalnih slika - uvodIzvori digitalnih slika - uvod
Izvori digitalnih slika - uvod
 
Dobijanje soli
Dobijanje soliDobijanje soli
Dobijanje soli
 
Soli. Formule i nazivi soli
Soli. Formule i nazivi soliSoli. Formule i nazivi soli
Soli. Formule i nazivi soli
 
Poglavlje Internet (I deo-Računarske mreže)
Poglavlje Internet (I deo-Računarske mreže)Poglavlje Internet (I deo-Računarske mreže)
Poglavlje Internet (I deo-Računarske mreže)
 
E-mail
E-mailE-mail
E-mail
 
Pepeljuga
PepeljugaPepeljuga
Pepeljuga
 
Grad budućnosti - Altideo5
Grad budućnosti - Altideo5Grad budućnosti - Altideo5
Grad budućnosti - Altideo5
 
Legalni i piratski softver
Legalni i piratski softverLegalni i piratski softver
Legalni i piratski softver
 
Zlonamerni programi i zaštita
Zlonamerni programi i zaštitaZlonamerni programi i zaštita
Zlonamerni programi i zaštita
 
Srbija
SrbijaSrbija
Srbija
 
Windows explorer
Windows explorerWindows explorer
Windows explorer
 
Petaci.1.čas
Petaci.1.časPetaci.1.čas
Petaci.1.čas
 

Paskal-Izračunavanje vrednosnih funkcija

  • 3. Izračunavanje vrednosnih funkcija 2014 3 Slika 1.Blez Paskal Sadržaj: Sadržaj _________________________________________________________________________________ 3 O Paskal-u ______________________________________________________________________________ 4 Tabeliranje vrednostnih funkcija ___________________________________________________________ 6 Izračunavanje sume i proizvoda ____________________________________________________________ 7 Ispitivanje svojstava celih brojeva __________________________________________________________ 9 Zaključak ______________________________________________________________________________ 11 Literatura _____________________________________________________________________________ 12
  • 4. Izračunavanje vrednosnih funkcija 2014 4 Slika 1.Blez Paskal O Paskal-u Paskal (Pascal) je imperativni programski jezik, koji je 1974. godine razvio Niklaus Virt, kao jezik pogodan za učenje strukturnog programiranja. Imenovan je po čuvenom francuskom matematičaru i filozofu Blezu Paskalu. Standardizovan je 1983. godine od strane Međunarodnog komiteta za standardizaciju. Paskal se danas koristi kao početni program za obuku budućih programera. Istorija Paskal-a Krajem 60-ih godina švajcarski naučnik Niklaus Virt imao je za cilj da napravi jezik u kome bi se mogla efikasno realizovati obuka programera. Međutim, danas Pascal ima mnogo širu primenu. On se koristi ne samo za pisanje programa u raznim oblastima primene računara već i kao jezik za sistemsko i vizuelno programiranje. Vizuelni Pascal, realizovan paketom Delphi, danas je jedan od najpopularnijih jezika za projektovanje Windows aplikacija. To je jednostavan jezik koji se može brzo naučiti, i u njemu se mogu pisati algoritamski vrlo složeni programi. Programski jezik Pascal razvio je, izmedju 1968 i 1970, na temeljima tad popularnog jezika ALGOL-a, radi prevazilaženja poteškoća koje su se javljale programiranjem u višim programskim jezicima sekvencijalnog karaktera (FORTRAN, COBOL, ALGOL i BASIC), kao i zbog potreba uvođenja standardnog programskog jezika za učenje u školama i fakultetima. Virt je programskom jeziku dao ime Pascal u čast francuskog filozofa i matematičara Bleza Paskala, koji je 1641. izumeo mehanički kalkulator. Prva specifikacija objavljena je 1971. Već od 1972 Pascal se počinje izučavati na fakultetima kao jezik prikladan za uvod u programiranje. Prvobitna standardizacija jezika dogodila se 1983. Pascal uvodi paradigmu strukturnog i proceduralnog programiranja, što znači da se programski kod razlaže na samostalne strukture - podatke i podprograme, koji se ne izvršavaju u istom redosledu u kom su navedeni, kao što je slučaj kod naredbi sekvencijalnih programskih jezika, nego se po potrebi pozivaju i izvode. Sedamdesetih godina Pascal stiče veliku popularnost te se u velikoj meri koristi za aplikacijsko i i sistemsko programiranje.
  • 5. Izračunavanje vrednosnih funkcija 2014 5 Slika 2. Turbo Paskal Borlandov Pascal 1983. pojavljuje se Turbo Pascal firme Borland, prvo integrisano razvojno okruženje (IDE). Turbo Pascal objedinjuje sve funkcije ciklusa razvoja softvera u jedan celovit program (pisanje koda, kompajlovanje, linkovanje, debugovanje), a istovremeni pristup svakoj od funkcija bez potrebe pokretanja zasebnih programa i gašenja predhodno pokrenutih je doprineo još većoj popularizaciji Pascala u softverskoj industriji, jer su programeri do tad morali pokretati zasebno nekoliko različitih programa (editor, kompajler, linker, debugger) da bi dovršili konačan program. IDE Turbo Pascal je masovno korišćen, kako zbog mogućnosti velike uštede vremena pri razvoju softvera, tako i zbog svoje niske cene i licence koja je omogućivala kupovinu samo jedne kopije proizvoda bez obzira na kolikom broju kompjutera će softver biti korišćen. Osim Turbo Pascala, Borland je izporučivao i skuplju verziju IDE-a pod nazivom Borland Pascal koja se od Turbo Pascala neznatno razlikovala po mogućnostima i imala uključen izvorni kod standardnih modula. Od novina koje uvodi Borland u Turbo Pascal značajna je mogućnost deljenja koda na odvojene datoteke, takozvane module.
  • 6. Izračunavanje vrednosnih funkcija 2014 Ako je potrebno izračunati vrednosti nekih funkcija za seriju početnih vrednosti argumenata onda se za to mogu koristiti ciklusi. Koji ciklus će se koristiti zavisi od odnosa između vrednosti argumenata. Ako postoji neko pravilo na osnovu kojeg se argumenti menjaju i to tako da se unapred zna broj vrednosti argumenata možemo koristiti bilo koju vrstu ciklusa. Ako se ne može unapred znati koliko puta će se računati vrednost funkcije onda ćemo koristiti neki od ciklusa sa uslovom. Nekad treba ispisati vrednosti trigonometrijskih funkcija sin i cos na intervalu od ao do bo stepeni sa korakom od co. Zadatak ćemo rešiti primenom ciklusa while. Kao početnu vrednost argumenta funkcije uzećemo broj a, odrediti vrednost funkcije i ispisati je, a zatim povećavati argument dok ne stignemo do broja b. Potrebno je voditi računa o tome da trigonometrijske funkcije rade sa uglovima u radijanima. Zadatak je jednostavno moguće rešiti i korišćenjem ciklusa repeat uz uslov da korisnik upiše da je a<b, a ako nije, pre primene rešenja, treba zameniti vrednosti promenljivih. Rešenje pomoću ciklusa for nije tako jednostavno. 6 Tabeliranje vrednostnih funkcija Slika 3. Ciklus While Slika 4. Ciklus Repeat
  • 7. Izračunavanje vrednosnih funkcija 2014 Ako je potrebno računati sume ili proizvode neke grupe brojeva koji imaju neku funkcionalnu zavisnost, uglavnom mogu se koristiti sve vrste ciklusa, ali se najčešće koristi ciklus for jer je takvo rešenje najjednostavnije (osim u nekim specifičnim slučajevima). Neka treba sabrati sve parne brojeve od a do b. Najjednostavnije rešenje je: 7 Izračunavanje sume i proizvoda Slika 4. Ciklus Repeat Slika 5. Ciklus sa uslovom Naravno, postavljanje početnog broja na paran broj veći ili jednak broju a moglo se izvesti i pomoću jedne If naredbe, ali to je već stvar “ukusa”. Na isti način bi se rešavali i zadaci sa proizvodom brojeva. Ako bi trebalo sabirati ili množiti brojeve koji nisu celi, onda bi trebalo koristiti cikluse sa uslovom jer je rešenje jednostavnije nego sa brojačkim ciklusima (a ponekad i jedino moguće).
  • 8. Izračunavanje vrednosnih funkcija 2014 8 Slika 6. If naredba
  • 9. Izračunavanje vrednosnih funkcija 2014 Problemi tipa: odrediti da li je broj prost, ispisati sve proste delioce broja, ispisati savršene brojeve do n, ispisati Armstrongove brojeve do n i slični, mogu se rešavati bilo kojom vrstom ciklusa, a često se koristi i kombinovanje različitih vrsta, da bi se rešenje pojednostavilo. Prikazaćemo prvi algoritam. Broj je prost ako osim 1 i samog sebe nema drugih delioca, zato ćemo izbrojati takve delioce: bd:=0; // broj delioca različitih od 1 i samog broja je na početku 0 For del:=2 to broj-1 do // počinjemo testiranje od 2 do prvog manjeg broja If broj mod del=0 then bd:=bd+1; // ako je broj deljiv uvećavamo broj delilaca za 1 9 Ispitivanje svojstava celih brojeva Slika 7. Ispitivanje svojstava celih brojeva If bd>0 then // ispisati broj nije prost U algoritmu ima puno nepotrebnih testiranja, pa je neefikasan i ne treba ga koristiti. Bilo koji broj, osim samog sebe, nema delioca koji su veći od njegove polovine. Broj nije prost ako ima bar jednog delioca različitog od 1 i samog sebe, pa nema potrebe tražiti sve takve delioce. Bolji algoritam se prekida čim se pronađe prvi takav delilac: Prvi uslov u ciklusu je jasan. Objasniću drugi. Algoritam je zamišljen da se ciklus prekida čim se naiđe na prvog delioca koji je veći od 1. To znači, ako je broj deljiv sa 2 nema potrebe proveravati da li je deljiv sa svojom polovinom; ako je broj deljiv sa 3 nema potrebe proveravati da li je deljiv svojom trećinom i tako dalje do nekog broja n. Da bismo pronašli koji je to broj
  • 10. Izračunavanje vrednosnih funkcija 2014 formiramo niz parova delilaca koji kao proizvod daju taj broj, odnosno: 2 * broj/2, 3 * broj/3, 4 * broj/4 ... Prvi delilac stalno raste, drugi se stalno smanjuje i prvi je uvek manji od drugog. Jasno je da prvi delilac ne može biti veći od korena tog broja (jer ako je veći mora se pomnožiti sa brojem koji je manji od njega da bi se dobio broj). Znači, poslednji delilac u ovom nizu je koren početnog broja, zato je to poslednji broj za koji proveravamo da li može biti delilac početnog i ako je delilac veći od korena broja znači da nismo našli nijednog delioca, pa je početni broj prost. 10
  • 12. Izračunavanje vrednosnih funkcija 2014 12 Literatura 1. http://sr.wikipedia.org/sr/%D0%9F%D0%B0%D1%81%D0%BA%D0%B0%D0%BB_%28%D0 %BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D1%81%D0%BA%D0%B8_ %D1%98%D0%B5%D0%B7%D0%B8%D0%BA%29 2. “RAČUNARSTVO I INFORMATIKA”, Dušan Tomić, “Zavod za udžbenike” Beograd 3. http://znakoviporedputa.com/religija- i-zivot/523-blez-paskal 4. http://profesorka.wordpress.com/2011/11/02/uvod-u-pascal/ 5. http://www.tehnickaue.edu.rs/srp/cas/?conid=1799