Agindu errepikakorretan programaren fluxuak atzera egiten du ondoko irudian ikus daitekeen bezala, bertan baldintzazko agindu baten fluxua eta agindu errepikakor baten fluxua alderatzen dira:
Agindu errepikakorren helburua sententzia bat (edo sententzia multzo bat) errepikatu ahal izatea da. Hortaz, agindu errepikakor batean hiru ezaugarri ezagutuko dira:
- Eskuineko irudiak adierazten duen sententzia errepikakorrean begizta bat dagoela (begiztaren bukaeran aurrerantz linealki egin beharrean, atzerantz egiten du).
- Errepikatu beharreko sententzia (edo sententzia multzoa) bigarren ezaugarria litzateke. Horri iterazioaren sententzia esaten zaio.
- Azkenik, begiztatik noiz irten behar den zehazten duen baldintza aldez aurretik definiturik egongo da. Baldintza horrek, uneoro, aditzera ematen du programak beste iterazio bat burutu behar duen, ala bestela begiztatik irtetea dagokion.
Adibide bat egin dezagun, iMuga zenbakia teklatuaren bitartez irakurri eta iBatukaria lortuko dugu, non iBatukaria hau den:
iBatukaria = 1 + 2 + 3 + 4 + ... + iMuga
Aurreko programari dagozkion aldaketak egin ondoko hauek lortzeko:
Faktoriala den liBiderkaria kalkulatu | liBiderkaria = 1 *2 *3 * ... *(iMuga-1) *iMuga |
Batukaria alderantziz kalkulatu | iBatukaria = iMuga +(iMuga-1) +(iMuga-2) + ... +3 +2 +1 |
Zenbaki negatiboekin lan eginez hau kalkulatu | iBatukaria = -1 -2 -3 - ... -(iMuga-1) -iMuga |
Zenbaki negatibo eta positiboekin hau kalkulatu | iBatukaria = -1 +2 -3 + ... ∓iMuga |
Bi zenbaki ezagunen arteko batukaria kalkulatu | iBatukaria = iBeheMuga +(iBeheMuga+1) +(iBeheMuga+2) + ... +(iGoiMuga-2) +(iGoiMuga-1) +iGoiMuga |
iMuga bakoitia izanik, bakoitien batukaria lortu | iBatukaria = 1 +3 +5 + ... +(iMuga-2) +iMuga |
iruzkinik ez:
Argitaratu iruzkina