39
Tema 1: INFORMATIKA 2. razred Tema 1: Obrada informacija korištenjem računara. Algoritmi i algoritamsko rješavanje problema (8 časova)

INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Tema 1:

INFORMATIKA2. razred

Tema 1:Obrada informacija korištenjem računara.

Algoritmi i algoritamsko rješavanje problema(8 časova)

Page 2: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Šta je program?� Računarski program je skup naredbi koje govore

računaru na koji način da obavi određeni zadatak� Program je niz naredbi napisanih određenim

redoslijedom, tako da kao cjelina izvršavaju neki zadatak pretvaranjem ulaznih podataka u izlazne rezultate.

� Tekst programa čitljiv programeru i korisniku je � Tekst programa čitljiv programeru i korisniku je izvorni kôd programa

� Izvršni program je binarna izvornog kôda programa razumljiva računaru

� Programski jezik je skup leksičkih, sintaksnih i semantičkih pravila koja uobličuju strogu strukturu pisanja izvornog kôda

Page 3: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Programski jezici� Podjela programskih jezika prema namjeni:

� Programski jezici za numeričke probleme� Programski jezici za poslovne probleme� Programski jezici temeljeni na listama i nizovima� Višenamjenski programski jezici� Višenamjenski programski jezici

Page 4: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Programski jezici� Podjela programskih jezika po načinu izvođenja:

� Imperativnizasnovani na pridruživanju vrijednosti i njihovim ispitivanjem (Ada, C, Fortran, Pascal)

� Funkcionalnizasnovani na funkcijama i listama (Lisp, ML, LOGO)zasnovani na funkcijama i listama (Lisp, ML, LOGO)

� Ciljno orjentisanizasnovani na upitima (SQL, Prolog)

� Objekto orjentisanizasnovani na manipulaciji objektima (Visual Basic)

� Hibridni jezicikoriste više različitih principa (C++)

Page 5: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Programski jezici� Po strukturi

� Struktuirani� Nestruktuirani

� Po proceduralnosti� Proceduralni� Proceduralni� Neproceduralni

Page 6: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Generacije programskih jezika1. Mašinski jezik2. Simbolički jezici: Asembleri3. Proceduralni jezici: C, Pascal4. Objekto orjentisani jezici: Delphi, Java, C++, VB

Usko specijalizovani jezici: RAD5. Usko specijalizovani jezici: RAD

Page 7: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Faze razvoja programa� Analiza problema� Postavljanje modela� Izrada algoritma� Izrada dijagrama toka

Kodiranje programa� Kodiranje programa� Prevođenje programa� Testiranje programa� Dokumentovanje programa� Ekspoatacija i održavanje programa

Page 8: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Algoritam� Muhammed ibn Musa al Khowarizmi

852. god. napisao Kitab al jabr w’al-muqubala� al jabr => algebra� al Khowarizmi => algoritmi

� Algoritam je niz preciznih uputstava koja nas korak po korak vode do rješenja nekog problemakorak po korak vode do rješenja nekog problema

� Algoritam je precizan, uređen i nedvosmislen niz koraka, koji jasno i određeno, u konačnom vremenu, vode ka rješenju nekog problema (ukoliko ono postoji) ili nam daju odgovor da problem nema rješenje.

Page 9: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Dijagram toka� Dijagram toka je grafički prikaz algoritma nizom

grafičkih simbola povezanih usmjerenim linijama.� Sredstvo za vizualnu prezentaciju toka podataka,

operacija koje se izvode i redoslijeda izvođenja operacija.operacija.

Page 10: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Dijagram toka� Standardni simboli za crtanje dijagrama toka:

Početak i Kraj algoritma

Ulaz podataka

Obrada

Izlaz podataka

Obrada

Odluka

Poveznica

Usmjerene linije

Page 11: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Dijagram toka� Pravila za crtanje dijagrama toka:

� Pregledan i jednostavan za pratiti� Jednoznačan� Smjer toka s lijeva na desno i odozgo prema dole� Postoji samo jedan početak i samo jedan kraj� Postoji samo jedan početak i samo jedan kraj� Obrada ima samo jedan ulaz i jedan izlaz� Odluka ima jedan ulaz i više izlaza

Page 12: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Osnovne algoritamske srukture� Linijska struktura

� postoji samo jedna grana izvršavanja algoritma� svaki korak izvršava se samo jednom

� Razgranata struktura� postoji korak odlučivanja� postoji dvije ili više grana

� Ciklične strukture� višestruko izvršavanje jednog ili više koraka

� Struktura sa podalgoritmom� pojedini dijelovi algorima se strukturiraju u

