tema:algoritam razgranate strukture na primeru kvadratne jednačine

Post on 06-Jan-2016

38 Views

Category:

Documents

3 Downloads

Preview:

Click to see full reader

DESCRIPTION

Tema:Algoritam razgranate strukture na primeru kvadratne jednačine. Jasmina Milić. - PowerPoint PPT Presentation

TRANSCRIPT

Tema:Algoritam razgranate strukture Tema:Algoritam razgranate strukture na primeru kvadratne jednačinena primeru kvadratne jednačine

Tema:Algoritam razgranate strukture Tema:Algoritam razgranate strukture na primeru kvadratne jednačinena primeru kvadratne jednačine

Jasmina MilićJasmina Milić

Algoritam se definiše kao konačan, uređen niz precizno formulisanih pravila kojima se rešava jedan ili čitava klasa problema.Algoritam proizvoljne složenosti može biti predstavljen kombinacijom tri bazne strukture: linijske, razgranate i ciklične.

• Linijskim se nazivaju algoritmi kod kojih se naredbe (ili instrukcije) izvršavaju jedna za drugom-svaka naredba izvršava se tačno jedanput.

• Razgranatim se nazivaju algoritmi kod kojih se u zavisnosti od vrednosti logičkog uslova izvršavanje nastavlja jednom od dve grane-svaka naredba izvršava se najviše jedanput.

• Cikličnim se nazivaju algoritmi koji sadrže niz instrukcija (telo ciklusa) koje se mogu ponavljati više puta.

• Postupak građenja algoritma razgranate strukture ilustrovaćemo na primeru kvadratne jednačine.

• Formulaciju rešiti kvadratnu jednačinu ax2+bx+c=0

možemo smatrati postavkom problema.• Da bi rešili ovaj problem treba da odgovorimo

na sledeća pitanja: – Koje su veličine poznate (ili ulazne), a koje

su nepoznate (ili izlazne) ?– Koje su moguće veze između poznatih i

nepoznatih veličina?– Šta se izdaje kao rezultat?

Za dati problem na postavljena pitanja mogu se dati sledeći odgovori:– Ulazne veličine su koeficijenti kvadratne

jednačine a, b i c- Veze imeđu poznatih i nepoznatih veličina

uspostavljamo odgovarajućom diskusijom - Izlazne veličine su rešenja kvadratne

jednačine x1, x2 ili odgovarajući komentar

Diskusija se svodi na razmatranje sledeća dva slučaja:

1. a≠0- potpuna kvadratna jednačina

2. a=0 –jednačina nije kvadratna

D>0rešenja su

realna i različita

D=0rešenja su

realna i jednaka

D<0rešenja su

konjugovano-komleksna

a

Dbx

21

a

Dbx

22

a

bxx

221

a

D

a

b

ix

ix

2Im

2Re

ImRe

ImRe

2

1

a≠0, potpuna kvadratna jednačinaračunamo diskriminantu D=b2-4ac i razmatramo slučajeve

b≠0jednačina ima jedinstveno

rešenje

b=0moguća su dva slučaja

1. c=0 - jednačina je neodređena, ima beskonačno mnogo rešenja

2. c≠0 - jednačina je nemoguća, nema rešenja

b

cx

a=0, linearna jednačina bx+c=0

Sada se algoritam može izraziti tekstualnim opisom:

Korak 1. Definisati vrednosti ulaznih veličina: a, b i cKorak 2. Pitati da li je a≠0

DA: 1. Izračunati vrednost diskriminante D=b2-4a*c 2. Pitati da li je D>0

DA: 1. Izračunati x1=(-b+D1/2)/(2*a) 2. Izračunati x2=(-b-D1/2)/(2*a) 3. Definisati rezultate, realna i različita rešenja x1 i x2 NE: 1. Pitati da li je D=0 DA: 1. Izračunati x=-b/(2*a) 2. Definisati dvostruko rešenje x1=x2=x NE: 1. Izračunati Re=-b/(2*a) 2. Izračunati Im=(-D)1/2/(2*a) 3. Definisati konjugovano kompleksna rešenja x1=Re+i*Im i x2=Re-i*Im

NE: 1. Pitati da li je b≠0 DA: 1. Izračunati x=-c/b 2. Definisati x- jedinstveno rešenje linearne jednačine NE: 1. Pitati da li je c=0 DA: 1. Izdati komentar da je jednačina neodređena NE: 1. Izdati komentar da je jednačinna nemoguća

• Ovo je primer algoritma na prirodnom jeziku.• Algoritam opisuje operacije ne nad konkretnim

vrednostima, već nad apstraktnim objektima (njegova formulacija ne zavisi od vrednosti promenljivih a, b i c).

• Samim tim isti algoritam može se primeniti za rešavanje bilo koje kvadratne jednačine.

• Kako je tekstualni opis algoritma kod složenijih problema teško čitljiv, pribegava se preglednijem grafičkom prikazu algoritma.

• Grafički prikaz algoritma se naziva blok šema ili algoritamska šema.

U algoritamskoj šemi se koriste sledeći grafički simboli za pojedine algoritamske korake:

POČETAK

KRAJ

-Definiše početak algoritma

-Definiše ulazne veličine algoritma

-Blok izračunavanja

-Grananje u zavisnosti od nekog uslova

-Definiše izlazne veličine algoritma

-Definiše kraj algoritma

Koristeći ove simbole možemo napraviti grafički opis algoritma za rešavanje kvadratne jednačine.

POČETAK

a, b, c

a≠0

D>0

D=b2-4ac

a

Dbx

21

a

Dbx

22

x1, x2

KRAJ

D=0b≠0

a

bx

2

x

a

b

2Re

a

D

2Im

x1,2 = Re±iIm

