Pengaliran aliran pengaturcaraan akhir yang terakhir untuk belajar adalah pernyataan bersyarat ( if dan if/else ).
An if/else pernyataan melaksanakan "jika" kod-blok jika dan hanya jika yang disediakanujianadalah benar untuk keadaan dunia pada masa program mencapai kenyataan. Jika tidak, program itu akan melaksanakan kod-blok "yang lain".
if( ujian ){
jika kod-blok
} else {
lain blok kod
}
Untuk mendapatkan rasa di mana kenyataan bersyarat mungkin berguna, mari kita tulis sebuah program yang mempunyai Karel membalikkan garis beeper s. Jika sebuah persegi sebelum ini mempunyai beeper , Karel harus mengambilnya. Sekiranya persegi tidak mempunyai beeper , Karel perlu meletakkan satu ke bawah.
Perhatikan bahawa if pernyataan tidak perlu mempunyai else blok - dalam kes itu pernyataan menyerang seperti a while gelung yang hanya melaksanakan satu masa:
if( ujian ){
jika kod-blok
}
Contoh terakhir itu menggunakan keadaan baru. Berikut adalah senarai semua syarat yang diketahui Karel:
| Uji | Sebaliknya | Apa yang dia cek |
|---|---|---|
frontIsClear() |
frontIsBlocked() |
Adakah dinding di hadapan Karel? |
beepersPresent() |
noBeepersPresent() |
Adakah terdapat beeper s di sudut ini? |
leftIsClear() |
leftIsBlocked() |
Adakah terdapat tembok ke kiri Karel? |
rightIsClear() |
rightIsBlocked() |
Adakah terdapat dinding untuk hak Karel? |
beepersInBag() |
noBeepersInBag() |
Mana ada beeper s dalam beg Karel? |
facingNorth() |
notFacingNorth() |
Adakah Karel menghadap ke utara? |
facingSouth() |
notFacingSouth() |
Adakah Karel menghadap ke selatan? |
facingEast() |
notFacingEast() |
Adakah Karel menghadap ke timur? |
facingWest() |
notFacingWest() |
Adakah Karel menghadap ke barat? |
Tahniah! Anda kini tahu semua blok aliran kawalan pengaturcaraan teras. Semasa anda belajar dengan Karel, kaedah, sementara gelung, untuk gelung, jika / kenyataan lain berfungsi dengan cara yang sama dalam hampir semua bahasa utama, termasuk Jawa.
Sekarang bahawa anda mempunyai blok bangunan, anda boleh meletakkannya bersama-sama untuk membina penyelesaian untuk masalah yang lebih rumit. Untuk sebahagian besar, pengaturcaraan adalah ilmu menyelesaikan masalah dengan komputer. Kerana masalah sering sukar, penyelesaian-dan program-program yang melaksanakan penyelesaian-boleh menjadi sukar juga. Untuk memudahkan anda mengembangkan penyelesaian itu, anda perlu mengamalkan metodologi dan disiplin yang dapat mengurangkan tahap kerumitan itu kepada skala yang boleh diurus.