odvojene blokove

Page 13: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Linijska algoritamska struktura� Napisati algoritam za računanje brzine: v=s/t

Početak

s, t

v = s / t

v

Kraj

Page 14: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Linijska algoritamska struktura� Zadaci:

� Nacrtati dijagram toka za izračunavanje površine pravougaonika

� Nacrtati dijagram toka za izračunavanje obima pravougaonikapravougaonika

� Spojiti ova dva algoritma u jedan

Page 15: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Razgranata algoritamska struktura� Šta će se desiti ako je t = 0 u primjeru računanja

brzine po formuli v = s / t ?� Ispitivanje vrijednosti vrši se pomoću simbola:

t = 0DANE

Page 16: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Razgranata algoritamska strukturaPočetak

s, t

DANE

v = s / t

v

t = 0

greška

Kraj

DANE

Page 17: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Razgranata algoritamska struktura� Zadaci:

� Dijagram toka za izračunavanje površine i obima pravougaonika proširiti tako da nam saopšti da li se radi o pravougaoniku ili kvadratu.

� Nacrtati diagram toka koji za broj a određuje da li je � Nacrtati diagram toka koji za broj a određuje da li je paran ili neparan.

� Nacrtati diagram toka koji za dva broja a i bodređuje koji je veći.

� Proširiti dijagram toka iz prethodnog zadatka tako da prepozna ako su brojevi jednaki.

Page 18: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Razgranata algoritamska strukturaPočetak

a, b

a > ba < b

Broj a je manji od broja b

a, b

Broj a je veći od broja b

Kraj

a > ba < b

a = b

Broj a je jednak broju b

Page 19: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Ciklične algoritamske strukture� Ispisati 100 puta “neću pričati na času”

Početak

neću pričati na časuBrutal force

Kraj

neću pričati na času

neću pričati na času

itd

Page 20: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Ciklične algoritamske strukturePočetak

DA

i = 1 Dok je ispunjen uslov ponavljaj

i = 100

Kraj

DA

neću pričati na času

i = i + 1

NE

Page 21: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Ciklične algoritamske strukturePočetak

i = 1Ponavljaj do se ne ispuni uslov

i = 100

Kraj

DA

neću pričati na času

i = i + 1

NE

Page 22: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Ciklične algoritamske strukture

Početak

za i od 1 do 100Ponovi određeni broj puta

Kraj

neću pričati na času

Page 23: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Ciklične algoritamske strukture� Dio algoritma koji se ponavlja sve dok je neki

uslov zadovoljen ili dok ne postane zadovoljen, naziva se petlja

� Vrste petlji:� While-Repeat

Dok je zadovoljen uslov ponavljaju se operacije� Dok je zadovoljen uslov ponavljaju se operacije� Uslov se ispituje na početku bloka operacija

� Repeat-Until� Operacije se ponavljaju dok se ne zadovolji uslov� Uslov se ispituje na kraju bloka operacija

� For� Operacije se ponavljaju određeni broj puta� Uslov se ispituje na početku bloka operacija

Page 24: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Ciklične algoritamske strukture� Zadatak: Sabrati brojeve od 1 do 100

Početak

zbir = 0

Kraj

za i od 1 do 100

zbir = zbir + i

zbir

Page 25: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Ciklične algoritamske strukture� Zadatak: Izračunati prosjek ocjena za 15

predmetaPočetak

zbir = 0

Kraj

za i od 1 do 15

zbir = zbir + ocjena prosjek

ocjena prosjek = zbir / 15

Page 26: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Ciklične algoritamske strukture� Zadatak: Proširiti algoritam za računanje prosjeka

ocjena za bilo koji unaprijed dati broj predmeta

Početak

br_ocj

Kraj

za i od 1 do br_ocj

zbir = zbir + ocjena

zbir = 0

prosjekocjena

prosjek = zbir / br_ocj

br_ocj

Page 27: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Ciklične algoritamske strukture� Zadatak: Po uzoru na prosjek ocjena za jednog

učenika napraviti dijagram toka za izračunavanje prosječne ocjene razreda.

Page 28: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Ciklične algoritamske strukturePočetak

za i od 1 do br_ocjzbir_odj = 0

ocjena

pros_odj = zbir_odj / br_uc

br_ucbr_ocj

za j od 1 do br_uc

zbir = 0

Kraj

zbir = zbir + ocjena pros_odj

ocjena

zbir_odj = zbir_odj + pros_uc

pros_uc = zbir / br_ocj

Page 29: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Ciklične algoritamske strukture� Ispisati sve parne brojeve između broja m i n, te

