Prethodna tema :: Sljedeća tema |
Autor/ica |
Poruka |
lucijana Forumaš(ica)

Pridružen/a: 01. 05. 2008. (01:32:09) Postovi: (2F)16
Spol: 
|
|
[Vrh] |
|
goranm Forumaš(ica)


Pridružen/a: 12. 11. 2002. (20:09:12) Postovi: (906)16
Spol: 
|
Postano: 0:47 čet, 12. 6. 2008 Naslov: Re: algoritmi za prijemnii.pomoć!!! |
|
|
[quote="lucijana"]
1)Koju vrijednost će vratiti sljedeći algoritam?
x:=1
i:=1
dok je i<10 činiti
[color=white].......[/color]x:=3x-1
[color=white] .......[/color]i:=i+1
izlaz(x)
(ispod "dok" se nalazi neka crta povučena do "izlaz" :? :oops: )Konačno riješenje je 9842 .[/quote]
Raspiši svaki korak. Crta znači da se izvodi "dok" petlja sve dok je i<10. U nultom koraku, prije ulaza u "dok" petlju je x=1 i i=1. Ulaziš prvi puta u petlju.
Da li je i<10? Je (jer i=1).
x=3*1-1=2
i=1+1=2.
Ovdje se ponovo vraćaš na početak petlje, samo što je ovaj puta x=2 i i=2.
Da li je i<10? Je, i=2.
x=3*2-1=5
i=2+1=3.
Da li je i<10? Je, i=3
x=3*5-1=14
i=3+1=4.
Da li je i<10? Je, i=4
x=3*14-1=41
i=4+1=5.
Da li je i<10? Je, i=5.
x=3*41-1=122
i=5+1=6.
Da li je i<10? Je, i=6.
x=3*122-1=365
i=6+1=7.
Da li je i<10? Je, i=7.
x=3*365-1=1094
i=7+1=8.
Da li je i<10? Je, i=8.
x=3*1094-1= 3281
i=8+1=9.
Da li je i<10? Je, i=9.
x=3*3281-1=9842
i=9+1=10.
Da li je i<10? Nije jer i=10, a 10 nije manje od 10. Tu izlazimo iz petlje. Iduće na što dolazimo je izlaz(x), to je 9842.
Drugi zadatak je jako sličan, samo trebaš pažljivo svaki korak ispisati pa probaj to sama rješiti. :)
lucijana (napisa): |
1)Koju vrijednost će vratiti sljedeći algoritam?
x:=1
i:=1
dok je i<10 činiti
.......x:=3x-1
.......i:=i+1
izlaz(x)
(ispod "dok" se nalazi neka crta povučena do "izlaz" )Konačno riješenje je 9842 . |
Raspiši svaki korak. Crta znači da se izvodi "dok" petlja sve dok je i<10. U nultom koraku, prije ulaza u "dok" petlju je x=1 i i=1. Ulaziš prvi puta u petlju.
Da li je i<10? Je (jer i=1).
x=3*1-1=2
i=1+1=2.
Ovdje se ponovo vraćaš na početak petlje, samo što je ovaj puta x=2 i i=2.
Da li je i<10? Je, i=2.
x=3*2-1=5
i=2+1=3.
Da li je i<10? Je, i=3
x=3*5-1=14
i=3+1=4.
Da li je i<10? Je, i=4
x=3*14-1=41
i=4+1=5.
Da li je i<10? Je, i=5.
x=3*41-1=122
i=5+1=6.
Da li je i<10? Je, i=6.
x=3*122-1=365
i=6+1=7.
Da li je i<10? Je, i=7.
x=3*365-1=1094
i=7+1=8.
Da li je i<10? Je, i=8.
x=3*1094-1= 3281
i=8+1=9.
Da li je i<10? Je, i=9.
x=3*3281-1=9842
i=9+1=10.
Da li je i<10? Nije jer i=10, a 10 nije manje od 10. Tu izlazimo iz petlje. Iduće na što dolazimo je izlaz(x), to je 9842.
Drugi zadatak je jako sličan, samo trebaš pažljivo svaki korak ispisati pa probaj to sama rješiti.
_________________ The Dude Abides
|
|
[Vrh] |
|
lucijana Forumaš(ica)

