mari kita bahas dengan latihan berikut:
*
* *
* * *
* * * *
* * * * *
diatas adalah permasalah yang akan kita selesaikan dengan menggunakan nasted logic. mari kita slesaikan step by step
step
* <=== menampilkan bentuk sperti berikut, intruksi yang dibutuhkan ialah perintah tulis berikut penulisan programmnya
tulis('*') perintah tulis adalah perintah yang digunakan dalam bahasa computer/mesin untuk melakukan penulisan,pencetakan,dll lalu ada ada perintah dalam bahasa komputer yang mirip untuk menulis yaitu perintah tulis lalu pindah baris yaitu (perintah: tulisLn) yang bermaksud memberi perintah pada komputer memindah perintah selanjutnya setalah melakukan penulisan penulisan.
jadi penulisannya sbb:
mulai
tulis ('*')
selesai
catatan* dalam bahasa mesin, pemrograman harus dimulai dengan perintah mulai(klo ga ada ya mesin gak akan mulai2) dan diakhiri dengan perintah slesai(yah untuk mengakiri semua perintah)
step
* * * * * <=== untuk menghasilkan seperti berikut mungkin logika kita mengatakan pertinah tulis('*') n kali (dalam kasus ini n =5) tetapi dalam bahasa mesin tidak mengenal perintah kali. lalu bagaimana solusinya???, dalam bahasa mesin perintah kali sering dengan melakuakn perintah penghitungan sebanyak n kali lalu setiap penghitngan kita bisa sisipkan perintah tulis, contah:
lakukan penghitungan sebanyak 5kali: hitung dari 1-5 atau 2-6,dll(yang penting 5 kali untuk kasus ini yang bertujuan mengganti perintah kali yang tidak bisa dimengerti oleh mesin) dimana proses penghitungan akan dilakukan didalam memori komputer yang tidak akan bisa terlihat tetapi proses tersebut akan dilakukan oleh komputer.
maka programnya ialah :
mulai //awal program
penghitungan untuk 1 sampai 5 lakukan
mulai // mulai proses penghitungan
tulis('*')
selesai // akhir proses penghitungan
selesai // akhir smua program
step
proses selanjutnya :* * * * *
* * * * *
* * * * *
* * * * *
* * * * * <= secara kasat mata perintah yang mungkin adalah perintahnya adalah copas perintah sebelunya sebanyak n kali (n = 5 tuk kasus ini) sama dengan penjelasan sebelumnya perintah copas tidak dikenal dalam bahasa mesin perintah itu hanya dikenal oleh manusia, lalu bagaiman?? sama dengan penjelasn sebelumnya kita harus perintah penghitungan sebanyak n kali dimana disetiap penghitungan kita sisipkan perintah enter/pindah baris (mungkin dalam penjelasana ini kita akan melakukan perintaah (enter)) jadi programmnya akan seperti ini:
mulai //awal program
penghitungan untuk 1 sampai 5 lakukan // penghitungan untuk eksekusi enter
mulai // awal proses pindah baris
penghitungan untuk 1 sampai 5 lakukan // penghitungan untuk eksekusi tulis
mulai // mulai proses penghitungan
tulis('*')
selesai // akhir proses penghitungan
enter // akhir proses pindah baris
selesai // akhir smua program
step
* ^ ^ ^ ^* * ^ ^ ^
* * * ^ ^
* * * * ^
* * * * * <==== mungkin semakin terlihat solusinya kan jika kita bisa memecahkan masalah tersebut, agar teman2 mudah memahaminya maka saya akan menambahkan indeks pada program sebelumnya. berikut program sebelumnya:
mulai
penghitungan untuk a=1 sampai 5 lakukan
mulai
penghitungan untuk b=1 sampai 5 lakukan
mulai
tulis('*')
selesai
enter
selesai
program ini saya menambahkan indek a=untuk proses pindah baris dan b= untuk proses penulisan
Penjelasan Kondisi:
b=1 b=2 b=3 b=4 b=5
* ^
^ ^
^ ketika a=1* * ^ ^ ^ ketika a=2
* * * ^ ^ ketika a=3
* * * * ^ ketika a=4
* * * * * ketika a=5
mari kita ambil yang bertanda (*):
saat kondisi a=1 ==> b=1
saat kondisi a=2 ==> b=1,b=2
saat kondisi a=3 ==> b=3,b=2,b=1
saat kondisi a=4 ==> b=4,b=3,b=2,b=1
saat kondisi a=5 ==> b=5,b=,b=3,b=2,b=1
melihat pada kondisi diatas. kita bisa mengabil kesimpulan penulisan (*) terjadi pada kondisi b harus selalu lebih kecil dari nilai a atau nilai b=a dan penulisan (^) terjadi ketika kondisi penulisan (*) tidak terpenuhi,
berikut konsep dasar penulisan jika-maka:
jika (kondisi terpenuhi) maka
(aksi dilakukan) //dalam hal ini penulisan(*)
jika tidak
(kondisi yang tidak terpenuhi dilakukan) //dalam hal ini penulisan (^)
maka programnya berubah menjadi berikut:
mulai
penghitungan untuk a=1 sampai 5 lakukan
mulai
penghitungan untuk b=1 sampai 5 lakukan
mulai
jika (b<a atau b=a)
tulis('*')
jika tidak
tulis('^')
selesai
enter
selesai
maka untuk menyelesaikan permasalan awal kita maka kita tinggal mengganti tanda ('^') menjadi tanda (' ').
mudah bukan???
lalu nasted logic itu aapa?????
berikut program keseluruhan :
mulai
n=5 // ini bisa dilakukan dengan meminta input pada user mungkin teman2 bisa belajar lebih lanjut
penghitungan untuk a=1 sampai n lakukan // baris 3
mulai
penghitungan untuk b=1 sampai n lakukan
mulai
jika (b<a atau b=a)
tulis('*')
jika tidak
tulis('^')
selesai
enter // baris 12
selesai
nasted logik terjadi pada baris 3 sampai baris 12 dimana logika bersarang tejadi. menurut bahasa saya nasted logik merupakan perintahan ada ketika perintah sebelumnya belum selesai dilakukan
asalakan teman2 mengerti menyelsaikan tersebut teman2 pasti mengerti arti dari nasted logik
sekian dulu informasi dari saya semoga membantu
terima kasih....
Tidak ada komentar:
Posting Komentar