Kompetensi Dasar :
3.7.1. Mengenal standar program dan notasi yang dipakai untuk merancang program,
3.7.2. Mengenal kerangka program dalam bahasa yang dipakai
3.7.3. Memahami variabel, value, konstanta, ekspresi dan instruksi untuk berinteraksi dengan piranti masukan (input) dan keluaran (output).
Tujuan Pembelajaran
- Siswa mampu membaca dan menulis algoritma dengan benar
- Memahami proses pemprograman dengan menggunakan bahasa pemprograman
- Memahami konsep variabel dan ekspresi dalam membuat program
Algoritma adalah suatu kumpulan instruksi terstruktur dan terbatas yang dapat di implementasikan dalam bentuk program komputer untuk menyelesaikan suatu permasalahan komputasi tertentu. Lahir dari proses berfikir komputasional. Berfikir komputasional sudah dipelajari di semester sebelumnya.
Setelah proses berfikir komputasional ( abstraksi, dekomposisi, menyusun algoritma serta pengenalan pola), selanjutnya algoritma harus direpresentasikan dalam bentuk yang mudah dipahami manusia (kode program)
Di bagian ini, akan dipelajari 2 cara representasi algoritma, yaitu diagram alir dan pseudocode. Untuk itu perlu tracing / penelusuran. Perlu diingat ! "Menulis algoritma beda dengan menulis program. Progam ditulis agar dapat dipahami mesin, Algoritma ditulis agar dapat dipahami manusia".
Diagram Alir adalah diagram yang biasanya mewakili suatu proses, sistem, atau proses yang menampilkan langkah langkah dalam bentuk langkah-langkah atau simbol. Diagram alir disebut juga Flowchart.
Berikut simbol dan maknanya
Contoh :
Diagram Alir Menghitung luas persegi
Diagram alir dibaca mulai dari
symbol START lalu mengikuti arah panah. Untuk menghitung luas persegi,
kalian memerlukan sebuah data, yaitu panjang sisi. Panjang sisi ini dibaca
dalam diagram alir dengan menggunakan kata kunci READ dan disimpan dalam sebuah
variabel Bernama sisi.
Setelah itu, kalian melakukan
suatu proses ekspresi matematika untuk menghitung luas persegi menggunakan
rumus yang telah anda ketahui, yaitu luas = sisi x sisi. Hasil perhitungan
tersebut disimpan dalam sebuah variabel Bernama luas.
Kata kunci PRINT digunakan untuk
mencetak nilai dari variabel luas yang telah diperoleh pada tahap berikutnya.
Setelah selesai PRINT,
berikutnya adalah END
Pseudocode / kode semu : Suatu bahasa buatan manusia yang sifatnya informal untuk mempresentasikan algoritma. Karena sifatnya informal, tidak ada aturan khusus standar notasi yang digunakan. Akan tetapi ada prinsip dasar yang perlu diperhatikan, yaitu 1 baris dalam 1 pernyataan dan identasi dalam menuliskan pernyataan.
Contoh :
Masih yang contoh seperti diagram alir, yaitu menghitung luas persegi.
Deskripsi tingkat tinggi
- Baca nilai sisi persegi
- Hitung luas dengan menguadratkan nilai sisinya
- Cetak Luas
Pseudocode
Algoritma Menghitung Luas Persegi
Input : Nilai Panjang Sisi Persegi.
Output : Luas Persegi Tercetak.
Input sisi
Luas sisi * sisi
Print luas
Latihan :
Buatlah sebuah diagram alir atau pseudocode dari proses berikut :
Sebuah mesin pembayaran otomatis dirancang untuk mampu menangani pembayaran pembelian roti secara mandiri. Mesin ini mampu memberikan kembalian dalam bentuk kertas atau uang logam. Mesin akan menerima 2 buah masukan, yaitu total bayar dan jumlah uang yang dibayarkan pelanggan. Apabila jumlah uang yang dibayarkan lebih besar atau sama dengan total bayar, mesin akan menghitung kembalian yang harus diberikan pada pelanggan. Apabila terjadi sebaliknya, mesin menampilkan "uang yang dibayarkan kurang".
Anda dapat menelusuri dengan kasus berikut:
kasus 1
Masukan : Total bayar: 10000, Jumlah uang: 15000
Keluaran : 5000
Kasus 2
Masukan : Total bayar: 20000, Jumlah uang: 10000
Keluaran : Uang yang dibayarkan kurang
Jawab
Membayar bakso
- Masukan / input : total bayar dan jumlah uang yang dibayarkan pelanggan.
- Melakukan pengecekan terhadap jumlah uang yang dibayarkan
- Kondisi 1 : Jumlah Uang>=Total Bayar
- Keluaran 1 : Jumlah Uang - Total Bayar
- Kondisi 2 : Jumlah Uang<Total Bayar
- Keluaran 2 : Uang yang dibayarkan kurang
Solusi Diagram Alir
Deskripsi tingkat tinggi
- Baca total bayar dan jumlah uang yang dibayarkan
- Jika jumlah uang yang dibayarkan lebih besar atau sama dengan total bayar, kurangi jumlah uang sebesar total bayar, lalu cetak jumlah uang
- Jika jumlah uang yang dibayarkan lebih kecil dari total bayar, cetak kalimat 'uang yang dibayarkan kurang'
Pseudokode
Algoritma membayar bakso
Input: Total bayar dan Jumlah uang yang dibayarkan pelanggan
Input totalBayar, jumlahUang
if totalBayar >= jumlahuang
jumlahUang = jumlahUang-totalBayar
Print jumlahUang
Else
Print "Uang yang dibayarkan kurang"
Tidak ada komentar:
Posting Komentar