Pridružen/a: 01. 05. 2008. (01:32:09) Postovi: (2F)16
Spol: 
|
|
[Vrh] |
|
inga Forumaš(ica)

Pridružen/a: 12. 06. 2008. (12:53:49) Postovi: (27)16
|
|
[Vrh] |
|
goranm Forumaš(ica)


Pridružen/a: 12. 11. 2002. (20:09:12) Postovi: (906)16
Spol: 
|
Postano: 18:13 čet, 12. 6. 2008 Naslov: |
|
|
[quote="lucijana"]a kakva je razlika u ovome [b]vratiti[/b] algoritam i koju će vrijednost [b]ispisati[/b] slijedeći algoritam...ili je to svejedno?[/quote]
Da, u ovakvim zadacima je svejedno.
Ako baš želimo komplicirati, u raznim programskim jezicima te dvije stvari nisu iste. Pod "ispis" se obično misli na ispis na ekran računala, dok se pod "vraćanje" može misliti na npr. zapisivanje neke vrijednosti u memoriju računala.
[size=9][color=#999999]Added after 12 minutes:[/color][/size]
[quote="inga"]
zadatak glasi:
koji će broj ispisati slijedeći algoritam za x=26?
ulaz(x);
y:=0;
dok je x≠1 činiti
[color=white]......[/color]y:=y+x;
[color=white]......[/color]ako je x mod 2=0
[color=white].............[/color]x:=x/2;
[color=white]......[/color]inače
[color=white]..........[/color]x:=3x+1;
izlaz(y)
RIJEŠENJE 144!!!
[/quote]
Kao i u prethodnom zadatku, raspiši svaki korak. U nultom koraku je x=26, y=0.
Ulaziš u "dok" petlju i ponavljaš razne operacije u petlji dok x ne bude jednak 1.
Znači ulaziš u petlju sa parametrima y=0, x=26.
y=0+26=26
Sada se pitaš da li je x mod 2 =0, to jest, da li je ostatak pri dijeljenju x-a sa 2 jednak 0 ili puno jednostavnije rečeno, da li je x paran broj.
Dakle, imamo
ako je 26 mod 2 = 0, a je onda x=26/2=13.
ovaj korak "inače" se preskače ovaj put, on se aktivira tek kada je x neparan.
Vraćaš se na početak petlje sa parametrima y=26, x=13 i pitaš se da li je x različit od 1, a je jer x=13.
y=26+13=39
ako je 13 mod 2 = 0 nije!
inače x=3*13+1=40
vraćaš se na početak petlje sa parametrima y=39, x=40 i tako dalje sve dok se ne desi jednom x=1. Kada se to desi, y bi trebao biti jednak 144
[quote]
PITANJE:primjetila sam da postoje zadaci u kojim piše npr: za j:=1 do i činiti....
hm...kako da idem do i?
može neko navest primjer...?
pozdrav,hvala!!![/quote]
Recimo u 2. zadatku u 1. postu:
x:=0;
za i:=1 do 10 činiti
.....y:=0;
.....za j:=1 do i činiti
...........y:=y+i;
.....x:=x+y;
izlaz (x)
x=0.
Ulazimo u "za" petlju. Ona vrti parametar i od 1 do 10. U prvom koraku i=1.
y=0
Ulazimo u još jednu "za" petlju, ovaj put ona vrti parametar j od 1 do i. Kod nas je za sada i=1 pa vrtimo tu drugu "za" petlju od 1 do 1, to jest samo jednom prolazimo kroz nju.
y=y+i=0+1=1
(sada mi nije baš jasno što sve ta druga "za" petlja obuhvaća, da li samo y:=y+i ili još x=x+y, no nema veze)
Sada je druga "za" petlja gotova i vraćamo se na prvu. Sa i=1 smo gotovi, sada je i=2. y ponovo postaje 0. Ponovo ulazimo u drugu "za" petlju, ovaj put ona vrti parametar j od 1 do 2, znači 2 puta prolazimo kroz tu petlju. :)
lucijana (napisa): | a kakva je razlika u ovome vratiti algoritam i koju će vrijednost ispisati slijedeći algoritam...ili je to svejedno? |
Da, u ovakvim zadacima je svejedno.
Ako baš želimo komplicirati, u raznim programskim jezicima te dvije stvari nisu iste. Pod "ispis" se obično misli na ispis na ekran računala, dok se pod "vraćanje" može misliti na npr. zapisivanje neke vrijednosti u memoriju računala.
Added after 12 minutes:
inga (napisa): |
zadatak glasi:
koji će broj ispisati slijedeći algoritam za x=26?
ulaz(x);
y:=0;
dok je x≠1 činiti
......y:=y+x;
......ako je x mod 2=0
.............x:=x/2;
......inače
..........x:=3x+1;
izlaz(y)
RIJEŠENJE 144!!!
|
Kao i u prethodnom zadatku, raspiši svaki korak. U nultom koraku je x=26, y=0.
Ulaziš u "dok" petlju i ponavljaš razne operacije u petlji dok x ne bude jednak 1.
Znači ulaziš u petlju sa parametrima y=0, x=26.
y=0+26=26
Sada se pitaš da li je x mod 2 =0, to jest, da li je ostatak pri dijeljenju x-a sa 2 jednak 0 ili puno jednostavnije rečeno, da li je x paran broj.
Dakle, imamo
ako je 26 mod 2 = 0, a je onda x=26/2=13.
ovaj korak "inače" se preskače ovaj put, on se aktivira tek kada je x neparan.
Vraćaš se na početak petlje sa parametrima y=26, x=13 i pitaš se da li je x različit od 1, a je jer x=13.
y=26+13=39
ako je 13 mod 2 = 0 nije!
inače x=3*13+1=40
vraćaš se na početak petlje sa parametrima y=39, x=40 i tako dalje sve dok se ne desi jednom x=1. Kada se to desi, y bi trebao biti jednak 144
Citat: |
PITANJE:primjetila sam da postoje zadaci u kojim piše npr: za j:=1 do i činiti....
hm...kako da idem do i?
može neko navest primjer...?
pozdrav,hvala!!! |
Recimo u 2. zadatku u 1. postu:
x:=0;
za i:=1 do 10 činiti
.....y:=0;
.....za j:=1 do i činiti
...........y:=y+i;
.....x:=x+y;
izlaz (x)
x=0.
Ulazimo u "za" petlju. Ona vrti parametar i od 1 do 10. U prvom koraku i=1.
y=0
Ulazimo u još jednu "za" petlju, ovaj put ona vrti parametar j od 1 do i. Kod nas je za sada i=1 pa vrtimo tu drugu "za" petlju od 1 do 1, to jest samo jednom prolazimo kroz nju.
y=y+i=0+1=1
(sada mi nije baš jasno što sve ta druga "za" petlja obuhvaća, da li samo y:=y+i ili još x=x+y, no nema veze)
Sada je druga "za" petlja gotova i vraćamo se na prvu. Sa i=1 smo gotovi, sada je i=2. y ponovo postaje 0. Ponovo ulazimo u drugu "za" petlju, ovaj put ona vrti parametar j od 1 do 2, znači 2 puta prolazimo kroz tu petlju.
_________________ The Dude Abides
|
|
[Vrh] |
|
inga Forumaš(ica)

Pridružen/a: 12. 06. 2008. (12:53:49) Postovi: (27)16
|
|
[Vrh] |
|
|