2024(e)ko otsailaren 17(a), larunbata

10. Ariketa: errepikapen kopuru ezezaguna (II)

ZER DAKIDAN:
FOR-TO-DO kontrol-egitura errepikakorra erabiltzeko gai naiz.



ZER IKASIKO DUDAN:
WHILE-DO kontrol-egitura errepikakorra ikasiko dut, eta REPEAT-UNTIL kontrol-egitura errepikakorra birpasatuko dut. Bide batez, zenbaki errealekin = konparatzailea ez dela erabili behar ikasiko dut ere.




ESKATZEN DEN PROGRAMA (I)

Zenbaki osoekin lan eginez, berdintzaren = ikurra kopuru osoekin. Lehen koadranteko zati bat definituko dugu, adibidean 4x4 espazio bat mugatu da. Ondoren, programak P puntu baten iPx eta iPy koordenatuak ausaz aukeratuko ditu 4x4 espazio horren barruan. Programaren erabiltzaileak P puntuaren koordenatuak asmatu beharko ditu. Horretarako, teklatuaren bitartez iQx eta iQy koordenatuak irakurriko ditu eta konparaketa egin ondoren emaitza pantailaratuko da.


Hona hemen programaren balizko bi irteera, irteera batean P puntuaren koordenatuak asmatzea lortu da eta bestean ez:


Zenbakiak ausaz lortzeko, berreskuratu 7. Ariketa: zenbakien funtzio estandarrak izeneko artikulua eta bertako (I) eta (II) programak gogoratu.




ESKATZEN DEN PROGRAMA (II)

Zenbaki errealekin lan eginez, berdintzaren = ikurra zenbaki errealekin. Lehen koadranteko zati bat definituko dugu, adibidean (0.0, 0.0) eta (4.0, 4.0) puntuen arteko espazio karratua mugatu da. Ondoren, programak P puntu baten rPx eta rPy koordenatuak ausaz aukeratuko ditu espazio horren barruan. Programaren erabiltzaileak P puntuaren koordenatuak asmatu beharko ditu. Horretarako, teklatuaren bitartez rQx eta rQy koordenatuak irakurriko ditu eta konparaketa egin ondoren emaitza pantailaratuko da.


Hona hemen programa desegokiaren balizko irteera bat, ikusten denez P eta Q puntuen koordenatuak konparatzerakoan = eragilea aplikatzen da eta hori ez dago ondo:


Eta hona hemen programa zuzenaren balizko irteera bat, ikusten denez P eta Q puntuen koordenatuak konparatzerakoan prezisio edo doitasun bat aukeratu da eta = eragilea aplikatu beharrean < eragilea aplikatzen da:






ESKATZEN DEN PROGRAMA (III)

Zenbaki osoekin lan eginez, berdintzaren = ikurra kopuru osoekin. Goiko I programan bezala, baina kasu honetan programaren erabiltzaileak 3 saiakera edukiko ditu gehienez. Lehen saiakeran asmatzen ez badu, ez zaio emango inolako informaziorik P puntuari buruz baina bigarren saiakera bat onartuko zaio. Bigarren saiakeran asmatzen ez badu, ez zaio emango inolako informaziorik P puntuari buruz baina hirugarren eta azken saiakera bat onartuko zaio.


Hona hemen programaren balizko irteera bat, repeat-until nagusiak saiakerak kontrolatzen ditu eta bere barneko repeat-until egiturek koordenatuen balioztapena zaintzen dute. Adibide honetan, hiru saiakera agortu ondoren ez dira P puntuaren koordenatuak asmatu:






ESKATZEN DEN PROGRAMA (IV)

Zenbaki errealekin lan eginez, berdintzaren = ikurra zenbaki errealekin. Goiko II programan bezala, baina kasu honetan programaren erabiltzaileak 3 saiakera edukiko ditu gehienez. Lehen saiakeran asmatzen ez badu, ez zaio emango inolako informaziorik P puntuari buruz baina bigarren saiakera bat onartuko zaio. Bigarren saiakeran asmatzen ez badu, ez zaio emango inolako informaziorik P puntuari buruz baina hirugarren eta azken saiakera bat onartuko zaio.


Hona hemen programaren balizko irteera bat, while-do nagusiak saiakerak kontrolatzen ditu eta bere barneko repeat-until egiturek koordenatuen balioztapena zaintzen dute. Adibide honetan, hirugarren saiakeran P puntuaren koordenatuak asmatu dira. Nahiz eta P eta Q puntuen koordenatuak berdin-bedinak ez izan, bai betetzen dute hurbil daudela ezarritako 0.1 doitasunarekin:







 

iruzkinik ez:

Argitaratu iruzkina

Iruzkinen bat idazteko Google-ko kontu bat behar duzu. Iruzkin guztien moderazio-ardura blogeko administratzaileari dagokio.