Mwisho wa msingi wa programu ya udhibiti wa mipango ya kujifunza kujifunza ni masharti ya masharti ( if na if/else ).
An if/else taarifa inafanya "kama" code-block kama na tu kama zinazotolewamtihanini kweli kwa hali ya ulimwengu wakati programu inapofikia taarifa hiyo. Vinginevyo mpango unafanya "block" kificho-block.
if( mtihani ){
ikiwa ni kanuni-kuzuia
} else {
mwingine kuzuia kanuni
}
Ili kupata maana ya maneno ambayo masharti yanaweza kutokea, hebu tuandike mpango ambao Karel koni mstari wa koni s. Ikiwa mraba hapo awali ulikuwa na koni , Karel anapaswa kuichukua. Ikiwa mraba haina koni , Karel anapaswa kuweka moja chini.
Kumbuka kuwa if taarifa haifai kuwa na else kuzuia - ambayo kesi hiyo inawakabili kama while kitanzi kinachotekeleza wakati mmoja tu:
if( mtihani ){
ikiwa ni kanuni-kuzuia
}
Mfano wa mwisho uliotumia hali mpya. Hapa kuna orodha ya hali zote ambazo Karel anajua:
| Mtihani | Upinzani | Kinachoangalia |
|---|---|---|
frontIsClear() |
frontIsBlocked() |
Je! Kuna ukuta mbele ya Karel? |
koniIko() |
koniHaipo() |
Je! Kuna koni s kwenye kona hii? |
leftIsClear() |
leftIsBlocked() |
Je, kuna ukuta wa kushoto kwa Karel? |
rightIsClear() |
rightIsBlocked() |
Je, kuna ukuta wa haki ya Karel? |
beepersInBag() |
noBeepersInBag() |
Yoyote kuna koni s katika mfuko wa Karel? |
facingNorth() |
notFacingNorth() |
Je Karel anaelekea kaskazini? |
facingSouth() |
notFacingSouth() |
Je, Karel ameelekea kusini? |
facingEast() |
notFacingEast() |
Je, Karel ameelekea mashariki? |
facingWest() |
notFacingWest() |
Je, Karel ameelekea magharibi? |
Hongera! Sasa unajua vitalu vyote vya msingi vya udhibiti wa programu. Wakati mizunguko while kwa Karel, mbinu, mizunguko while , mzunguko for s, ikiwa / kauli nyingine mzunguko for kwa njia sawa katika lugha zote kuu, ikiwa ni pamoja na Java.
Sasa kwa kuwa una vitengo vya ujenzi unaweza kuwaweka pamoja ili kujenga suluhisho la matatizo magumu zaidi. Kwa kiasi kikubwa, programu ni sayansi ya kutatua matatizo kwa kompyuta. Sababu matatizo mara nyingi ni magumu, ufumbuzi-na mipango ambayo hutekeleza ufumbuzi huo-inaweza kuwa vigumu pia. Ili iwe rahisi iwe kukuza ufumbuzi huo, unahitaji kupitisha mbinu na nidhamu ambayo inapunguza kiwango cha utata huo kwa kiwango kikubwa.