c=0b

cx

x ∞ 0

DA

DA

DADA

NE

NE

NE NE

DA

NE

POČETAK

a, b, c

a≠0

D>0

D=b2-4ac

a

Dbx

21

a

Dbx

22

x1, x2

D=0b≠0

a

bx

2

x

a

b

2Re

a

D

2Im

x1,2 = Re±iIm

c=0b

cx

x ∞ 0

DA

DA

DADA

NE

NE

NE NE

DA

NE

KRAJ

a, b, c

a≠0

D>0

D=b2-4ac

a

Dbx

21

a

Dbx

22

x1, x2

D=0b≠0

a

bx

2

x

a

b

2Re

a

D

2Im

x1,2 = Re±iIm

c=0b

cx

x ∞ 0

DA

DA

DADA

NE

NE

NE NE

DA

NE

POČETAK

KRAJ

a, b, c

a≠0

D>0

D=b2-4ac

a

Dbx

21

a

Dbx

22

x1, x2

D=0b≠0

a

bx

2

x

a

b

2Re

a

D

2Im

x1,2 = Re±iIm

c=0b

cx

x ∞ 0

DA

DA

DADA

NE

NE

NE NE

DA

NE

POČETAK

KRAJ

a, b, c

a≠0

D>0

D=b2-4ac

a

Dbx

21

a

Dbx

22

x1, x2

D=0b≠0

a

bx

2

x

a

b

2Re

a

D

2Im

x1,2 = Re±iIm

c=0b

cx

x ∞ 0

DA

DA

DADA

NE

NE

NE NE

DA

NE

POČETAK

KRAJ

a, b, c

a≠0

D>0

D=b2-4ac

a

Dbx

21

a

Dbx

22

x1, x2

D=0b≠0

a

bx

2

x

a

b

2Re

a

D

2Im

x1,2 = Re±iIm

c=0b

cx

x ∞ 0

DA

DA

DADA

NE

NE

NE NE

DA

NE

POČETAK

KRAJ

a, b, c

a≠0

D>0

D=b2-4ac

a

Dbx

21

a

Dbx

22

x1, x2

D=0b≠0

a

bx

2

x

a

b

2Re

a

D

2Im

x1,2 = Re±iIm

c=0b

cx

x ∞ 0

DA

DA

DADA

NE

NE

NE NE

DA

NE

POČETAK

KRAJ

a, b, c

a≠0

D>0

D=b2-4ac

a

Dbx

21

a

Dbx

22

x1, x2

D=0b≠0

a

bx

2

x

a

b

2Re

a

D

2Im

x1,2 = Re±iIm

c=0b

cx

x ∞ 0

DA

DA

DADA

NE

NE

NE NE

DA

NE

POČETAK

KRAJ

a, b, c

a≠0

D>0

D=b2-4ac

a

Dbx

21

a

Dbx

22

x1, x2

D=0b≠0

a

bx

2

x

a

b

2Re

a

D

2Im

x1,2 = Re±iIm

c=0b

cx

x ∞ 0

DA

DA

DADA

NE

NE

NE NE

DA

NE

POČETAK

KRAJ

a, b, c

a≠0

D>0

D=b2-4ac

a

Dbx

21

a

Dbx

22

x1, x2

D=0b≠0

a

bx

2

x

a

b

2Re

a

D

2Im

x1,2 = Re±iIm

c=0b

cx

x ∞ 0

DA

DA

DADA

NE

NE

NE NE

DA

NE

POČETAK

KRAJ

a, b, c

a≠0

D>0

D=b2-4ac

a

Dbx

21

a

Dbx

22

x1, x2

D=0b≠0

a

bx

2

x

a

b

2Re

a

D

2Im

x1,2 = Re±iIm

c=0b

cx

x ∞ 0

DA

DA

DADA

NE

NE

NE NE

DA

NE

POČETAK

KRAJ

Algoritam je dobar ukoliko ispunjava sledeće zahteve:

1. Definisanost-svaka naredba algoritma je jednoznačno definisana, nema proizvoljnih i nejasnih tumačenja

2. Determinisanost-vrednosti koje se dobijaju u bilo kom koraku jednoznačno su određene vrednostima iz prethodnih koraka

3. Izvršivost-svaka naredba je izvršiva; primer neizvršive naredbe bio bi: “Promenljivoj X dodeliti najveći realan broj manji od 1.”

4. Masovnost-algoritam rešava opštu klasu problema, koji se razlikuju samo po ulaznim veličinama. Na primer, umesto kreiranja algoritma koji rešava jednačinu x2-2x+1=0 rešen je opšti slučaj ax2+bx+c=0

5. Rezultativnost-algoritam u konačnom nizu koraka daje tražene rezultate za sve slučajeve za koje je kreiran

Jednostavnom proverom možemo utvrditi da naš algoritam ispunjava sve navedene zahteve. Vežbe radi zapisaćemo algoritme za rešavanje sledećih problema:

1. Odrediti min (max) brojeva a i b.2. Odrediti min (max) brojeva a, b i c.3. Ukoliko je a>b (a<b), zameniti mesta promenljivima a i

b.4. Za date vrednosti x i y izračunati z po formuli:

5. Za dato x izračunati y po formuli:

),(max1

5,0),min(2 yx

yxz

5,2

51,12

10,1

0,5

xx

xx

xx

x

y

Domaći zadatak:• Zapisati algoritam kojim se rešava sistem od dve

linearne jednačine sa dve nepoznate:a1x+b1y=c1

a2x+b2y=c2.

• Ako se od odsečaka sa dužinama x,y i z može konstruisati trougao, izračunati njegovu površinu po formuli:

2

))()((

zyxs

zsysxssp

K R A JK R A J

top related