PETLJE FOR..NEXT

Download Report

Transcript PETLJE FOR..NEXT

4/13/2015
Dušanka Tomić
1
FOR...NEXT
 U teoriji je poznato više različitih oblika petlji ili cikličkih
algoritamskih struktura.U programskim jezicima obično se
implementiraju petlja sa fiksnim brojem izvršavanja, petlja sa izlazom
na vrhu i petlja sa izlazom na dnu.
 Brojačka petlja u dijagramima toka predstavlja se na sledeći način:
brojač=poč,kraj, korak
Blok
naredbi
4/13/2015
Dušanka Tomić
2
 Brojačka petlja omogućava da se blok naredbi izvrši(ponovi) tačno
određeni broj puta.Kontrolna promjenljiva brojač definiše koliko će se
puta blok izvršiti. Na početku se brojaču dodijeli početna vrijednost
poc. To može biti neka konstanta ili izraz čija vrijednost treba da se
izračuna. Nakon toga se računaju izraz kraj, koji određuje krajnju
vrijednost koju brojač treba da dostigne, te izraz korak , koji određuje s
kojim korakom će se mijenjati briojač od početne do krajnje vrijednosti.
Korak može biti pozitivan, odnosno negativan. Ako se korak ne navede,
podrazumijeva se da je jedinični, tj. Da se brojač nakon svakog ciklusa
uvećava za 1.
 Brojačka petlja realizuje se naredbom FOR...NEXT. Opšti oblik ove
naredbe je:
FOR i = početak TO kraj [STEP korak]
Blok naredbi
NEXT i
 FOR-službena riječ “za”
 STEP-službena riječ “korak”
4/13/2015
Dušanka Tomić
i-brojna promjenljiva
NEXT-službena riječ “korak”
3
Beskonačni programski ciklusi
 Prilikom rjršavanja zadataka sa programskim
ciklusima često dolazi do grešaka, pa se dođe u
situaciju da se neki dio programa izvršava beskonačno
mnogo puta.
 Naredba koja obezbjeđuje prelazak na bilo koji dio
programa naziva se naredba bezuslovnog prelaska i
ima oblik GOTO (broj reda).
 GOTO-službena riječ i znači “idi na”.
 Ovu naredbu ne treba često koristiti.
4/13/2015
Dušanka Tomić
4
1.Treba ispisati prvih n prirodnih brojeva.Dakle, treba ispisati
brojeve 1,2,3,4,..,sve do zadatog broja n.
│REM:ispis prvih n prirodnih brojeva
│CLS
│10 INPUT "n= ", n% (broj 10 stavljamo jer ćemo koristiti GOTO pa da odredimo gdje se vraća petlja)
│
IF n% < 1 THEN GOTO 10
│
FOR a = 1 TO n%
│
PRINT a;
│
NEXT a
│
PRINT
│
END
4/13/2015
Dušanka Tomić
5
2. TREBA ISPISATI SVE DVOCIFRENE PARNE
BROJEVE.(Dakle, treba ispisati brojeve 10, 12,...,98.)
│REM :ISPIS SVIH DVOCIFRENIH PARNIH BROJEVA
│CLS
│FOR a = 10 TO 98 STEP 2
│PRINT a
│NEXT a
│END
4/13/2015
Dušanka Tomić
6
3.Treba napisati program koji sabira n prirodnih brojeva.Dakle
treba napisati program koji učitava n brojeva sa tastature i ispisuje
njihov zbir.
│REM:sabiranje n brojeva
│CLS
│10 INPUT “Unesi koliko brojeva treba sabrati ", n
│ IF n < 1 THEN GOTO 10
│ s = 0 (stavljamo je suma na početku jednaka nuli)
│ FOR i = 1 TO n
│ INPUT broj
│ s = s + broj
│ NEXT i
│ PRINT "Suma je ", s
│ END
Dušanka Tomić
7
4.Treba napisati program koji izračunava proizvod
prirodnih brojeva u intervalu od k do n
│REM :proizvod prirodnih brojeva u intervalu od k do n
│CLS
│P = 1
│i = k%
│i = i + 1
│10 INPUT "OD ", k%
│INPUT "do ", n%
│IF i < 1 THEN GOTO 10
│FOR i = k% TO n%
│P = P * i
│NEXT i
│PRINT "Proizvod brojeva od broja "; k%; "do broja"; n%; "je", P
│END
4/13/2015
Dušanka Tomić
8
5. Napisati program koji izračunava sume parnih prirodnih brojeva u
intervalu od k do n.
│REM:suma parnih prirodnih brojeva
│CLS
│10 INPUT "Unesi donju granicu ", k
│ INPUT "unesi gornju granicu ", n
if k<0 then GOTO 10
│s = 0
│FOR i = k TO n
│IF i MOD 2 = 0 THEN s = s + i
│NEXT i
│PRINT "suma je ", s
│END
4/13/2015
Dušanka Tomić
9