Zadaci sa naredbom for

     

 

Sljedeće zadatke riješite u FreePascalu. Rješenja zadataka prokomentirajte uporabom alata za diskusiju pod temom "Petlje".

Zadatak 1:

Odredi sve trojke brojeva a, b, c iz intervala od 1 do 50 za koje vrijedi a2 + b2 = c2 . Koliko ih ima?

Napomena:

Obzirom da svaki od brojeva a, b i c može biti bilo koji broj od 1 do 50 za svaki trebamo po jednu petlju:

Broj a može biti koji broj iz intervala od 1 do 50.

Za svaki a, b može biti bilo koji broj iz intervala od 1 do 50.

Za svaku kombinaciju a i b, c može biti bilo koji broj iz intervala od 1 do 50. Dakle imat ćemo:

for a:=1 to 50 do
         for b:=1 to 50 do
              for c:=1 to 50 do

Procedura inc(i) povećava i za 1 i znači isto što i i:=i+1;

Zadatak 2:

Ispiši tablicu množenja od 1 do 10

Zadatak 3:

Dva učitana broja podijelite na učitani broj decimala.

Pogledajmo što se događa za a=15 i b= 4, d=3

i

a

b

d

Ispis

 

15

4

3

15 : 4 = 3.

ulazimo u petlju

1

a=(15 mod 4)*10=30

4

3

30 div 4 à 7

2

a=(30 mod 4)*10=20

4

3

20 div 4 à 5

3

a=(20 mod 4)*10 =0

4

3

0 mod 4 à 0

Ispisat će se 15 : 4 = 3.750.

Ovaj algoritam je zapravo algoritam po kojem dijelimo dva broja:

Zadatak 4:

Napišite program koji će ispisati koliko je od n učitanih brojeva neparno.

Napomena: Parni i neparni mogu biti samo prirodni brojevi dakle veći od 0!

Zadatak 5:

Pronađi najveći od n učitanih brojeva.

Napomena:

Obzirom da algoritam za pronalazak najvećeg od n brojeva zahtijeva da na početku jedan broj proglasimo za najveći prvi broj moramo unijeti izvan petlje. Ostala učitavanja i uspoređivanja obavljaju se unutar petlje. Ovakav zadatak bit će jednostavnije riješiti uvjetnom petljom s provjerom uvjeta na kraju.

Osim petlji s unaprijed poznatim brojem ponavljanja postoje i uvjetne petlje kod kojih broj ponavljanja ovisi o nekom uvjetu koji se kroz petlju mijenja. Sljedeća lekcija objasnit će jednu od uvjetnih petlji.