INFORMATIKA MEDIA MENGAJAR UNTUK SMP/ MTs KELAS VIII
ALGORITMA, VARIABEL, DAN KONDISI DALAM PEMROGRAMAN Bab 2 Sumber : commons.wikimedia.org
PETA KONSEP Algoritma Program Bentuk Percabangan Pseudocode Flowchart Satu Kondisi Dua Kondisi Tiga atau Lebih Kondisi Variabel Perulangan Repeat x kali Repeat Until Forever
A. ALGORITMA, VARIABEL, DAN TIPE DATA Perangkat komputer dapat bekerja untuk melakukan suatu pekerjaan jika kita sebagai pengguna dapat memerintahkan komputer tersebut dengan cara yang benar . Perintah dapat diberikan dengan menggunakan algoritma yang akan diterjemahkan ke dalam kode-kode program, dikompilasi , dan dijalankan oleh komputer . Dengan diberikan algoritma yang sesuai , komputer akan bekerja sesuai dengan yang pengguna inginkan . Penerjemahan suatu algoritma menjadi kode-kode program disebut dengan pemrograman . Pada saat melakukan pemrograman tersebut , kita perlu menggunakan berbagai variabel yang akan digunakan untuk menangkap , menyimpan , memanipulasi , dan menampilkan suatu nilai .
1. Algoritma dan Perancangan Algoritma Algoritma adalah kumpulan langkah-langkah instruksi yang digunakan untuk menyelesaikan suatu pekerjaan atau persoalan yang akan diterjemahkan menjadi kode-kode program yang kemudian dikompilasi , diinstal , dan dijalankan oleh komputer . Algoritma merupakan dasar kerja komputer sehingga ketepatan penulisan algoritma merupakan faktor yang menentukan apakah suatu komputer akan bekerja dengan benar atau tidak . Jika merancang algoritma yang sesuai , komputer akan bekerja sesuai dengan yang diinginkan , dan berlaku s ebaliknya . P rogram komputer menerapkan prinsip generalisasi pada proses-proses yang ada dan memberikan keleluasaan kepada pengguna untuk memilih proses atau output sesuai yang diinginkan serta masih dapat menjadi solusi bagi semua orang atau profesi .
1. Algoritma dan Perancangan Algoritma Terdapat dua cara yang dapat digunakan untuk menuliskan algoritma , yaitu menggunakan pseudocode dan flowchart . Pseudocode adalah rangkaian instruksi yang menggambarkan langkah-langkah untuk menyelesaikan permasalahan . F lowchart adalah diagram yang mewakili kumpulan dari instruksi-instruksi yang ditampilkan menggunakan simbol standar untuk menggambarkan instruksi-instruksi yang berbeda-beda . Cara algoritma bekerja untuk menggambarkan instruksi-instruksi yang akan dijalankan di dalam program komputer ditunjukkan pada contoh program untuk menghitung berat badan ideal secara lengkap dapat kamu pelajari pada Buku Informatika Erlangga halaman 82-83.
No Nama Simbol Kegunaan 1. Mulai/berhenti Digunakan untuk memulai dan mengakhiri proses 2. Proses Menjalankan perintah 3. Keputusan Membuat keputusan/pilihan 4. Masukan/keluaran (input/output) Menerima input atau menampilkan output pada pengguna 5. Penghubung Berpindah ke bagian lain di flowchart 6. Arah aliran Menunjukkan arah aliran flowchart 1. Algoritma dan Perancangan Algoritma Tabel simbol flowchart
2. Memprogram Robot A lgoritma untuk program robot visual tulisan 'I am Programmer’ adalah sebagai berikut : Sebagai contoh , mengenai cara algoritma diterjemahkan menjadi program komputer , kita akan membuat program untuk robot visual yang akan bekerja membuat tulisan 'I am Programmer’ menggunakan program RoboMind . Langkah-langkah membuat robot visual tersebut dapat kamu pelajari pada Buku Informatika Erlangga halaman 84-87.
Ketika bekerja membuat program, baik program yang berupa game, cerita , ataupun penghitungan , sering kali program perlu untuk membaca nilai , menggunakan nilai dalam penghitungan , dan menampilkan hasil penghitungan kepada pengguna . N ilai-nilai perlu disimpan dalam suatu objek yang disebut variabel . V ariabel digunakan untuk menyimpan suatu nilai dan besar nilai tersebut dapat berubah-ubah . D alam program, nilai variabel tidak harus berupa angka , tetapi dapat berupa teks / istilah atau berupa Yes/True dan No/False , sehingga variabel mempunyai tipe data untuk menentukan nilai yang dapat disimpan oleh variabel tersebut . 3. Variabel dan Tipe Data
Terdapat tiga t ipe data untuk variabel-variabel pada pemrograman visual Scratch, yaitu boolean , numerik , dan teks ( string ). Tipe data boolean , untuk menyimpan nilai yang berupa True atau False , yang digunakan untuk menyimpan nilai dari suatu pengujian kondisi . Misalnya , kita mempunyai variabel StatusMenang , maka dapat di buat logika program dengan StatusMenang adalah True jika Nilai lebih besar dari atau sama dengan 100 , dan berlaku sebaliknya. Tipe data numerik , untuk menyimpan nilai berupa bilangan atau angka . Ketika membuat program yang berupa penghitungan di Scratch, kamu perlu menggunakan variabel untuk menyimpan nilai yang akan digunakan dalam penghitungan matematika . Tipe data teks atau string , untuk menyimpan nilai yang berupa teks . Misalnya , menyimpan pesan yang ingin disampaikan kepada pengguna , seperti pesan "Anda Menang " atau "Anda Kalah . 3. Variabel dan Tipe Data
Ketika ingin menggunakan variabel di dalam program, kita harus membuat variabel tersebut dengan menggunakan perintah ‘ Make a Variable', kemudian memberi nama untuk variabel tersebut . Pembuatan dan pemberian nama variabel , dapat dilakukan dengan langkah-langkah sebagai berikut . 3. Variabel dan Tipe Data Pada tab Code, klik blok Variables sehingga blok perintah yang ada di blok Variables akan ditampilkan . Klik tombol Make a Variable. Kotak dialog New Variable akan ditampilkan . Beri nama untuk variabel tersebut . Selanjutnya , pilih apakah variabel ingin digunakan pada semua sprite (For all sprites) atau untuk satu sprite tertentu (For this sprite only) . Klik tombol OK. Variabel baru akan ditambahkan ke blok perintah di blok Variables .
4. Meng gunakan Variabel di dalam Program Pada program Scratch, a kan di buat program untuk menghitung jarak kedua titik yang terdapat di koordinat kartesius . Pengguna akan menginput koordinat titik pertama dan kedua . Program akan menghitung jarak pada kedua titik , kemudian menampilkan hasil penghitungan kepada pengguna . Pada program, akan di gunakan beberapa variabel untuk menyimpan nilai yang diberikan pengguna dan nilai hasil penghitungan . Misalnya , kita akan menggunakan variabel X1 untuk menyimpan nilai dari titik 1, variabel Y1 untuk menyimpan nilai Y dari titik 1, variabel X2 untuk menyimpan nilai X dari titik 2, dan variabel Y2 untuk menyimpan nilai Y dari titik 2. V ariabel Jarak X dan Jarak Y untuk menyimpan nilai jarak dalam arah sumbu X dan Y dari kedua titik , serta variabel Jarak untuk menyimpan dan menampilkan jarak dari kedua titik . P rogram akan meminta pengguna menginput koordinat titik pertama dan kedua . Dengan menggunakan hukum Phytagoras , program akan menghitung jarak kedua titik dalam arah sumbu X dan Y. Selanjutnya , hasil penghitungan akan ditampilkan .
4. Meng gunakan Variabel di dalam Program Langkah- langkah untuk membuat program untuk menghitung jarak kedua titik yang terdapat di koordinat kartesius secara lebih lengkap dapat kamu pelajari pada Buku Informatika Erlangga halaman 90-93.
B. MENGGUNAKAN KONDISI PENCABANGAN Dalam program, sering kali alur proses atau proses-proses yang dijalankan tergantung pada berbagai kondisi persyaratan yang harus dipenuhi atau tidak dipenuhi . Hal ini terutama terjadi jika ada banyak proses yang digunakan untuk melakukan pekerjaan otomatisasi . Untuk menangani hal seperti itu , program perlu menggunakan kondisi percabangan . Kondisi percabangan juga sering digunakan untuk mengakomodasi keinginan atau pilihan yang dibuat oleh pengguna . Alur proses yang dijalankan akan disesuaikan dengan pilihan yang dibuat oleh pengguna . Ketika bekerja dengan kondisi percabangan , kita akan menggunakan operator perbandingan dan operator logika sebagai alat untuk menguji satu atau lebih persyaratan .
1. Operator Perbandingan dan Logika Operator perbandingan adalah operator yang digunakan untuk membandingkan dua nilai . O perator logika adalah operator yang digunakan untuk menguji satu atau lebih kondisi logika . Scratch mempunyai tiga jenis operator perbandingan yang dapat digunakan sebagai persyaratan kondisi , yaitu lebih besar dari (>), lebih kecil dari (<), dan sama dengan (=). Operator lebih kecil dari digunakan untuk menguji apakah suatu nilai lebih kecil dari nilai yang dijadikan sebagai acuan . O perator lebih besar dari digunakan untuk menguji apakah suatu nilai lebih besar dari nilai yang dijadikan acuan . O perator sama dengan digunakan untuk menguji apakah suatu nilai besarnya sama dengan nilai yang dijadikan acuan .
1. Operator Perbandingan dan Logika Ketika digunakan , operator perbandingan akan memberikan hasil pengujian bernilai True atau False. True jika hasil pengujian bernilai benar dan False jika hasil pengujian bernilai salah. K ondisi percabangan atau perulangan di dalam program mempunyai lebih dari satu persyaratan , sehingga membutuhkan operator logika untuk menguji persyaratan - persyaratan tersebut . Scratch mempunyai tiga operator logika , yaitu And, Or, dan Not. X Y X AND Y X OR Y NOT X True True True True False True False False True False False True False True True False False False False True Tabel Kebenaran Operator Logika
1. Operator Perbandingan dan Logika O perator And akan mengembalikan nilai True jika kedua persyaratan dipenuhi . O perator Or akan bernilai True jika salah satu dari persyaratan dipenuhi . Operator Not akan bernilai True jika hasil pengujian bernilai salah, dan sebaliknya . Scratch tidak mempunyai operator perbandingan yang dapat digunakan untuk mengakomodasi operasi ‘ lebih besar dari atau sama dengan ’ dan ‘ lebih kecil dari atau sama dengan ’. U ntuk melakukan kedua operasi tersebut , kita harus menggabungkan dua operator perbandingan yang berbeda . C ontoh : O perasi ‘ lebih kecil dari atau sama dengan 90’ dapat dilakukan dengan menggabungkan blok perintah ‘ lebih kecil dari ’ dan ‘ sama dengan ’ serta menggunakan blok perintah ‘or’ di antaranya . O perasi lebih besar dari atau sama dengan ', misalnya untuk operasi ' lebih besar dari atau sama dengan 60', dapat dilakukan dengan menggunakan blok perintah lebih besar dari ' dan ' sama dengan serta menambahkan blok perintah 'or' di antaranya .
2. Kondisi Satu Percabangan K ondisi satu percabangan adalah kondisi ketika suatu proses akan dijalankan jika kondisi bernilai benar atau True. Sebaliknya , jika kondisi bernila i salah atau False, tidak ada proses yang harus dijalankan . Di aplikasi Scratch kondisi dengan satu percabangan ditangani dengan menggunakan blok perintah ‘if – then’ yang terdapat di blok Control . Jika kondisi yang ada dipenuhi semua perintah yang terdapat di blok perintah ‘if – then’ tersebut akan dijalankan . Sebaliknya , jika kondisi tidak dipenuhi semua perintah yang ada di dalam blok perintah ‘if – then’ akan diabaikan . Program akan langsung menjalankan perintah yang ada di bawah perintah ‘if – then’.
3. Kondisi Dua Percabangan Kondisi dua percabangan adalah kondisi ketika program dapat memilih untuk menjalankan salah satu rangkaian proses tergantung pada hasil pengujian kondisi . Di program Scratch, kondisi dengan dua percabangan diterapkan dengan menggunakan blok perintah ‘if – then – else’. Jika hasil pengujian kondisi bernilai True, program akan menjalankan rangkaian alur proses yang ada di dalam blok perintah ‘if – then’. Sebaliknya , jika hasil pengujian bernilai False, program akan menjalankan rangkaian alur proses yang ada di dalam blok perintah ‘else’. Contoh nya: ketika melakukan penerimaan peserta didik baru , sekolah akan menyeleksi calon peserta didik dengan cara melakukan ujian tertulis . Peserta didik yang memiliki jumlah nilai lebih besar dari 250 akan dinyatakan diterima , sebaliknya peserta didik yang memiliki jumlah nilai kurang dari atau sama dengan 250 akan dinyatakan tidak diterima . Pada kasus ini , jumlah nilai digunakan untuk menentukan seorang calon peserta didik diterima atau tidak diterima .
4. Kondisi Tiga Percabangan atau Lebih Kondisi tiga percabangan atau lebih adalah kondisi ketika terdapat tiga atau lebih percabangan yang dapat dipilih sesuai dengan kondisi yang berlaku . Pada penerapan di Scratch, kita dapat menggunakan blok perintah ‘if – then – else’ seperti halnya yang digunakan pada kondisi dua percabangan dan menempatkan blok perintah tersebut di dalam blok perintah ‘if – then – else’ yang lain sampai jumlah percabangan yang dibutuhkan dipenuhi . C ontoh nya: D osen di perguruan tinggi memberikan nilai dalam huruf , A, B, C, D, dan E yang ditentukan berdasarkan nilai rerata dari ujian-ujian mahasiswa . Kriterianya adalah nilai A untuk nilai rerata di atas 90, nilai B untuk nilai rerata lebih besar dari 80 dan lebih kecil dari atau sama dengan 90, nilai untuk nilai rerata lebih besar dari 70 dan lebih kecil dari atau sama dengan 80, nilai D untuk nilai rerata lebih besar dari atau sama dengan 60 dan lebih kecil dari atau sama dengan 70, sedangkan nilai E untuk rerata yang lebih kecil dari 60.
5 . Menerapkan Kondisi Percabangan Agar kamu lebih memahami penerapan kondisi percabangan tersebut di dalam program, akan ditunjukkan kondisi percabangan yang digunakan dalam program berupa aplikasi game . Program game yang dibangun adalah program game 'Zombie Attack'. Pada game ini , pengguna akan mengontrol karakter Soldier yang berjuang untuk melawan zombie-zombie yang berusaha menyerangnya . Karakter Soldier akan diberikan poin nyawa sebesar 100 di mana setiap kali ada Zombie yang menyentuhnya , poin nyawa akan berkurang sebesar 5. Jika poin nyawa mencapai nol , Soldier tersebut akan mati dan pemain dinyatakan kalah Sebaliknya , setiap kali Soldier menakhlukkan Zombie, pengguna akan mendapatkan poin 10 dan jika poin sudah mencapai 300, pemain dinyatakan menang . Untuk membangun program game 'Zombie Attack’ secara lengkap dapat kamu pelajari pada Buku Informatika Erlangga halaman 101-108.
C . MENGGUNAKAN KONDISI PE RULANGAN A lur proses atau perintah dijalankan berulang-ulang agar hal yang diinginkan dari program dapat dicapai dikenal dengan istilah kondisi perulangan . Kondisi perulangan dapat digunakan untuk berbagai keperluan , seperti menggambar pola , memberikan perintah pada karakter tertentu dalam program game, melakukan perhitungan numerik , program simulasi , pemodelan , dan sebagainya . Perulangan merupakan salah satu alur proses yang paling banyak digunakan dan berperan penting dalam membangun program . B anyak persoalan yang dapat diselesaikan lebih mudah dengan menerapkan kondisi perulangan . Scratch mempunyai tiga jenis blok perintah yang digunakan untuk menjalankan perulangan . Ketiga blok perintah tersebut memiliki karakteristik yang dapat digunakan untuk menjalankan berbagai jenis perulangan .
1. Perulangan dengan Jumlah Iterasi Tertentu Terdapat t iga jenis blok perintah yang digunakan untuk menjalankan pro ses perulangan di Scratch yang dapat dipilih sesuai kebutuhan , yaitu repeat, repeat until, dan forever. Blok perintah repeat digunakan jika kita ingin menjalankan perulangan dengan jumlah iterasi ( perulangan ) tertentu atau iterasi yang telah diketahui . Jumlah iterasi yang dilakukan dalam suatu proses perulangan menggunakan blok perintah repeat ditentukan menggunakan angka atau variabel . Jika jumlah iterasi dilakukan menggunakan angka , proses perulangan akan dilakukan sebanyak nilai angka tersebut . Sebaliknya , jika kita menentukan jumlah iterasi menggunakan variabel , iterasi akan dilakukan sesuai dengan nilai variabel tersebut . Dengan menggunakan variabel sebagai penentu jumlah iterasi , kita dapat mengatur jumlah perulangan sesuai dengan keadaan di dalam program.
1. Perulangan dengan Jumlah Iterasi Tertentu Langkah- langkah untuk membuat program menghitung faktorial suatu bilangan dengan blok perintah repeat secara lebih lengkap dapat kamu pelajari pada Buku Informatika Erlangga halaman 113-115.
2 . Perulangan sampai Tujuan Tercapai Ketika membangun program, kadang kala kita perlu menjalankan proses secara berulang sampai kondisi tertentu dipenuhi atau hasil yang diinginkan diperoleh . Pada aplikasi Scratch, perulangan sampai tujuan tercapai dilakukan dengan menggunakan blok perintah ‘ repeat until ’. T ujuan yang ingin dicapa i harus ditentukan dengan cara mengatur blok perintah yang berupa operator. Perlu diperhitungkan bahwa proses yang dijalankan pada akhirnya akan mencapai kondisi yang dituju atau diharapkan . Jika tidak , proses akan berlanjut secara terus-menerus karena kondisi yang ingin dicapai tidak pernah dipenuhi . Contoh nya: D alam program berupa game , karakter musuh akan terus-menerus menembak karakter pengguna sampai pengguna tersebut menang atau kalah dalam game yang sedang dimainkan . Dalam program yang berupa penghitungan atau simulasi , sering kali proses penghitungan harus diulang secara terus-menerus sampai nilai tertentu dipenuhi .
3 . Perulangan Forever B lok perintah perulangan forever membuat proses dijalankan secara terus-menerus selama program dijalankan atau digunakan . Contoh nya: K ita Ingin agar program yang digunakan secara terus menerus memutar lagu atau bunyi selama program dijalankan . Pada beberapa game, karakter musuh sering kali secara terus-menerus diperintahkan agar bergerak acak atau menyerang tanpa berhenti .
4. M enerapkan Percabangan dan Perulangan Pada bagian ini , kamu akan belajar cara menggunakan Scratch untuk menghitung titik-titik penting dari persamaan linear, kemudian menggambarkan grafik untuk persamaan linear y = ax + b . Untuk membuat program tersebut , kita perlu menyediakan sebuah gambar untuk menggambarkan koordinat Kartesius , yang terdiri atas sumbu x dan y. G rafik akan digambarkan dengan cara menggabungkan titik-titik yang ada di koordinat Kartesius . Setiap titik ditentukan dengan menghitung nilai x dan y yang bersesuaian . Setiap kali nilai x diberikan , nilai akan dihitung sesuai dengan persamaan linear yang diberikan , kemudian grafik digambar dari titik sebelumnya . Hal ini dilakukan secara terus-menerus sampai nilai x = 20. Proses penghitungan ini dilakukan dengan menjalankan perintah perulangan .
4. M enerapkan Percabangan dan Perulangan Langkah- langkah untuk membuat program persamaan linear secara lebih lengkap dapat kamu pelajari pada Buku Informatika Erlangga halaman 118-123.