izračunati njihov zbir. Voditi računa da m mora biti manje od n.

Page 30: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Algoritmi - vježbe� Za redni broj mjeseca ispisati koliko ima dana.� Napraviti jednostavni kalkulator (ulaz su brojevi a

i b, te operacija +, -, *, /).� Za neki datum odrediti redni broj dana u godini.� Izračunati faktoriel prirodnog broja n.� Izračunati faktoriel prirodnog broja n.� Ispisati faktore prirodnog broja n.� Izračunati n-ti stepen broja a.

Page 31: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Algoritmi – zadaci za ocjenu� Provjeriti dali je učitani broj n savršen broj

(jednak je zbroju svojih djelitelja)npr. 6=1+2+3 ili 28=1+2+4+7+14).

� Naći n-ti član Fibonaccijevog niza.Fibonaccijev niz je niz u kojemu je svaki sljedeći član zbroj prethodnih dvaju članova (1, 1, 2, 3, 5, član zbroj prethodnih dvaju članova (1, 1, 2, 3, 5, 8, 13, …). Prvi i drugi član niza jednaki su 1.

� Učitati n brojeva i ispisati najmanji i najveći učitani broj

� Odrediti da li je trougao pravougli, jednakostranični, jednakokraki ili raznostranični

Page 32: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Algoritmi – zadaci za ocjenu� Sastaviti dijagram toka za rješavanje jednačine

� (a+2) ⋅ x – b = c� (a-2) ⋅ x + b = c� a ⋅ x + b = 0� a ⋅ x + 5 = b� a ⋅ x + 5 = b

Page 33: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Algoritmi – zadaci za ocjenu� Sastaviti dijagram toka koji ispituje da li su tri

unesena broja stranice pravouglog trougla� Sastaviti dijagram toka za ispis uspjeha na

osnovu unesene ocjene� Sastaviti dijagram toka koji na ekranu ispisuje � Sastaviti dijagram toka koji na ekranu ispisuje

apsolutnu vrijednost unesenog broja� Provjeriti da li je od dva upisana broja prvi djeljiv

sa drugim

Page 34: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Algoritmi – zadaci za ocjenu� Sastaviti dijagram toka koji ispituje koji je od 10

unesenih brojeva najveći� Sastaviti dijagram toka koji ispituje koji je od 10

unesenih brojeva najmanji

Page 35: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Algoritmi – zadaci za ocjenu� Sastaviti dijagram toka koji na osnovu tjelesne

mase i visine računa BMI=TM/V2 i saopštava stepen gojaznosti:� BMI <18,5 pothranjenost� BMI 18,5-24,9 normalno� BMI 18,5-24,9 normalno� BMI 25-29,9 prekomjerna tjelesna masa� BMI 30-34,9 umjerena gojaznost� BMI 35-39,9 teška gojaznost� BMI >40 ekstremna gojaznost

Page 36: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Algoritmi – zadaci za ocjenu� Izračunati proizvod prirodnih brojeva u intervalu

od k do n.� Izračunati sumu parnih prirodnih brojeva u

intervalu od K do N.� Izračunati aritmetičku sredinu prirodnih brojeva � Izračunati aritmetičku sredinu prirodnih brojeva

od k do n

Page 37: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Algoritmi – zadaci za ocjenu� Sabrati i pomnožiti brojeve od A do B djeljive sa

L. Prebrojati koliko ih ima.� Naći zbir brojeva u intervalu od A do B djeljivih

sa 5 i koliko ih ima� Naći aritmetičku sredinu brojeva od A do B � Naći aritmetičku sredinu brojeva od A do B

djeljivih sa L. Prebrojati koliko ih ima�

Page 38: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Algoritmi – zadaci za ocjenu� Izračunati sumu faktorijela prvih n prirodnih

brojeva (S = 1! + 2! + 3! + … + N!)

Page 39: INFORMATIKA 2. razredProvjeriti dali je učitani broj n savršen broj (jednak je zbroju svojih djelitelja) npr. 6=1+2+3 ili 28=1+2+4+7+14). Naći n-ti član Fibonaccijevog niza. Fibonaccijev

Test1. Naći aritmetičku sredinu brojeva između A i B

djejivih sa C2. Ispitati da li je trougao pravougli,

jednakostranični, jednakokraki ili raznostranični3. Ispitati da li tri unesena broja čine trougao3. Ispitati da li tri unesena broja čine trougao4. Ispitati da li je broj A djeljiv brojem B5. Ispisati apsolutnu vrijednost unesenog broja6. Naći aritmetičku sredinu n unesenih brojeva7. Naći rješenje jednačine ax+b=c