rencana pelaksanaan pembelajaran ( rpp ) mata ......mata pelajaran : pemrograman dasar kelas /...

57
RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan Pemrograman Dasar Karakter Bangsa yang diharapkan : Disiplin, Kreatif, Mandiri, Tanggung Jawab, Kerja sama. A. Kompetensi Inti 1. Menghayati dan mengamalkan ajaran agama yang dianutnya 2. Mengembangkan perilaku (jujur, disiplin, tanggung jawab, peduli, santun, ramah lingkungan, gotong royong, kerjasama, cinta damai, responsif dan proaktif) dan menunjukkan sikap sebagai bagian dari solusi atas berbagai permasalahan bangsa dalam berinteraksi secara efektif dengan lingkungan sosial dan alam serta dalam menempatkan diri sebagai cerminan bangsa dalam pergaulan dunia 3. Memahami, menerapkan, menganalisis pengetahuan faktual, konseptual, prosedural berdasarkan rasa ingin tahunya tentang ilmu pengetahuan, teknologi, seni, budaya, dan humaniora dengan wawasan kemanusiaan, kebangsaan, kenegaraan, dan peradaban terkait fenomena dan kejadian, serta menerapkan pengetahuan prosedural pada bidang kajian yang spesifik sesuai dengan bakat dan minatnya untuk memecahkan masalah. 4. Mengolah, menalar, menyaji, dan mencipta dalam ranah konkret dan ranah abstrak terkait dengan pengembangan dari yang dipelajarinya di sekolah secara mandiri, dan mampu menggunakan metoda sesuai kaidah keilmuan. B. Kompetensi Dasar dan Indikator 3.5 Menerapkan Penggunaan Tipe Data, Variabel, Konstanta, Operator dan Ekspresi a. Defenisi Tipe data, variabel, Konstanta, Operator dan Ekspresi 4.6 Mengolah data menggunakan konsep tipe data, variabel, konstanta, operator dan ekspresi a. Menyajikan informasi mengenai penggunaan tipe data dan variabel. b. Menyajikan informasi mengenai penggunaan konstanta. c. Menyajikan informasi mengenai penggunaan operator ekspresi C. Tujuan pembelajaran a. Dapat mengetahui dan mengerti pengertian variabel, konstanta. b. Mengetahui Fungsi variabel dan konstanta c. Membuat Program dengan menggunakan konstanta D. Materi Ajar 1. Tipe data, variabel, operator dan ekspresi 2. Tipe data, variabel dan konstanta. 3. Operator dan ekspresi E. Metode Pembelajaran 1. Penyampaian 2. Tanya jawab 3. Tes Program 4. Praktek F. Media pembelajaran 1. Komputer 2. Buku Algoritma 3. Buku Struktur data 4. Internet

Upload: others

Post on 08-Dec-2020

57 views

Category:

Documents


12 download

TRANSCRIPT

Page 1: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

RENCANA PELAKSANAAN PEMBELAJARAN ( RPP )

Mata Pelajaran : Pemrograman DasarKelas / Semester : X / 1Pertemuan : 1- 4Alokasi Waktu : 8 x 45 MenitStandar Kompetensi : Menerapkan Pemrograman DasarKarakter Bangsa yang diharapkan : Disiplin, Kreatif, Mandiri, Tanggung Jawab, Kerja

sama.

A. Kompetensi Inti1. Menghayati dan mengamalkan ajaran agama yang dianutnya 2. Mengembangkan perilaku (jujur, disiplin, tanggung jawab, peduli, santun, ramah

lingkungan, gotong royong, kerjasama, cinta damai, responsif dan proaktif) danmenunjukkan sikap sebagai bagian dari solusi atas berbagai permasalahan bangsa dalamberinteraksi secara efektif dengan lingkungan sosial dan alam serta dalam menempatkandiri sebagai cerminan bangsa dalam pergaulan dunia

3. Memahami, menerapkan, menganalisis pengetahuan faktual, konseptual, proseduralberdasarkan rasa ingin tahunya tentang ilmu pengetahuan, teknologi, seni, budaya, danhumaniora dengan wawasan kemanusiaan, kebangsaan, kenegaraan, dan peradabanterkait fenomena dan kejadian, serta menerapkan pengetahuan prosedural pada bidangkajian yang spesifik sesuai dengan bakat dan minatnya untuk memecahkan masalah.

4. Mengolah, menalar, menyaji, dan mencipta dalam ranah konkret dan ranah abstrak terkaitdengan pengembangan dari yang dipelajarinya di sekolah secara mandiri, dan mampumenggunakan metoda sesuai kaidah keilmuan.

B. Kompetensi Dasar dan Indikator3.5 Menerapkan Penggunaan Tipe Data, Variabel, Konstanta, Operator dan Ekspresi

a. Defenisi Tipe data, variabel, Konstanta, Operator dan Ekspresi

4.6 Mengolah data menggunakan konsep tipe data, variabel, konstanta, operator danekspresia. Menyajikan informasi mengenai penggunaan tipe data dan variabel.b. Menyajikan informasi mengenai penggunaan konstanta.c. Menyajikan informasi mengenai penggunaan operator ekspresi

C. Tujuan pembelajarana. Dapat mengetahui dan mengerti pengertian variabel, konstanta.b. Mengetahui Fungsi variabel dan konstantac. Membuat Program dengan menggunakan konstanta

D. Materi Ajar 1. Tipe data, variabel, operator dan ekspresi2. Tipe data, variabel dan konstanta.3. Operator dan ekspresi

E. Metode Pembelajaran1. Penyampaian 2. Tanya jawab3. Tes Program4. Praktek

F. Media pembelajaran1. Komputer2. Buku Algoritma3. Buku Struktur data4. Internet

Page 2: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

G. Langkah – langkah PembelajaranPertemuan 1 - 2

Kegiatan DeskripsiAlokasiWaktu

A. Pendahuluan 1. Siswa menjawab sapaan guru, berdoa, danmengondisikan diri siap belajar

2. Guru dan siswa bertanya jawab berkaitan denganidentitas diri yang dibutuhkan sebagai warga negarayang baik.

3. Guru menyampaikan tujuan pembelajaran4. Guru memotivasi siswa agar semakin giat belajar

30 Menit

B. Inti Mengamati :1. Siswa mengamati dan mendengarkan penjelasan

mengenai variabel, operator dan ekspresi.2. Siswa mengamati dan mendengarkan penjelasan

mengenai variabel, operator dan konstanta.3. Siswa mengamati dan mendengarkan penjelasan

mengenai operator dan ekspresi.Menanya :1. Siswa berdikusi menganalisa penggunaan variabel,

operator dan ekspresi dalam algoritma.2. Siswa berdikusi menganalisa penggunaan variabel,

konstanta dalam algoritma.3. Siswa berdikusi menganalisa penggunaan operator

dan ekspresi dalam algoritma.Mengeksplorasi:1. Siswa membuat kode program menggunakan ragam

tipe data variabel, konstanta, operator dan ekspresidengan program sederhana.

2. Siswa melakukan kompilasi, eksekusi dan perbaikanpada kesalahan-kesalahan yang terdapat dalamprogram.

Mengasosiasi:1. Siswa membuat sebuah kesimpulan tentang

penggunaan tipe data, variabel, konstanta, operatordan ekspresi dalam sebuah program sederhana.

Mengkomunikasikan:1. Siswa membuat sebuah laporan dan

mempresentasikan hasil dari sebuah programsederhana.

120 Menit

C. Penutup 1. Mereview kembali materi yang telah disampaikan2. Siswa mengerjakan evaluasi3. Siswa saling memberikan umpan balik hasil evaluasi

pembelajaran yang telah dicapai.

30 Menit

Pertemuan 3 – 4

Kegiatan DeskripsiAlokasiWaktu

A. Pendahuluan 1. Siswa menjawab sapaan guru, berdoa, danmengondisikan diri siap belajar

2. Guru dan siswa bertanya jawab berkaitan denganidentitas diri yang dibutuhkan sebagai warga negarayang baik.

3. Guru menyampaikan tujuan pembelajaran4. Guru memotivasi siswa agar semakin giat belajar

30 Menit

Page 3: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

B. Inti Mengamati :1. Siswa mengamati dan mendengarkan penjelasan

mengenai variabel, operator dan ekspresi.2. Siswa mengamati dan mendengarkan penjelasan

mengenai variabel, operator dan konstanta.3. Siswa mengamati dan mendengarkan penjelasan

mengenai operator dan ekspresi.Menanya :1. Siswa berdikusi menganalisa penggunaan variabel,

operator dan ekspresi dalam algoritma.2. Siswa berdikusi menganalisa penggunaan variabel,

konstanta dalam algoritma.3. Siswa berdikusi menganalisa penggunaan operator

dan ekspresi dalam algoritma.Mengeksplorasi:1. Siswa membuat kode program menggunakan ragam

tipe data variabel, konstanta, operator dan ekspresidengan program sederhana.

2. Siswa melakukan kompilasi, eksekusi dan perbaikanpada kesalahan-kesalahan yang terdapat dalamprogram.

Mengasosiasi:2. Siswa membuat sebuah kesimpulan tentang

penggunaan tipe data, variabel, konstanta, operatordan ekspresi dalam sebuah program sederhana.

Mengkomunikasikan:1. Siswa membuat sebuah laporan dan

mempresentasikan hasil dari sebuah programsederhana.

120 Menit

C. Penutup 1. Mereview kembali materi yang telah disampaikan2. Siswa mengerjakan evaluasi3. Siswa saling memberikan umpan balik hasil evaluasi

pembelajaran yang telah dicapai.

30 Menit

H. Sumber Belajar1. Buku Algoritma dan Pemrograman Pascal2. Internet3. Modul produktif, Buku Algoritma dan pemograman tingkat Dasar

I. Alat Pembelajaran1. Laptop2. LCD3. White board4. Spidol

Page 4: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

J. Penilaian 1. Teknik penilaian : Test tertulis2. Bentuk Instrumen dan Instumrn :

a. Bentuk Instrumen : Tes Uraianb. Instrumen : Terlampir

3. Pedoman Peskroan : Terlampir

Mengetahui ;

Kepala SMK Bina Islam Mandiri

Kersana, Juli 2016

Guru Mata Pelajaran

KASLANI, S.PdNIP. 19740309 201001 1 002

Akhmad Ponirin, S.Kom

Page 5: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Lampiran 1BAHAN AJAR

Kompetensi : Bahan AjarSatuan Pendidikan : SMK Bina Islam Mandiri KersanaKelas/Semester : X/IMata Pelajaran : Pemrograman DasarPertemuan ke : 1 – 4Alokasi waktu : 8 x 45

A. Kompetensi DasarMenerapkan Penggunaan Tipe Data, Variabel, Konstanta, Operator dan Ekspresi

B. IndikatorDefenisi Tipe data, variabel, Konstanta, Operator dan Ekspresi

Pertemuan 1

Pengertian Tipe Data, variabel, dan KonstantaVariabel, konstanta dan tipe data merupakan tiga hal yang akan selalu kita jumpai ketika

kita membuat program. Bahasa pemrograman apapun dari yang paling sederhana sampai yangpaling kompleks, mengharuskan kita untuk mengerti ketiga hal tersebut.

Tipe Data Adalah adalah jenis data yang dapat diolah oleh komputer untuk memenuhi kebutuhan

dalam pemrograman komputer. Setiap variabel atau konstanta yang ada dalam kode program,sebaiknya kita tentukan dengan pasti tipe datanya. Ketepatan pemilihan tipe data pada variabelatau konstanta akan sangat menentukan pemakaian sumberdaya komputer (terutama memorikomputer). Salah satu tugas penting seorang programmer adalah memilih tipe data yang sesuaiuntuk menghasilkan program yang efisien dan berkinerja tinggi

KonstantaAdalah variabel yang nilai datanya bersifat tetap dan tidak bisa diubah. Jadi konstanta

adalah juga variabel bedanya adalah pada nilai yang disimpannya. Jika nilai datanya sepanjangprogram berjalan tidak berubah-ubah, Maka sebuah varibel lebih baik diperlakukan sebagaikonstanta. Pada sebuah kode program, biasanya nilai data dari konstanta diberikan langsungdibagian deklarasi konstanta. Sedangkan untuk variabel biasanya hanya ditentukan nama variabeldan tipe datanya tanpa isian nilai data. Aturanpena maan variabel juga berlaku untuk penamaankonstanta. Demikian juga aturan penetapan tipe data.

Variabeladalah tempat dimana kita dapat mengisi atau mengosongkan nilainya dan memanggil

kembali apabila dibutuhkan.Pada sebagian besar bahasa pemrograman, variabel harus dideklarasikan lebih dulu untuk

mempermudah compiler bekerja. Apabila variabel tidak dideklarasikan maka setiap kali compilerbertemu dengan variabel baru pada kode program akan terjadi waktu tunda karena compilerharus membuat variabel baru. Hal ini memperlambat proses kerja compiler. Bahkan padabeberapa bahasa pemrograman, compiler akan menolak untuk melanjutkan proses kompilasi.Pemberian nama variabel harus mengikuti aturan yang ditetapkan oleh bahasa pemrogramanyang kita gunakan. Namun secara umum ada aturan yang berlaku untuk hampir semua bahasapemrograman. Aturan-aturan tersebut yaitu: Nama variabel harus diawali dengan huruf. Tidak boleh menggunakan spasi pada satu nama variabel. Spasi bisa diganti dengan karakter

underscore (_). Nama variabel tidak boleh mengandung karakter-karakter khusus, seperti : .,+, -, *, /, <, >, &,

(, ) dan lain-lain. Nama variabel tidak boleh menggunakan kata-kata kunci d bahasa Pemrograman.

Page 6: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Contoh penamaan variabel.Penamaan yang benar Penamaan yang salah Keterangan namasiswa XY12 harga_total JenisMotor

nama siswa12XYharga.totalJenis Motor

(salah karena menggunakan spasi) (salah karena dimulai dengan angka) (salah karena menggunakan karakter) (salah karena menggunakan spasi)

Pertemuan 2Tipe DataTipe data adalah jenis data yang dapat diolah oleh komputer untuk memenuhi kebutuhan dalampemrograman komputer. Setiap variabel atau konstanta yang ada dalam kode program, sebaiknyakita tentukan dengan pasti tipe datanya. Ketepatan pemilihan tipe data pada variabel ataukonstanta akan sangat menentukan pemakaian sumberdaya komputer (terutama memorikomputer). Salah satu tugas penting seorang programmer adalah memilih tipe data yang sesuaiuntuk menghasilkan program yang efisien dan berkinerja tinggi. Ada banyak tipe data yangtersedia tergantung jenis bahasa pemrograman yang dipakai.

Namun secara umum dapat dikelompokkan seperti pada Gambar 5.2.

Gambar 5.2. Pengelompokkan tipe data

Keterangan :- Tipe data primitive adalah tipe data dasar yang tersedia secara langsung pada suatu bahasa

pemrograman. - Sedangkan tipe data composite adalah tipe data bentukan yang terdiri dari dua atau lebih tipe

data primitive.

Page 7: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Tipe Data primitive terdiri dari beberapa tipe data:1. Tipe data numeric

Tipe data numeric digunakan pada variabel atau konstanta untuk menyimpan nilai dalambentuk bilangan atau angka. Semua bahasa pemrograman menyediakan tipe data numeric,hanya erbeda dalam jenis numeric yang diakomodasi. Jenis yang termasuk dalam tipe datanumeric antara lain integer (bilanganbulat), dan float (bilangan pecahan). Selain jenis, dalambahasa pemrograman juga diterapkan presisi angka yang digunakan, misalnya tipe dataSingle adalah tipe data untuk bilangan pecahan dengan presisi yang terbatas, sedangkan tipedata Double adalah tipe data untuk bilangan pecahan dengan presisi yang lebih akurat.

2. CharacterBersama dengan tipe data numeric, character merupakan tipe data yang paling banyakdigunakan. Tipe data character kadang disebut sebagai char atau string. Tipe data stringhanya dapat digunakan menyimpan teks atau apapun sepanjang berada dalam tanda petikdua (“…”) atau petik tunggal (‘…’).

3. BooleanTipe data Boolean digunakan untuk menyimpan nilai True/False (Benar/Salah). Padasebagian besar bahasa pemrograman nilai selain 0 menunjukkan True dan 0 melambangkanFalse. Tipe data ini banyak digunakan untuk pengambilan keputusan pada strukturpercabangan dengan IF … THEN atau IF … THEN … ELSE

Pertemuan 3Array

Array atau sering disebut sebagai larik adalah tipe data yang sudah terstruktur denganbaik, meskipun masih sederhana. Array mampu menyimpan sejumlah data dengan tipe yangsama (homogen) dalam sebuah variabel. Setiap lokasi data array diberi nomor indeks yangberfungsi sebagai alamat dari data tersebut. Penjelasan tentang array akan disampaikan lebihdetil pada bagian lain dari bab ini.

Record atau Struct Seperti halnya Array, Record atau Struct adalah termasuk tipe data komposit. Record

dikenal dalam bahasa Pascal/Delphi sedangkan Struct dikenal dalam bahasa C++. Berbedadengan array, tipe data record mampu menampung banyak data dengan tipe data berbeda-beda(heterogen). Sebagai ilustrasi array mampu menampung banyak data namun dengan satu tipedata yang sama, misalnya integer saja. Sedangkan dalam record, kita bisa menggunakan untukmenampung banyak data dengan tipe data yang berbeda, satu bagian integer, satu bagian lagicharacter, dan bagian lainnya Boolean.

Biasanya record digunakan untuk menampung data suatu obyek. Misalnya, siswamemiliki nama, alamat, usia, tempat lahir, dan tanggal lahir. Nama akan akan menggunakan tipedata string, alamat bertipe data string, usia bertipe data single (numeric), tempat lahir bertipe datastring dan tanggal lahir bertipe data date.

Berikut ini contoh pendeklarasian record dalam Delphi. Contoh 5.5. Deklarasi tipe data record pada Delphi. Type TRecord_Siswa = RecordNama_Siswa : String[30]Alamat : String[50]Usia : RealEndRecordImage

Ket :Image atau gambar atau citra merupakan tipe data grafik. Misalnya grafik perkembangan jumlahsiswa SMK, foto keluarga kita, video perjalanan dan lain-lain. Pada bahasa-bahasa pemrogramanmodern terutama yang berbasis visual tipe data ini telah didukung dengan sangat baik.

Date Time

Page 8: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Nilai data untuk tanggal (Date) dan waktu (Time) secara internal disimpan dalam formatyang pesifik. Variabel atau konstanta yang dideklarasikan dengan tipe data Date dapatdigunakan untuk menyimpan baik tanggal maupun jam. Tipe data ini masuk dalam kelompoktipe data composite karena merupakan bentukan dari beberapa tipe data.

Berikut ini contoh tipe data dalam Visual Basic.Dim WaktuLahir As DateWaktuLahir = “01/01/1997”WaktuLahir = “13:03:05 AM”WaktuLahir = “02/23/1998 13:13:40 AM”WaktuLahir = #02/23/1998 13:13:40 AM#Tipe data lain

SubrangeTipe data subrange merupakan tipe data bilangan yang mempunyai jangkauan nilai tertentu

sesuai dengan yang ditetapkan programmer. Biasanya tipe data ini mempunyai nilai batasminimum dan nilai batas maksimum. Tipe data ini didukung dengan sangat baik dalam Delphi.Berikut ini contoh deklarasi tipe data subrange dalam Delphi.

Contoh 5.7. Deklarasi tipe data subrange pada Delphi.TypeBatasIndeks = 1..20RentangTahun = 1950..2030VarIndeks : BatasIndeksTahun : RentangTahun

EnumerasiTipe data ini merupakan tipe data yang mempunyai elemen-elemen yang harus disebut

satu persatu dan bernilai konstanta integer sesuai dengan urutannya. Nilai konstanta integerelemen ini diwakili oleh suatu nama variable yang ditulis di dalam kurung. Tipe data ini jugadijumpai pada Delphi dan bahasa pemrograman deklaratif seperti SQL.

Berikut ini contoh deklarasi tipe data enumerasi dalam Delphi. Contoh 5.8. Penggunaan tipe data enumerasi.Type Hari_dlm_Minggu = (Nol, Senin, Selasa, Rabu,Kamis, Jumat, Sabtu, Minggu)Nama_Bulan = (Nol, Januari, Pebruari, Maret, April, Mei, Juni, Juli, Agustus,September, Oktober, Nopember, Desember)Var No_Hari : Hari_dlm_MingguNo_Bulan : Nama_BulanPada contoh di atas tipe data Hari_dlm_Minggu termasuk enumerasi dengan rentang nilai

Nol, Senin sampai dengan Minggu dan nilai data dari 0, 1, sampai dengan 7. Sedangkan tipe dataNama_Bulan termasuk enumerasi dengan rentang nilai Nol, Januari sampai dengan Desemberdan nilai data dari 0, 1, sampai dengan 12

ObjectTipe data object digunakan untuk menyimpan nilai yang berhubungan dengan obyek-obyek

yang disediakan oleh Visual Basic, Delphi dan dan bahasa pemrograman lain yang berbasis GUI.Sebagai contoh, apabila kita mempunyai form yang memiliki control Command button yang kitaberi nama Command1, kita dapat mendeklarasikan variabel sebagai berikut :

Contoh 5.9. Penggunaan tipe data object.Dim A As CommandButtonSet A = Command1A.Caption = “HEY!!!”A.FontBold = TruePada contoh ini variabel A dideklarasikan bertipe data Object yaitu CommandButton.

Kemudian kita set variabel A dengan control Command button yang ada pada form(Command1). Dengan cara ini kita dapat mengakses seluruh property, method dan event obyekCommand1 dengan menggunakan variabel A.

Variant

Page 9: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Tipe data hanya ada di Visual Basic. Tipe ini adalah tipe data yang paling fleksibel diantara tipe data yang lain, karena dapat mengakomodasi semua tipe data yang lain seperti telahdijelaskan.

Pertemuan 4Contoh-contoh program di dalam menggunakan variabel, konstanta.a. Mencari Luas segitiga

Perhatikan algoritma sederhana berikutMulai Baca data alas dan tinggi.Luas adalah alas kali tinggi kali 0.5Tampilkan LuasStopKeterangan :Algoritma di atas adalah algoritma yang sangat sederhana, hanya ada lima langkah. Padaalgoritma ini tidak dijumpai perulangan ataupun pemilihan. Semua langkah dilakukan hanyasatu kali. Sekilas algoritma di atas benar, namun apabila dicermati maka algoritma inimengandung kesalahan yang mendasar, yaitu tidak ada pembatasan pada nilai data untukalas dan tinggi. Bagaimana jika nilai data alas atau tinggi adalah bilangan 0 atau bilangannegatif ? Tentunya hasil yang keluar menjadi tidak sesuai dengan yang diharapkan. Dalamkasus seperti ini kita perlu menambahkan langkah untuk memastikan nilai alas dan tinggimemenuhi syarat, misalnya dengan melakukan pengecekan pada input yang masuk. Apabilainput nilai alas dan tinggi kurang dari 0 maka program tidak akan dijalankan. Sehinggaalgoritma di atas dapat dirubah menjadi seperti contoh berikut.

Hasil perbaikan algoritma perhitungan luas segitigaStartBaca data alas dan tinggi.Periksa data alas dan tinggi, jika nilai data alas dan tinggi lebih besar dari nol makalanjutkan ke langkah ke 4 jika tidak maka stopLuas adalah alas kali tinggi kali 0.5Tampilkan Luas StopKeterangan :Dari penjelasan di atas dapat diambil kesimpulan pokok tentang algoritma. Pertama,

algoritma harus benar. Kedua algoritma harus berhenti, dan setelah berhenti, algoritmamemberikan hasil yang benar

b. Program sederhana dalam PseudocodePseudocodePseudocode mirip dengan SE. Karena kemiripan ini kadang-kadang SE dan Pseudocode

dianggap sama. Pseudo berarti imitasi atau tiruan atau menyerupai, sedangkan code menunjukpada kode program. Sehingga pseudocode adalah kode yang mirip dengan instruksi kodeprogram sebenarnya. Pseudocode didasarkan pada bahasa pemrograman yang sesungguhnyaseperti BASIC, FORTRAN atau PASCAL. Pseudocode yang berbasis bahasa PASCALmerupakan pseudocode yang sering digunakan. Kadang-kadang orang menyebut pseudocodesebagai PASCAL-LIKE algoritma.

Contoh Program sederhana dengan pseudocde1. Start2. 2. READ alas, tinggi3. 3. Luas = 0.5 * alas * tinggi4. 4. PRINT Luas5. 5. StopKeterangan:Pada Contoh tampak bahwa algoritma sudah sangat mirip dengan bahasa BASIC. Pernyataan

seperti READ dan PRINT merupakan keyword yang ada pada bahasa BASIC yang masing-masing menggantikan kata “baca data” dan “tampilkan”. Dengan menggunakan pseudocodeseperti di atas maka proses penterjemahan dari algoritma ke kode program menjadi lebih mudah.

Page 10: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan
Page 11: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Lampiran 2INSTRUMEN TES URAIAN

Kompetensi : PengetahuanSatuan Pendidikan : SMK Bina Islam Mandiri KersanaKelas/Semester : X/IMata Pelajaran : Pemrograman DasarPertemuan ke : 1 – 4Alokasi waktu : 8 x 45

A. Kompetensi DasarMenerapkan Penggunaan Tipe Data, Variabel, Konstanta, Operator dan Ekspresi

B. IndikatorDefenisi Tipe data, variabel, Konstanta, Operator dan Ekspresi

a. Soal1. Tuliskan pengertian Tipe Data2. Tuliskan pengertian Variabel !3. Tuliskan pengertian Konstanta4. Gambarkan macam-macam Tipe Data !5. Buat sebuah program sederhana dengan menggunakan variabel !

b. Kunci Jawaban1. Tipe data adalah jenis data yang dapat diolah oleh komputer untuk memenuhi

kebutuhan dalam pemrograman komputer. Setiap variabel atau konstanta yang ada dalamkode program, sebaiknya kita tentukan dengan pasti tipe datanya. Ketepatan pemilihantipe data pada variabel atau konstanta akan sangat menentukan pemakaian sumberdayakomputer (terutama memori komputer). Salah satu tugas penting seorang programmeradalah memilih tipe data yang sesuai untuk menghasilkan program yang efisien danberkinerja tinggi

2. Variabel adalah tempat dimana kita dapat mengisi atau mengosongkan nilainya danmemanggil kembali apabila dibutuhkan.

3. Konstanta adalah variabel yang nilai datanya bersifat tetap dan tidak bisa diubah. Jadikonstanta adalah juga variabel bedanya adalah pada nilai yang disimpannya. Jika nilaidatanya sepanjang program berjalan tidak berubah-ubah, Maka sebuah varibel lebih baikdiperlakukan sebagai konstanta. Pada sebuah kode program, biasanya nilai data darikonstanta diberikan langsung dibagian deklarasi konstanta. Sedangkan untuk variabelbiasanya hanya ditentukan nama variabel dan tipe datanya tanpa isian nilai data.

4. Gambar skema macam-macam tipe data

5. Contoh program sederhana dengan menggunakan variabel :#include <iostream>using namespace std;int main() {int x, z

Page 12: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

float y;x = 12;y = 2.15;z = x * y;cout << "X =" << x << endl;cout << "Y =" << y << endl;cout << "Z =" << z << endl;return 0; }

Hasil EksekusiX =12Y =2.15Z =25

c. Penskoran Pedoman Penilaian :Konversi Nilai = Jumlah Skor x 20,Jumlah Skor maksimal 20, maka 5 x 20 = 100

Page 13: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Lampiran 3LEMBAR PENGAMATAN SIKAP

Kompetensi : SikapSatuan Pendidikan : SMK Bina Islam Mandiri KersanaKelas/Semester : X/IMata Pelajaran : Pemrograman DasarPertemuan ke : 1 – 4Alokasi waktu : 8 x 45

Nomor peserta didik : .......................................................Nama Absen Peserta didik : .........................................................

1. Kompetensi dasar :Berlaku jujur dan bertanggung jawab dalam mengerjakan tugas-tugas dari dalampembelajaran Pemrograman Dasar.

2. Indikator1. Peserta didik dapat berperilaku jujur dalam menyalin informasi dari buku sumber2. Peserta didik dapat bertanggung jawab dalam mengerjakan tugas.3. Peserta didik dapat berperilaku disiplin dalam mengumpulkan tugas4. Peserta didik dapat menunjukkan kerja sama dalam belajar Pemrograman dasar.5. Peserta didik dapt berperilaku santun dalam belajar.

No. Sikap Kriteria HasilYa Tidak

1. Jujur 1. Melaporkan data/informasi sesuaidengan apa yang dibaca.

2. Menyampaikan pendapat disertaidengan informasi dari buku sumberyang diterima

2. Tanggung jawab 1. Melaksanakan tugas sesuai denganperintah guru

2. Menyelesaikan tugas sampai selesai.3. Disiplin Melaksanakan dan menyelesaikan tugas

sesuai dengan waktu yang ditetapkan.4. Bekerja sama Menghargai pekerjaan teman dan berperan

aktif dalam menyelesaikan tugaskelompok.

5. Santun 1. Menyampaikan pendapat denganbahasa dan nada yang baik.

2. Menghargai adanya perbedaanpendapat.

Page 14: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Lampiran 4LEMBAR PENGAMATAN KETERAMPILAN/PSIKOMOTOR

Kompetensi : KeterampilanSatuan Pendidikan : SMK Bina Islam Mandiri KersanaKelas/Semester : X/IMata Pelajaran : Pemrograman DasarPertemuan ke : 1 – 4Alokasi waktu : 8 x 45

A. Kompetensi DasarMenerapkan Penggunaan Tipe Data, Variabel, Konstanta, Operator dan Ekspresi

B. IndikatorDefenisi Tipe data, variabel, Konstanta, Operator dan Ekspresi

Isilah dengan tanda centang (√) apabila seorang siswa melakukan aktivitas !No.

NamaAspek keterampilan *)

Nilai **)1 2 3 4 5

*) Keterangan: **) Keterangan1. Aktifitas bertanya 1. Sangat Terampil, jika 5 keaktifan2. Aktifitas menjawab 2. Terampil, jika 4 keaktifan3. Aktifitas mencatat 3. Cukup Terampil, jika 3 keaktifan4. Akurasi jawaban 4. Kurang Terampil, jika 2 keaktifan5. Akurasi pertanyaan 5. Tidak Terampil, jika 1 keaktifan

Page 15: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

RENCANA PELAKSANAAN PEMBELAJARAN ( RPP )

Mata Pelajaran : Pemrograman DasarKelas / Semester : X / 1Pertemuan : 5 - 10Alokasi Waktu : 12 x 45 MenitStandar Kompetensi : Menerapkan Pemrograman DasarKarakter Bangsa yang diharapkan : Disiplin, Kreatif, Mandiri, Tanggung Jawab, Kerja

sama.

A. Kompetensi Inti1. Menghayati dan mengamalkan ajaran agama yang dianutnya 2. Mengembangkan perilaku (jujur, disiplin, tanggung jawab, peduli, santun, ramah

lingkungan, gotong royong, kerjasama, cinta damai, responsif dan proaktif) danmenunjukkan sikap sebagai bagian dari solusi atas berbagai permasalahan bangsa dalamberinteraksi secara efektif dengan lingkungan sosial dan alam serta dalam menempatkandiri sebagai cerminan bangsa dalam pergaulan dunia

3. Memahami, menerapkan, menganalisis pengetahuan faktual, konseptual, proseduralberdasarkan rasa ingin tahunya tentang ilmu pengetahuan, teknologi, seni, budaya, danhumaniora dengan wawasan kemanusiaan, kebangsaan, kenegaraan, dan peradabanterkait fenomena dan kejadian, serta menerapkan pengetahuan prosedural pada bidangkajian yang spesifik sesuai dengan bakat dan minatnya untuk memecahkan masalah.

4. Mengolah, menalar, menyaji, dan mencipta dalam ranah konkret dan ranah abstrak terkaitdengan pengembangan dari yang dipelajarinya di sekolah secara mandiri, dan mampumenggunakan metoda sesuai kaidah keilmuan.

B. Kompetensi Dasar dan Indikator3.6 Menerapkan Struktur kontrol percabangan dalam bahasa pemrograman

a. Membuat Struktur kontrol percabangan, b. Membuat Percabangan 1 kondisic. Membuat Percabangan 2 kondisid. Membuat Percabangan lebih dari 2 kondisi

4.6 MenggunakanStruktur Kontrol percabangan dengan percabangan 1 kondisi, danpercabangan 2 kondisia. Menggunakan struktur kontrol percabanganb. Menggunakan percabangan dengan 1 kondisic. Menggunakan percabangan dengan 2 kondisi

C. Tujuan Pembelajarana. Dapat mengetahui defenisi percabanganb. Dapat mengetahui fungsi dari percabangan 1 kondisi dengan 2 kondisic. Dapat membuat sebuah program sederhana dengan menggunakan percabangan

D. Materi Ajar a. Struktur kontrol percabanganb. Percabangan 1 kondisic. Percabangan 2 kondisid. Percabangan lebih dari 2 kondisi

E. Metode Pembelajaran1. Penyampaian 2. Tanya jawab3. Tes Program4. Praktek

F. Sumber pembelajaran1. Buku Algoritma dan Pemrograman Pascal2. Internet3. Modul produktif, Buku Algoritma dan pemograman tingkat Dasar.

Page 16: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

G. Langkah – langkah Pembelajaran Pertemuan 5 – 7

Kegiatan Deskripsi AlokasiWaktu

A. Pendahuluan 1. Siswa menjawab sapaan guru, berdoa, danmengondisikan diri siap belajar

2. Guru dan siswa bertanya jawab berkaitandengan identitas diri yang dibutuhkan sebagai warganegara yang baik.

3. Guru menyampaikan tujuan pembelajaran4. Guru memotivasi siswa agar semakin giat

belajar

45 Menit

B. Inti Mengamati :1. Siswa mengamati dan mendengarkan penjelasan

tentang struktur kontrol percabangan.2. Siswa mengamati dan mendengarkan penjelasan

mengenai percabangan 1 kondisi.3. Siswa mengamati dan mendengarkan penjelasan

mengenai percabangan 2 kondisi.

Menanya :1. Siswa berdikusi menganalisa tentang percabangan.2. Siswa berdikusi menganalisa tentang percabangan

1 kondisi.3. Siswa berdikusi menganalisa tentang percabangan

2 kondisi.

Mengeksplorasi:1. Siswa membuat kode program menggunakan

percabangan 1 kondisi, 2 kondisi, lebih dari 2kondisi dan percabangan bersarang.

2. Siswa melakukan kompilasi, eksekusi danperbaikan pada kesalahan-kesalahan yang terdapatdalam program.

Mengasosiasi:1. Siswa membuat sebuah kesimpulan tentang

penggunaan percabangan 1 kondisi, 2 kondisi,lebih dari 2 kondisi dan percabangan bersarang.

Mengkomunikasikan:Siswa membuat sebuah laporan danmempresentasikan hasil dari sebuah programsederhana.

180 Menit

C. Penutup 1. Mereview kembali materi yang telah disampaikan2. Siswa mengerjakan evaluasi3. Siswa saling memberikan umpan balik hasil

evaluasi pembelajaran yang telah dicapai.

15

Pertemuan 8 – 10Kegiatan Deskripsi Alokasi

WaktuA. Pendahuluan 1. Siswa menjawab sapaan guru, berdoa, dan

mengondisikan diri siap belajar2. Guru dan siswa bertanya jawab berkaitan dengan

identitas diri yang dibutuhkan sebagai warganegara yang baik.

3. Guru menyampaikan tujuan pembelajaran

45 Menit

45 Menit

Page 17: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

4. Guru memotivasi siswa agar semakin giat belajarB. Inti Mengamati :

4. Siswa mengamati dan mendengarkan penjelasan tentang struktur kontrol percabangan.

5. Siswa mengamati dan mendengarkan penjelasan mengenai percabangan 1 kondisi.

6. Siswa mengamati dan mendengarkan penjelasan mengenai percabangan 2 kondisi.

Menanya :1. Siswa berdikusi menganalisa tentang percabangan.2. Siswa berdikusi menganalisa tentang percabangan

1 kondisi.3. Siswa berdikusi menganalisa tentang percabangan

2 kondisi.

Mengeksplorasi:1. Siswa membuat kode program menggunakan

percabangan 1 kondisi, 2 kondisi, lebih dari 2kondisi dan percabangan bersarang.

2. Siswa melakukan kompilasi, eksekusi danperbaikan pada kesalahan-kesalahan yang terdapatdalam program.

Mengasosiasi:1. Siswa membuat sebuah kesimpulan tentang

penggunaan percabangan 1 kondisi, 2 kondisi,lebih dari 2 kondisi dan percabangan bersarang.

Mengkomunikasikan:1. Siswa membuat sebuah laporan dan

mempresentasikan hasil dari sebuah programsederhana.

180 Menit

C. Penutup 1. Mereview kembali materi yang telah disampaikan2. Siswa mengerjakan evaluasi3. Siswa saling memberikan umpan balik hasil

evaluasi pembelajaran yang telah dicapai.

16

H. Alat Pembelajaran1. Laptop2. Infocus3. Komputer

I. Penilaian1. Teknik penilaian : Test tertulis2. Bentuk Instrumen dan Instumrn

a. Bentuk Instrumen : Tes Uraianb. Instrumen : Terlampir

3. Pedoman Peskroan : Terlampir

Mengetahui ;

Kepala SMK Bina Islam Mandiri

Kersana, Juli 2016

Guru Mata Pelajaran

KASLANI, S.PdNIP. 19740309 201001 1 002

Akhmad Ponirin, S.Kom

45 Menit

Page 18: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan
Page 19: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Lampiran 1BAHAN AJAR

Kompetensi : Bahan AjarSatuan Pendidikan : SMK Bina Islam Mandiri KersanaKelas/Semester : X/IMata Pelajaran : Pemrograman DasarPertemuan ke : 5 - 10Alokasi waktu : 12 x 45A. Kompetensi Dasar

a. Menerapkan Struktur kontrol percabangan dalam bahasa pemrograman

B. Indikator 1. Membuat Struktur kontrol percabangan, 2. Membuat Percabangan 1 kondisi3. Membuat Percabangan 2 kondisi4. Membuat Percabangan lebih dari 2 kondisi

PERTEMUAN 5Struktur Algoritma Pemrograman

Sebelum memasuki materi tentang percabangan, terlebih dahulu kita harus mengetahuiapa itu algoritma?

Pengertian AlgoritmaAlgoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun

secara sistematis. Masalah dapat berupa apa saja, dengan catatan untuk setiap masalah, adasyarat kondisi awal yang harus dipenuhi sebelum menjalankan algoritma. Konsep algoritmasering kali disetarakan dengan sebuah resep. Sebuah resep biasanya memiliki daftar bahan ataubumbu yang akan digunakan, urutan pengerjaan dan bagaimana hasil dari urutan pengerjaantersebut. Apabila bahan yang digunakan tidak tertera (tidak tersedia) maka resep tersebut tidakakan dapat dikerjakan. Demikian juga jika urutan pengerjaannya tidak beraturan, maka hasilyang diharapkan tidak akan dapat diperoleh. Algoritma yang berbeda dapat diterapkan padasuatu masalah dengan syarat yang sama. Tingkat kerumitan dari suatu algoritma merupakanukuran seberapa banyak komputasi yang dibutuhkan algoritma tersebut untuk menyelesaikanmasalah. Umumnya, algoritma yang dapat menyelesaikan suatu permasalahan dalam waktu yangsingkat memiliki tingkat kerumitan yang rendah, sementara algoritma yang membutuhkan waktulama untuk menyelesaikan suatu masalah membutuhkan tingkat kerumitan yang tinggi.Perhatikan algoritma sederhana berikut:Mulai 2. Baca data alas dan tinggi.3. Luas adalah alas kali tinggi kali 0.54. Tampilkan Luas5. Stop

Keterangan :Algoritma di atas adalah algoritma yang sangat sederhana, hanya ada lima langkah. Pada

algoritma ini tidak dijumpai perulangan ataupun pemilihan. Semua langkah dilakukan hanya satukali. Sekilas algoritma di atas benar, namun apabila dicermati maka algoritma ini mengandungkesalahan yang mendasar, yaitu tidak ada pembatasan pada nilai data untuk alas dan tinggi.

Bagaimana jika nilai data alas atau tinggi adalah bilangan 0 atau bilangan negatif ?Tentunya hasil yang keluar menjadi tidak sesuai dengan yang diharapkan. Dalam kasus sepertiini kita perlu menambahkan langkah untuk memastikan nilai alas dan tinggi memenuhi syarat,misalnya dengan melakukan pengecekan pada input yang masuk. Apabila input nilai alas dantinggi kurang dari 0 maka program tidak akan dijalankan.

Struktur Algoritma PercabanganSebuah program tidak selamanya akan berjalan dengan mengikuti struktur berurutan,

kadang-kadang kita perlu merubah urutan pelaksanaan program dan menghendaki agarpelaksanaan program meloncat ke baris tertentu. Peristiwa ini kadang disebut sebagaipercabangan/pemilihan atau keputusan. Hal ini seperti halnya ketika mobil berada dalampersimpangan seperti pada

Page 20: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Pada struktur percabangan, program akan berpindah urutan pelaksanaan jika suatukondisi yang disyaratkan dipenuhi. Pada proses seperti ini simbol flowchart Decision harusdigunakan. Simbol decision akan berisi pernyataan yang akan diuji kebenarannya. Nilai hasilpengujian akan menentukan cabang mana yang akan ditempuh.

Contoh 5.15. Struktur percabangan untuk masalah batasan umur. Sebuah aturan untukmenonton sebuah film tertentu adalah sebagai berikut, jika usia penonton lebih dari 17 tahunmaka penonton diperbolehkan dan apabila kurang dari 17 tahun maka penonton tidakdiperbolehkan nonton.

PERTEMUAN 6Pencarian Data dalam ArraySalah satu permasalahan yang sering dijumpai dalam array adalah bagaimana mencari

elemen tertentu dari array. Misalnya pada kasus loker pada Gambar 5.21 di atas tersedia 100kotak. Kemudian kita diminta untuk mencari nomor kotak keberapa yang dimiliki oleh seorangsiswa bernama “Rudi”. Contoh yang lain, misalkan ada banyak siswa dalam satu sekolah dankita diminta mencari data seorang siswa dengan nama tertentu atau alamat tertentu.

Perhatikan contoh berikut.Contoh 5.24. Pencarian pada array. Pada contoh ini kita diminta mencari elemen yang berisi angka 12 dari sekumpulan

elemen dalam array. Ada 6 elemen pada array tersebut. Menurut kalian bagaimanakah algoritmapenyelesaiannya?

Cara yang paling umum dan paling mudah dilakukan adalah dengan cara pencarianberurutan (linear search). Pada masa lalu cara ini dianggap tidak efisien karena membutuhkanwaktu lama. Namun dengan perkembangan komputer yang sangat cepat, waktu eksekusialgoritma ini tidak terlalu dipermasalahkan. Cara ini dilakukan dengan cara membandingkan isidari elemen dengan apa yang kita cari. Satu per satu dimulai dari elemen yang paling awal.Apabila kita terapkan pada Contoh 5.24, maka eksekusi program akan berlangsung berurutansebagai berikut :

Tetapkan bilangan yang ingin kita cari (yaitu 12) Ambil elemen paling awal (yaitu A[0]), bandingkan isi elemen tersebut (yaitu 23) dengan

bilangan yang kita cari. Jika sama maka stop. Jika tidak maka lanjutkan dengan elemen berikutnya (yaitu A[1]), bandingkan isi elemen

tersebut dengan bilangan yang kita cari. Jika sama maka stop. Jika tidak maka lanjutkan dengan elemen berikutnya. Dan seterusnya sampai dijumpai

elemen yang berisi sama dengan bilangan yang kita cari.

Deklarasi Array Array adalah struktur data yang statik, yaitu jumlah elemen array harus sudah diketauisebelum program dieksekusi.Macam-macam array terdiri atas :a. Array 1 dimensi dituliskan :

Variabel [ indeks ]b. Array 2 dimensi dituliskan :

Variabel [ indeks1, indeks2 ]c. Array 3 dimensi dituliskan :

Variabel [ indeks1, indeks2, indeks3 ]Syntax :

Variabel [ indeks ]Variabel [ indeks1, indeks2 ]Variabel [ indeks1, indeks2, indeks3 ]

DeklarasiVar

< Nama Array = array [indeks] of tipe data;

Page 21: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

< Nama Array = array [indeks1, indeks2] of tipe data;tipe data;

< Nama Array = array [indeks1, indeks2, indeks3] of tipe data;of tipe data;

Contoh :1. Bentuk Pertama sebagai variabel

DeklarasiNilai : Array [ 1..15] of integerNama : Array [ ‘A’..’Z’] of string

2. Bentuk Kedua sebagai tipe baruDeklarasi

TypeNilai : Array [ 1..100 ] of real

VarX : NilaiAtau

X : Array [ 1.. 100 ] of real

3. Bentuk Ketiga dengan ukuran maksimum elemen larik sebagai sebuah konstantaDeklarasi

Const max : 100Type

Nilai : Array [ 1..max ] of realVar

X : NilaiAtau

X : Array [1..100 ] of real

PERTEMUAN 7PERCABANGAN 1 KONDISI

Penggunaan Larik dengan percabangan 1 kondisiArray (larik) dibutuhkan apabila suatu proses memerlukan penyimpanan sementara data yangbertipe sama dalam memori, untuk selanjutnyauntuk selanjutnya data tersebut dimanipulasi,dihitung, atau diterapkan proses lainnya. Dengan array dapat menghemat penggunaan nama-nama variabel yang banyak. Variabel dapat dibagi menjadi 2 yaitu :a. Variabel tunggal

Keseluruhan data yang di input akan disimpan pada satu tempat saja sehingga nantinyayang tersimpan data yang paling akhir. Contoh dalam bahas Pemrograman Pascal :Uses Crt;Var

I,n,x : integer;Procedure Inputan ( var x,n : integer);

BeginFor i := 1 to n doBegin

Write (’masukkan suku ke-’,i,’=’);Readln(x);

End;End;

Procedure Keluaran ( var x,n : integer);Begin

For i := 1 to n doWrite (‘x[’,i,’]=’,x);

End;

Page 22: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

BeginClrscr;Write(’Masukkan N (mak 100) :’);Readln(n);

Inputan(x,n);Writeln; Writeln;Keluaran(x,n);Readln;

End.

Jika Program ini dijalankan maka hasilnya Sebagai berikut :Masukkan N (mak 100) : ketikkan 5Masukkan suku ke-1 = 10Masukkan suku ke-2 = 15Masukkan suku ke-3 = 20Masukkan suku ke-4 = 25Masukkan suku ke-5 = 30

Hasilnya :X[1] = 30X[2] = 30X[3] = 30X[4] = 30X[5] = 30

b. Variabel berindeksData akan disimpan berdasarkan alamat dari suatu indeksnya.Contoh dalam Program Pascal :Uses Crt;Type

Latih = array [ 1..max ] of real;Var

X : latih;I,n : integer;

Procedure Inputan (masuk : latih; n : integer);Begin

For i := 1 to n doBeginWrite (’Masukkan suku ke-’,i, ’= ’);Readln(x [ i ]);End;End;Procedure Keluaran (cetak : latih; n : integer);BeginFor i := 1 to n doWrite (’x [‘,I,’ ] = x [ i ] :6:1);End;Begin

Clrscr;Write (‘Masukkan N (mak 100) : ‘);Readln(n);Inputan(x,n);Writeln; Writeln;Keluaran(x,n)

Readln;End.Jika Dijalankan maka hasilnya :Masukkan N (mak 100) : ketikkan 5Masukkan suku ke-1 = 10Masukkan suku ke-2 = 15

Page 23: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Masukkan suku ke-3 = 20Masukkan suku ke-4 = 25Masukkan suku ke-5 = 30

Hasilnya :X[1] =10X[2] = 15X[3] = 20X[4] = 25X[5] = 30

PERTEMUAN 7Larik 2 Dimensi

Misalkkan Matrik C ukuran 3x4 yang merupakan hasil penjumlahan dari Matrik Aukuran 3x4 dan Matrik B ukuran 3x4.

A=(a b c de f g hi j k l ) dan

B=(m n o pq r s tu v w x )

C=(a+m b+n c+o d+pe+q f +r g+s h+ ti+u j+v k+w l+x )

Maka algoritma dari permasalahan tersebut dapat dituliskan :Deklarasi

Type larik : Array [1..Indeks, 1..indeks2] of integerX : LarikN : Integer

Procedure Input_ArrayA(output x : Larik; Input M,N : integer);Deklarasi

I,j : integerDeskripsi

For I := 1 to m doFor J := 1 to n do

Read ( A[I,j])End for

Endfor

Procedure Input_ArrayB(output x : Larik; Input M,N : integer);Deklarasi

I,j : integerDeskripsi

For I := 1 to m doFor J := 1 to n do

Read ( B[I,j])End for

EndforProcedure Jumlah_Array(Input x : Larik; Input M,N : integer);Deklarasi

I,j : integerDeskripsi

For I := 1 to m doFor J := 1 to n doC[I,j] := A[I,j] + B[I,j]Write ( C[I,j] )

Page 24: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

End forEndfor

DeskripsiRead (N)Input_ArrayA(x,M,N)Input_ArrayB(x,M,N)Jumlah_Array(x,M,N)

Implementasinya dalam bahasa Pemrograman Pascal :Uses Crt;Type

Latih = array [ 1..10, 1..10] of integer;Var

I,j,n,m : Integer;A,B,C : latih;

Procedure InputA(var x : latih; m,n : integer);Begin

For I := 1 to m doBegin

For J := 1 to n doBegin

Write(‘Masukkan suku A[‘,I,’] = ‘);Raedln(A[I,j](;

End;End;

End;

Procedure InputB(var x : latih; m,n : integer);Begin

For I := 1 to m doBegin

For J := 1 to n doBegin

Write(‘Masukkan suku B[‘,I,’] = ‘);Raedln(B[I,j](;

End;End;

End;Procedure Keluaran(var x : latih; m,n : integer);Begin

For I := 1 to m doBegin

For J := 1 to n doBegin

C[I,j]:=A[I,j]+ B[I,j]Writeln(‘C[‘,I,’]=’, C[I,j]);

End;End;

End;Begin

Write(‘Masukkan m (mak 10) :’);Readln(m);Write(‘Masukkan n (mak 10) :’);Readln(n);InputA(a,m,n);InputB(a,m,n);Writeln; Writeln;Keluaran(c,m,n);

Page 25: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Readln;End.

Pengurutan Data pada ArrayPermasalahan lain dalam array yang juga banyak digunakan adalah bagaimana

mengurutkan elemen-elemen dari variabel array tersebut. Perhatikankembali Contoh 5.24. Padacontoh tersebut terlihat bahwa isi elemen-elemen dari array tidak dalam posisi berurutan.Bagaimanakah caranya agar isi elemenelemen tersebut terurut dari besar ke kecil atausebaliknya? Ada beberapa algoritma yang dapat digunakan untuk mengurutkan sekumpulanbilangan, antara lain bubble sort, selection sort, shell sort, quick sort, dan lain-lain. Pada buku inikita akan membahas satu algoritma yaitu bubble sort. Meskipun kinerjanya tidak sebaikalgoritma yang lain, algoritma ini mudah dimengerti dan banyak digunakan.

Operasi FileFile seringkali digunakan untuk menyimpan data agar data tidak hilang. Data atau yang

ada dan dihasilkan pada program akan hilang ketika program diakhiri, sehingga file digunakanuntuk menyimpan data tersebut. Ada dua jenis file yaitu file program dan file data. File programberisi kode-kode program sedangkan file data hanya berisi data. File data terdiri dari dua jenisyaitu file data berurutan (sequential data file) dan file data acak (random-access data file).

PERTEMUAN 8Algoritma Penulisan Data pada FileAlgoritma yang digunakan untuk penulisan data untuk file data berurutan maupun acak

secara rinsip sama, hanya modusnya yang berbeda. Berikut ini adalah algoritma penulisan data.Open “modus”, <buffer number>, “nama file data” Write <record number>, field 1, field 2, .. field nClose buffer number Modus O menunjukkan file ini dibuka untuk ditulisi. Contoh 5.25. Contoh Penerapan algoritma penulisan data.Misalkan kita punya file data dengan nama

“siswa.dat” yang field-nya adalah nama siswa, alamat, nomor telepon. Maka untuk menuliskandata adalah sebagai berikut :

Open “O”, #1, “siswa.dat”Write #1, <nama>, <alamat>, <no.telepon>Close #1 Notasi #1 menunjukkan siswa.dat akan ditempatkan dalam buffer no 1. Notasi ini harus sama digunakan di seluruh progam di atas. Artinya kalau kita menempatkan suatu file dengan nomor buffer #1 maka ketika

membuka, menulis, membaca dan menutup harus menggunakan notasi tersebut. Demikian jugabila kita menempatkan pada buffer no #2.

Algoritma Pembacaan Data pada FileAlgoritma membaca data algoritmanya hampir sama dengan menuliskan data, tetapi

modus yang digunakan tidak O tetapi I. I adalah input yang berarti file data dibuka untuk dibacadatanya sebagai input.

Berikut ini algoritmanya dalam SE.Open “modus”, <buffer number>, “nama file data”While not EOF:Input <record number>, field 1, field 2, ..field nPrint field 1, field 2, .. field nEnd whileClose buffer number

Pernyataan While Not EOF digunakan untuk memeriksa apakah sudah ada pada baristerakhir dari data. Jika belum maka baris-baris data akan dibaca dan dicetak sampai baristerakhir. Pernyataan input digunakan untuk mengambil data dari file untuk dimuat ke dalam

Page 26: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

program. Sedangkan Pernyataan print digunakan untuk mencetak data ke layar komputer.Contoh 5.26.

Contoh penerapan algoritma penulisan data. File data dengan nama “siswa.dat” sepertipada contoh 5.25 yang field-nya adalah nama siswa, alamat, nomor telepon. Maka untukmembaca data adalahsebagai berikut.

Open “I”, #2, “siswa.dat”While not EOF:Input #2, <nama>, <alamat>, <no.telepon>Print <nama>, <alamat>, <no.telepon>End whileClose buffer number

Contoh dalam bahasa pemrograman dasar :Uses Crt;Var

I,n,x : integer;Procedure Inputan ( var x,n : integer);

BeginFor i := 1 to n doBegin

Write (’masukkan suku ke-’,i,’=’);Readln(x);

End;End;

Procedure Keluaran ( var x,n : integer);Begin

For i := 1 to n doWrite (‘x[’,i,’]=’,x);

End;Begin

Clrscr;Write(’Masukkan N (mak 100) :’);Readln(n);

Inputan(x,n);Writeln; Writeln;Keluaran(x,n);Readln;

End.

PERTEMUAN 9Percabangan dengan 2 kondisiStruktur satu kondisi (perintah if)

Struktur ini merupakan struktur yang paling sederhana karena hanya melibatkan satubuah ekspresi akan diperiksa. Pada konstruksi perintah if, C++ tidak memiliki kata kunci(keyword) then.

Bentuk umum:if (kondisi) pernyataan;

atauif (kondisi){

statemen1; statemen2; …

}Contoh:

Page 27: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

if (detik == 60) menit = menit + 1;if (Angka %2 == 0) cout<<”Bilangan genap”;if (sisi > 0){

Luas = panjang * lebar; Isi = Luas*tinggi;

}

Keterangan :Kondisi digunakan untuk menentukan pengambilan keputusan, operator yang digunakan

adalah relational dan logical operators.Contoh program:#include <iostream.h>int main(){

int nilai;//memasukkan bilangan bulatcout<<”Masukkan sebuah bilangan bulat: “;cin>>nilai;//menampilkan teks jika nilai yang tersimpan lebih besar dari 0if (nilai > 0) cout<<“Nilai yang Anda masukkan adalah bilangan positif“;return 0; }Hasil eksekusi program di atas bersifat dinamis artinya tidak setiap proses eksekusi program

akan menghasilkan hasil yang sama. Jika user memasukkan angka lebih besar dari 0 makaprogram ini akan menampilkan teks “Nilai yang Anda masukkan adalah bilangan positif”. Selain itu kita juga omp nenggunakan operator || dan && dalam menentukan sebuah ekspresi.�Contoh program:#include <iostream.h>int main(){

int bilangan; char huruf;//memasukkan bilangan bulatcout<<”Masukkan sebuah bilangan bulat: “;cin>>bilangan;if ((bilangan > 0) && (bilangan < 10)) cout<<bilangan<<” lebih besar dari nol dan lebih kecil dari sepuluh”;//memasukkan hurufcout<<“\n“;cout<<”Masukkan sebuah huruf: “;cin>>huruf;if ((huruf == ‘A’) || (huruf == ‘a’) || (huruf == ‘I’) || (huruf == ‘i’) || (huruf == ‘U’) || (huruf == ‘u’) || (huruf == ‘E’) || (huruf == ‘e’) || (huruf == ‘O’) ||(huruf == ‘o’)){ cout<<huruf<<” adalah huruf ompu”;�}return 0;}

PERTEMUAN 10Penggunaan If MajemukStruktur dua kondisi (perintah if – else)

Struktur percabangan jenis ini sedikit lebih kompleks bila dibandingkan dengan strukturyang hanya memiliki satu kondisi. Konsep ini sangat sederhana yaitu pada struktur jenis ini

Page 28: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

terdapat sebuah statemen khusus yang berguna untuk mengatasi kejadian apabila kondisi yangdidefinisikan tersebut tidak terpenuhi (bernilai salah). Perintah ini memberikan satu omputere� ��dari dua kemungkinan.

Bentuk umum:if (kondisi){

statement_jika_kondisi_terpenuhi;}else{

statement_jika_kondisi_tidak_terpenuhi;}

Contoh:#include <iostream.h>int main(){

int nilai;//memasukkan bilangan bulatcout<<”Masukkan sebuah bilangan bulat: “;cin>>nilai;//pengecek bilangan apakah habis dibagi dua atau tidakif (nilai %2 == 0) { cout<<nilai<<“adalah bilangan genap“;}else{ cout<<nilai<<“adalah bilangan ganjil“;}return 0;

}

Contoh program:#include <iostream.h>int main(){

int nilai;//memasukkan bilangan bulatcout<<”Masukkan sebuah bilangan yang akan diperiksa: “;cin>>nilai;//pengecek bilangan apakah habis dibagi dua atau tidakif (nilai > 0) { cout<<nilai<<“ adalah bilangan positif“;}else if (nilai < 0){ cout<<nilai<<“ adalah bilangan omputer“;�}else{ cout<<“Anda memasukkan bilangan NOL“;}return 0;}

Contoh Program :

Page 29: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Implementasinya dalam bahasa Pemrograman Pascal :Uses Crt;Type

Latih = array [ 1..10, 1..10] of integer;Var

I,j,n,m : Integer;A,B,C : latih;

Procedure InputA(var x : latih; m,n : integer);Begin

For I := 1 to m doBegin

For J := 1 to n doBegin

Write(‘Masukkan suku A[‘,I,’] = ‘);Raedln(A[I,j](;

End;End;

End;Procedure InputB(var x : latih; m,n : integer);Begin

For I := 1 to m doBegin

For J := 1 to n doBegin

Write(‘Masukkan suku B[‘,I,’] = ‘);Raedln(B[I,j](;

End;End;

End;Procedure Keluaran(var x : latih; m,n : integer);Begin

For I := 1 to m doBegin

For J := 1 to n doBegin

C[I,j]:=A[I,j]+ B[I,j]Writeln(‘C[‘,I,’]=’, C[I,j]);

End;End;

End;Begin

Write(‘Masukkan m (mak 10) :’);Readln(m);Write(‘Masukkan n (mak 10) :’);Readln(n);InputA(a,m,n);InputB(a,m,n);Writeln; Writeln;Keluaran(c,m,n);Readln;

End.

Page 30: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Lampiran 2INSTRUMEN TES URAIAN

Kompetensi : PengetahuanSatuan Pendidikan : SMK Bina Islam Mandiri KersanaKelas/Semester : X/IMata Pelajaran : Pemrograman DasarPertemuan ke : 5 – 10Alokasi waktu : 12 x 45

C. Kompetensi Dasara. Menerapkan Struktur kontrol percabangan dalam bahasa pemrograman

D. Indikator 1. Membuat Struktur kontrol percabangan, 2. Membuat Percabangan 1 kondisi3. Membuat Percabangan 2 kondisi4. Membuat Percabangan lebih dari 2 kondisi

a. Soal1. Buatlah sebuah program sederhana !2. Tuliskan macam-macam array !3. Tuliskan struktur percabangan !4. Perhatikan gambar berikut : Tuliskan eksekusi dari skema tersebut.

b. Kunci jawaban1. Contoh Program sederhana:

#include <iostream.h>int main(){int nilai;//memasukkan bilangan bulatcout<<”Masukkan sebuah bilangan yang akan diperiksa: “;cin>>nilai;//pengecek bilangan apakah habis dibagi dua atau tidakif (nilai > 0) {cout<<nilai<<“ adalah bilangan positif“;}else if (nilai < 0){cout<<nilai<<“ adalah bilangan omputer“;�}else{cout<<“Anda memasukkan bilangan NOL“;}return 0;}

2. Macam – macam array :a. Array 1 dimensi dituliskan :

Variabel [ indeks ]b. Array 2 dimensi dituliskan :

Page 31: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Variabel [ indeks1, indeks2 ]c. Array 3 dimensi dituliskan :

Variabel [ indeks1, indeks2, indeks3 ]

3. Struktur Percabangan :Pada struktur percabangan, program akan berpindah urutan pelaksanaan jika suatu kondisi yang disyaratkan dipenuhi. Pada proses seperti ini omput flowchart Decision �harus digunakan. Simbol decision akan berisi pernyataan yang akan diuji kebenarannya.Nilai hasil pengujian akan menentukan cabang mana yang akan ditempuh.

4. Maka eksekusi program akan berlangsung berurutan sebagai berikut :1. Tetapkan bilangan yang ingin kita cari (yaitu 12) 2. Ambil elemen paling awal (yaitu A[0]), bandingkan isi elemen tersebut (yaitu 23)

dengan bilangan yang kita cari. Jika sama maka stop. 3. Jika tidak maka lanjutkan dengan elemen berikutnya (yaitu A[1]), bandingkan isi

elemen tersebut dengan bilangan yang kita cari. Jika sama maka stop. 4. Jika tidak maka lanjutkan dengan elemen berikutnya. Dan seterusnya sampai

dijumpai elemen yang berisi sama dengan bilangan yang kita cari.

c. Pedoman Penilaian :Konversi Nilai = Jumlah Skor x 25,Jumlah Skor maksimal 25, maka 4 x 25 = 100

Page 32: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Lampiran 3LEMBAR PENGAMATAN SIKAP

Kompetensi : SikapSatuan Pendidikan : SMK Bina Islam Mandiri KersanaKelas/Semester : X/IMata Pelajaran : Pemrograman dasarPertemuan ke : 5 – 10Alokasi waktu : 12 x 45

1. Kompetensi dasar :Berlaku jujur dan bertanggung jawab dalam mengerjakan tugas-tugas dari dalam pembelajarAlgoritma dan Pemrograman Pascal

2. Indikator1. Peserta didik dapat berperilaku jujur dalam menyalin informasi dari buku sumber2. Peserta didik dapat bertanggung jawab dalam mengerjakan tugas.3. Peserta didik dapat berperilaku disiplin dalam mengumpulkan tugas4. Peserta didik dapat menunjukkan kerja sama dalam belajar Algoritma dan Pemrograman

Pascal5. Peserta didik dapt berperilaku santun dalam belajar.

Nomor peserta didik : .......................................................Nama Absen Peserta didik : .........................................................

No. Sikap Kriteria HasilYa Tidak

1. Jujur 1. Melaporkan data/informasi sesuaidengan apa yang dibaca.

2. Menyampaikan pendapat disertaidengan informasi dari buku sumberyang diterima

2. Tanggung jawab 1. Melaksanakan tugas sesuai denganperintah guru

2. Menyelesaikan tugas sampai selesai.3. Disiplin Melaksanakan dan menyelesaikan tugas

sesuai dengan waktu yang ditetapkan.4. Bekerja sama Menghargai pekerjaan teman dan berperan

aktif dalam menyelesaikan tugaskelompok.

5. Santun 1. Menyampaikan pendapat denganbahasa dan nada yang baik.

2. Menghargai adanya perbedaanpendapat.

Page 33: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Lampiran 4LEMBAR PENGAMATAN KETERAMPILAN/PSIKOMOTOR

Kompetensi : KeterampilanSatuan Pendidikan : SMK Bina Islam Mandiri KersanaKelas/Semester : X/IMata Pelajaran : Pemrograman dasarPertemuan ke : 5 – 10Alokasi waktu : 12 x 45

A. Kompetensi Dasar1. Menerapkan Struktur kontrol percabangan dalam bahasa pemrograman

B. Indikator 1. Membuat Struktur kontrol percabangan, 2. Membuat Percabangan 1 kondisi3. Membuat Percabangan 2 kondisi4. Membuat Percabangan lebih dari 2 kondisi

Isilah dengan tanda centang (√) apabila seorang siswa melakukan aktivitas !No.

NamaAspek keterampilan *)

Nilai **)1 2 3 4 5

*) Keterangan: **) Keterangan1. Aktifitas bertanya 1. Sangat Terampil, jika 5 keaktifan2. Aktifitas menjawab 2. Terampil, jika 4 keaktifan3. Aktifitas mencatat 3. Cukup Terampil, jika 3 keaktifan4. Akurasi jawaban 4. Kurang Terampil, jika 2 keaktifan5. Akurasi pertanyaan 5. Tidak Terampil, jika 1 keaktifan

Page 34: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

RENCANA PELAKSANAAN PEMBELAJARAN ( RPP )

Mata Pelajaran : Pemrograman DasarKelas / Semester : X / 1Pertemuan : 11 – 14Alokasi Waktu : 8 x 45 MenitStandar Kompetensi : Menerapkan Pemrograman DasarKarakter Bangsa yang diharapkan : Disiplin, Kreatif, Mandiri, Tanggung Jawab, Kerja

sama.

A. Kompetensi Inti1. Memahami nilai-nilai keimanan dengan menyadari hubungan keteraturan dan

kompleksitas alam dan jagad raya.2. Mengamalkan nilai-nilai keimanan sesuai dengan ajaran agama dalam kehidupan sehari-

hari.3. Menunjukkan perilaku ilmiah (memiliki rasa ingin tahu, objektif, jujur, teliti, cermat,

tekun, hati-hati, bertanggung jawab, terbuka, kritis, kreatif, inovatif, dan pedulilingkungan) dalam aktivitas sehari-hari sebagai wujud implementasi sikap dalammlakukan percobaan dan diskusi.

4. Menghargai kerja individu dan kelompok dalam aktivitas sehari-hari sebagai wujudimplementasi melaksanakan percobaan dan melaporkan hasil.

B. Kompetensi Dasar dan Indikator3.7 Menerapkan struktur kontrol perulangan dalam bahasa pemrograman

a. Mengetahui Struktur kontrol perulanganb. Mengetahui Perulangan dengan kondisi awalc. Perulangan dengan kondisi akhir

4.8 Memecahkan masalah menggunakan struktur kontrol perulangana. Menyajikan informasi tentang struktur perulanganb. Menyajikan informasi tentang perulangan dengan kondisi awalc. Menyajikan informasi tentang perulangan dengan kondisi aikhir

C. Tujuan PembelajaranSetelah mempelajari perulangan siswa diharapkan :

a. Mengerti tentang struktur perulanganb. Mengetahui informasi tentang perulangan dengan kondisi awalc. Mengetahui informasi tentang perulangan dengan kondisi akhir

D. Materi Ajar1. Struktur kontrol perulangan2. Perulangan dengan kondisi awal3. Perulangan dengan kondisi akhir

E. Metode Pembelajarana. Pendekatan : Scientifict Learningb. Straegi : Cooperative Learningc. Model : Problem Based Learningd. Metode : Diskusi, Ceramah, tanya Jawab

F. Langkah – langkah PembelajaranPertemuan 11 – 12

Kegiatan Deskripsi AlokasiWaktu

A. Pendahuluan 1. Siswa menjawab sapaan guru, berdoa, danmengondisikan diri siap belajar

2. Guru dan siswa bertanya jawab berkaitandengan identitas diri yang dibutuhkan sebagaiwarga negara yang baik.

30 Menit

Page 35: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

3. Guru menyampaikan tujuan pembelajaran4. Guru memotivasi siswa agar semakin giat

belajarB. Inti Mengamati :

1. Siswa mengamati dan mendengarkan penjelasan tentang struktur kontrol perulangan.

2. Siswa mengamati dan mendengarkan penjelasan mengenai perulangan dengan kondisi awal.

3. Siswa mengamati dan mendengarkan penjelasan mengenai perulangan dengan kondisi akhir.a

Menanya :1. Siswa berdikusi menganalisa tentang

perulangan.2. Siswa berdikusi menganalisa tentang

perulangan dengan kondisi awal.3. Siswa berdikusi menganalisa tentang

perulangan dengan kondisi akhir.

Mengeksplorasi:1. Siswa membuat kode program menggunakan

perulangan dengan kondisi awal, danperulangan kondisi akhir.

2. Siswa melakukan kompilasi, eksekusi danperbaikan pada kesalahan-kesalahan yangterdapat dalam program.

Mengasosiasi:1. Siswa membuat sebuah kesimpulan tentang

penggunaan perulangan dengan kondisi awal,dan perulangan dengan kondisi akhir.

Mengkomunikasikan:1. Siswa membuat sebuah laporan dan

mempresentasikan hasil dari sebuah programsederhana.

120 Menit

C. Penutup 1. Mereview kembali materi yang telahdisampaikan

2. Siswa mengerjakan evaluasi3. Siswa saling memberikan umpan balik hasil

evaluasi pembelajaran yang telah dicapai.

30 menit

Pertemuan 13 – 14Kegiatan Deskripsi Alokasi

WaktuA. Pendahuluan 1. Siswa menjawab sapaan guru, berdoa, dan

mengondisikan diri siap belajar2. Guru dan siswa bertanya jawab berkaitan

dengan identitas diri yang dibutuhkansebagai warga negara yang baik.

3. Guru menyampaikan tujuan pembelajaran4. Guru memotivasi siswa agar semakin giat

belajar

15 Menit

B. Inti Mengamati :1. Siswa mengamati dan mendengarkan

penjelasan tentang struktur kontrol perulangan.

60 Menit

Page 36: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

2. Siswa mengamati dan mendengarkan penjelasan mengenai perulangan dengan kondisi awal.

3. Siswa mengamati dan mendengarkan penjelasan mengenai perulangan dengan kondisi akhir.

Menanya :1. Siswa berdikusi menganalisa tentang

perulangan.2. Siswa berdikusi menganalisa tentang

perulangan dengan kondisi awal.3. Siswa berdikusi menganalisa tentang

perulangan dengan kondisi akhir.

Mengeksplorasi:1. Siswa membuat kode program menggunakan

perulangan dengan kondisi awal, danperulangan kondisi akhir.

2. Siswa melakukan kompilasi, eksekusi danperbaikan pada kesalahan-kesalahan yangterdapat dalam program.

Mengasosiasi:1. Siswa membuat sebuah kesimpulan tentang

penggunaan perulangan dengan kondisi awal,dan perulangan dengan kondisi akhir.

Mengkomunikasikan:1. Siswa membuat sebuah laporan dan

mempresentasikan hasil dari sebuah programsederhana.

C. Penutup 1. Mereview kembali materi yang telahdisampaikan

2. Siswa mengerjakan evaluasi3. Siswa saling memberikan umpan balik hasil

evaluasi pembelajaran yang telah dicapai.

30 menit

G. Media Pembelajaran1. Komputer2. Proyektor3. UPS

H. Sumber Belajar1. Buku Algoritma dan Pemrograman Pascal.2. Internet.3. Modul produktif, Buku Algoritma dan pemograman tingkat Dasar.

Page 37: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

I. Penilaian 1. Teknik penilaian : Test 2. Bentuk instrumen

a. Test tertulisb. Instrumen (terlampir)

3. Pedoman penskoran (terlampir)

Mengetahui ;

Kepala SMK Bina Islam Mandiri

Kersana, Juli 2016

Guru Mata Pelajaran

KASLANI, S.PdNIP. 19740309 201001 1 002

Akhmad Ponirin, S.Kom

Page 38: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Lampiran 1BAHAN AJAR

Kompetensi : Bahan AjarSatuan Pendidikan : SMK Bina Islam Mandiri KersanaKelas/Semester : X/IMata Pelajaran : Pemrograman dasarPertemuan ke : 11 – 14Alokasi waktu : 8 x 45

A. Kompetensi Dasar2. Menerapkan struktur kontrol perulangan dalam bahasa pemrograman

B. Indikator1. Mengetahui Struktur kontrol perulangan2. Mengetahui Perulangan dengan kondisi awal3. Perulangan dengan kondisi akhir

Pertemuan 11Struktur kontrol perulangan

Dalam banyak kasus seringkali kita dihadapkan pada sejumlah pekerjaanyang harusdiulang berkali. Salah satu contoh yang gampang kita jumpai adalah balapan mobil sepertitampak pada Mobil-mobil peserta harus mengelilingi lintasan sirkuit berkali-kali sesuai yangditetapkan dalam aturan lomba. Siapa yang mencapai garis akhir paling cepat, dialah yangmenang. Pada pembuatan program omputer, kita juga kadang-kadang harus mengulang satu atau�sekelompok perintah berkali-kali agar memperoleh hasil yang diinginkan.

Dengan menggunakan omputer, eksekusi pengulangan mudah dilakukan. Hal ini karena�salah satu kelebihan omputer dibandingkan dengan manusia adalah kemampuannya untuk�mengerjakan tugas atau suatu instruksi berulangkali tanpa merasa lelah, bosan, atau malas.Bandingkan dengan pengendara mobil balap, suatu ketika pasti dia merasa lelah dan bosan untukberputar-putar mengendarai mobil balapnya. Struktur pengulangan terdiri dari dua bagian yaitu :1. Kondisi pengulangan,

Yaitu syarat yang harus dipenuhi untuk melaksanakan pengulangan. Syarat ini biasanyadinyatakan dalam ekspresi Boolean yang harus diuji apakah bernilai benar (true) atau salah(false)

2. Badan pengulangan (loop body), yaitu satu atau lebih instruksi yang akan diulang Padastruktur pengulangan, biasanya juga disertai bagian inisialisasi dan bagian terminasi.Inisialisasi adalah instruksi yang dilakukan sebelum pengulangan dilakukan pertama kali.Bagian insialisasi umumnya digunakan untuk memberi nilai awal sebuah variable.Sedangkan terminasi adalah instruksi yang dilakukan setelah pengulangan selesaidilaksanakan. Ada beberapa bentuk pengulangan yang dapat digunakan, masing-masing dengan syarat dan

karakteristik tersendiri. Beberapa bentuk dapat dipakai untuk kasus yang sama, namun adabentuk yang hanya cocok untuk kasus tertentu saja. Pemilihan bentuk pengulangan untukmasalah tertentu dapat mempengaruhi kebenaran algoritma. Pemilihan bentuk pengulangan yangtepat bergantung pada masalah yang akan omputer. � �

Ada beberapa perulangan di dalam pemrograman dasar :a. Pengulangan dengan For

Pengulangan dengan menggunakan For, merupakan salah teknik pengulangan yang paling tuadalam bahasa pemrograman. Hampir semua bahasa pemrograman menyediakan metode ini,meskipun sintaksnya mungkin berbeda. Pada struktur For kita harus tahu terlebih dahuluseberapa banyak badan loop akan diulang. Struktur ini menggunakan sebuah variable yangbiasa disebut sebagai loop’s counter, yang nilainya akan naik atau turun selama prosespengulangan.Flowchart umum untuk struktur For tampak pada Gambar 5.14.

Page 39: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Dalam mengeksekusi sebuah pengulangan dengan For, urutan langkah-langkah adalahsebagai berikut :

a. Menetapkan nilai counter sama dengan awal.b. Memeriksa apakah nilai counter lebih besar daripada nilai akhir. Jika benar maka keluar

dari proses pengulangan. Apabila kenaikan bernilai omputer, maka proses akan�memeriksa apakah nilai counter lebih kecil daripada nilai akhir. Jika benar maka keluardari proses pengulangan.

c. Mengeksekusi pernyataan yang ada di badan loopd. Menaikkan/menurunkan nilai counter sesuai dengan jumlah yang ditentukan pada

argument increment. Apabila argument increment tidak ditetapkan maka secara defaultnilai counter akan dinaikkan 1.

e. Ulang kembali mulai langkah no 2.b. Satu hal yang penting yang harus kita perhatikan adalah nilai counter selalu ditetapkan

diawal dari pengulangan. Apabila kita mencoba merubah nilai akhir pada badan loop,maka tidak akan berdampak pada berapa banyak pengulangan akan dilakukan.

b. Pengulangan dengan WhilePada pengulangan dengan For, banyaknya pengulangan diketahui dengan pasti karena nilai

awal (start) dan nilai akhir (end) sudah ditentukan diawal pengulangan. Bagaimana jika kita tidaktahu pasti harus berapa kali mengulang? Pengulangan dengan While merupakan jawaban daripermasalahan ini. Seperti halnya For, struktur pengulangan dengan While juga merupakanstruktur yang didukung oleh omput semua bahasa pemrograman namun dengan sintaks yang�berbeda.

Flowchart umum untuk struktur For tampak pada Gambar 5.15

Page 40: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Struktur While akan mengulang pernyataan pada badan loop sepanjang kodisi pada Whilebernilai benar. Dalam artian kita tidak perlu tahu pasti berapa kali diulang. Yang pentingsepanjang kondisi pada While dipenuhi maka pernyataan pada badan loop akan diulang.Flowchart umum untuk struktur While dapat dilihat pada Gambar Pada Gambar tampak bahwasimbol preparasi untuk pengulangan seperti pada For tidak digunakan lagi. Namun kitamenggunakan simbol decision untuk mengendalikan pengulangan. Selain kondisi, biasanya padapengulangan While harus dilakukan inisialisasi variabel terlebih dahulu.Pertemuan 12Diagram Alir dan Struktur DataAlgoritma Squential Search

Metode pencaharian berurutan merupakan metode pencaharian data yang paling mudah,secara garis besar metode ini bisa ditampilkan sebagian dari kumpulan data yang diketahui datayang akan kita cari, kita bandingkan satu persatu sampai data yang kita inginkan bertemu atautidak ketemu dengan kumpulan data tersebut pada saat data yang kita cari. Juga sudah ketemumaka proses pencaharian langsung kita hentikan, tetapi data yang kita cari belum ketemu makaomputer kita teruskan sampai seluruh data dibandingkan. � � Dalam kasus yang paling burungdengan vakton n elemen harus dilakukan pencaharian sebanyak n kali pencarian.

Contoh :5 7 9 10 50 70 6 12 8Data yang dicari adalah : 70Terdapat pada element : 6Algoritma program searah :Langkah :a. Baca kumpulan data yang diketahui sebagai vektor A dengan n elemenb. Baca data yang akan dicari, mis : 2c. Tentukan i = 1d. [proses mencari bandingan x dengan a (i)] jika x : a (i) data ketemu pergi ke langkah se. [ test 1]f. jika i > n [data tidak ketemu] ke langkah s jika tidak, tentukan: i = E + i kembali

kelangkah 3g. Tampilkan pesan yang sesuai dan selesai

Algoritma Gelembung (Buble Short)Untuk menampilkan untuk menampilkan nilai paling kecil diletakkan diawal data.

Algoritma diaplikasikan untuk mencari data yang paling kecil. Dalam suatu individu dan tidak mencari nilai data pengolahan dilakukan untuk n-1, x suatu exservasi untuk mencapatkan nilai terkecil.Misalnya datanya : 23, 45, 12, 24, 56, 34, 27, 23, 16;Langkah-Langkah :

Page 41: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

a. a (1) dengan a (2) 23 dengan 45 → Tetapb. a (1) dengan a (3) 12 dengan 12 → Tukarc. a (1) dengan a (4) 12 dengan 24 → Tetapd. a (1) dengan a (5) 12 dengan 56 → Tetape. a (1) dengan a (6) 12 dengan 34 → Tetapf. a (1) dengan a (7) 12 dengan 27 → Tetapg. a (1) dengan a (8) 12 dengan 23 → Tetaph. a (1) dengan a (9) 12 dengan 16 → Tetapi. Hasil : 12, 23, 45, 24, 56, 34, 27, 23, 16

ShortingPertimbangan akan melakukan shorting.Hal-hal yang akan dipertimbangkan adalah :

1. Perlu tidaknya data disorting2. Besarnya atau banyaknya data yang akan dishorting 3. Kemampuan atau kapasitas komputer atau penyimpanan datanya4. Metode shorting

Tehnik-tehnik shorting.Pada garis besarnya ada 3 tehnik sorting :1. Insortion Sort (Sorting penyisipan)

Tehnik ini adalah dengan membandingkan elemen n ( n mulai dari 2 hingga elementerakhir) dengan elemen-elemen sebelumnya.Contoh : 8, 3, 7, 48, 7, 8, 4 (awal) → 4 banding 8 → TukarHasil : 3, 4, 7, 8 → 4 banding 7 → TukarHasil : 3, 4, 7, 8 → 4 banding 3 → TetapHasil : 3, 4, 7, 8 (akhir)

2. Selection Sort (Sorting Pemilihan)Tehnik ini adalah mencari elemen terkecil kemudian letakkan dan tukar dengan posisike n (n mulai dari 1 hingga elemen terakhir –n)Contoh : 8, 3, 7, 4 Pada langkah pertama hasil sortirnya : 3, 8, 7, 4 (mulai dari elemen pertama,

elemen terkecil = 3, letakkan dan tukar dengan elemen pertama) Pada langkah kedua hasil sortirnya : 3, 4, 7, 8 (mulai dari elemen ke 2 elemen

terkecil = 4, letakkan dan tukar dengan elemen ke 2 Pada langkah ke 3 hasil sortirnya : 3, 4, 7, 8 (mulai dari elemen ke 3 elemen

terkecil = 7, letakkan dan tukar dengan elemen ke 3)3. Exchange Sort (Shorting Penukaran)

Contoh sotir umumnya yang menggambarkan exchange sort adalah Bubble short.Algoritma dari tehnik ini adalah dengan melakukan proses perbandingan sebanyak nelemen dari n = 1 (selanjutnya dimulai = 1) bandingkan seluruh elemen dimulai darielemen sebelah kanan ke n. Bila elemen tersebut lebih kecil dari, maka lakukan dari,maka lakukan penukaran tempat. Lakukan elemen mulai +1 seperti proses sebelumnyahingga nilai mulai +1 = nContoh : 8, 7, 6, 5, 4Proses 1 :

- Bandingkan 8 (elemen pertama) dengan 7 (elemen kedua) hasilnya : 7, 8, 6, 5, 4- Bandingkan 7 (elemen pertama) dengan 6 (elemen ketiga) hasilnay : 6, 8, 7, 5, 4- Bandingkan 6 (elemen pertama) dengan 5 (elemen ketiga) hasilnay : 5, 8, 7, 6, 4- Bandingkan 5 ( elemen pertama) dengan 4 (elemen keempat) hasilnya : 4, 8, 7, 6, 5

(urutan 1 telah diperoleh)

Pertemuan 13a. MERGE SHORT

Shorter ini biasanya digunakan untuk jumlah data yang besar dengan membagi-bagimenjadi sub-sub bagian dimulai dari sedikit elemen hingga keseluruhan elemen tersebut menjadidata yang sudah diurut. Shorter ini digunakan bila kapasitas memory tidak sanggup untukmenampung seluruh data yang diakan disortir.

Page 42: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Soal :78, 63, 50, 70, 60, 35, 12, 14, 18, 23, 50, 40, 51, 34, 30, 25, 45, 20

Penyelesaian :- 63, 78, 50, 70, 35, 60, 12, 14, 18, 227, 40, 50, 34, 51, 25, 30, 20, 45- 50, 63, 70, 78, 12, 14, 35, 60, 18, 23, 40, 90, 25, 30, 34, 40, 51, 90, 20, 45- 12, 14, 35, 50, 60, 63, 70, 78, 18, 23, 25, 30, 34, 40, 51, 90, 20, 45- 12, 14, 18, 23, 25, 30, 34, 35, 40, 50, 51, 60, 63, 70, 78, 90, 20, 45- 12, 14, 18, 20, 23, 25, 30, 34, 35, 40, 45, 50, 51, 60, 63, 70, 78, 90 (hasil akhir)

3. Loop Dengan DecisionTiap loop memiliki pengontrol loop yaitu suatu keadaan dimana suatu loop harus selesai.

Decision digunakan sebagai pengontrol loop untuk menyelesaikan perulangan prosesnya.Bentuk umum :Parameter := awal;10 if (parameter <= akhir) then

blok loopparameter := parameter + step;goto 10

endifc. Loop For

Loop ini agak ompute, dimana antara nilai awal, nilai akhir dan step tertulis didalam satu�statement.

Bentuk umum :For indeks := awal to akhir doBlok loopEndfor

d. Loop WhilePada loop ini sebelum masuk kedalam blok loop, nilai awal harus didefenisikan diluar blokloop, yang kemudian akan dikomparasi dengan batas loop, jika proses komparasi bernilai truemaka proses akan masuk kedalam blok loop.

Bentuk umum :Parameter := awalWhile (parameter <= akhir) doBlok loopParameter := parameter + stepEndwhile.

e. Loop RepeatPada loop repeat pengontrol loop ada pada akhir blok loop sehingga loop ini minimal sekali

pasti dikerjakan dalam prosesnya. Pada loop repeat proses akan terus diulang selama komparasibernilai false.

Bentuk umum :Parameter := awalRepeatBlok loopParameter := parameter + stepUntil parameter > akhir

f. Nested Loop ForYang dimaksud dengan loop tersarang adalah suatu loop yang berada di dalam loop, artinya

proses suatu loop bergantung dengan proses loop lainnya. Bentuk standart dari loop ini tidak adakarena sangat fleksibelnya.

Bentuk umum :For indeks1 := awal1 to akhir1 doStatement1 For indeks2 := awal2 to akhir 2 doStatement2Endfor

Page 43: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Endfor Pertemuan 14Perulangan dengan kondisi akhir1. Nested Loop While

Penggunaan loop while yang saling tersarang sebagaimana pada kasus loop for. Bentuk umum :

Parameter := awal1While (parameter <= akhir 1) do

Statemen1Parameter2 := awal2While (parameter <= akhir2) do

Statemen2Parameter2 := parameter2 + step2

EndwhileParameter1 := parameter1 + step1

Endwhile

2. Nested Loop RepeatPenggunaan loop repeat yang saling tersarang, sebagaimana pada kasus loop for dan loop

while maka tidak ada bentuk khusus dari loop tersarang repeat. Bentuk umum :

Parameter := awal1Repeat

Statemen1Parameter2 := awal2Repeat

Statemen2Parameter2 := parameter2 + step2

Until parameter > akhir2Parameter1 := parameter1 + step1

Until parameter > akhir1

3. Nested Loop CompoundMerupakan gabungan dari macam – macam loop yang ada. Bentuk umum :

For indeks1 := awal1 to akhir1 doStatement1 Indeks2 := awal2While (indeks2 <=akhir2) do

Statement2Indeks2 := indeks2 + step2

EndwhileEndfor

Page 44: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Lampiran 2INSTRUMEN TES URAIAN

Kompetensi : PengetahuanSatuan Pendidikan : SMK Bina Islam Mandiri KersanaKelas/Semester : X/IMata Pelajaran : Pemrograman dasarPertemuan ke : 11 – 14Alokasi waktu : 8 x 45

A. Kompetensi Dasar4. Menerapkan struktur kontrol perulangan dalam bahasa pemrograman

B. Indikator1. Mengetahui Struktur kontrol perulangan2. Mengetahui Perulangan dengan kondisi awal3. Perulangan dengan kondisi akhir

a. Soal1. Tuliskan Keuntungan dari pembuatan algoritma !2. Tuliskan Beberapa hal yang perlu diperhatikan dalam membuat algoritma!3. Buatlah flowchart untuk menghitung volume balok !4. Buatlah flowchart untuk menghitung Luas Lingkaran !

b. Kunci Jawaban1. Keuntungan algoritma adalah:

a. Pembuatan atau penulisan algoritma tidak tergantung pada bahasa pemrograman manapun, artinya penulisan algoritma independen dari bahasa pemrograman dan omputer yang melaksanakannya.�

b. Notasi algoritma dapat diterjemahkan ke dalam berbagai bahasa pemrograman.c. Apapun bahasa pemrogramannya, output yang akan dikeluarkan sama karena

algoritmanya sama.

2. Hal yang perlu diperhatikan :a. Teks algoritma berisi deskripsi langkah-langkah penyelesaian masalah. Deskripsi

tersebut dapat ditulis dalam notasi apapun asalkan mudah dimengerti dandipahami.

b. Tidak ada notasi yang baku dalam penulisan teks algoritma seperti notasi bahasapemrograman. Notasi yang digunakan dalam menulis algoritma disebut notasialgoritmik.

c. Setiap orang dapat membuat aturan penulisan dan notasi algoritmik sendiri. Halini dikarenakan teks algoritma tidak sama dengan teks program. Namun, supayanotasi algoritmik mudah ditranslasikan ke dalam notasi bahasa pemrogramantertentu, maka sebaiknya notasi algoritmik tersebut berkorespondensi dengannotasi bahasa pemrograman secara umum.

d. Notasi algoritmik bukan notasi bahasa pemrograman, karena itu pseudocodedalam notasi algoritmik tidak dapat dijalankan oleh omputer. Agar dapat�dijalankan oleh omputer, � pseudocode dalam notasi algoritmik harus ditranslasikanatau diterjemahkan ke dalam notasi bahasa pemrograman yang dipilih. Perludiingat bahwa orang yang menulis program sangat terikat dalam aturan tatabahasanya dan spesifikasi mesin yang menjalannya.

e. Algoritma sebenarnya digunakan untuk membantu kita dalam mengkonversikansuatu permasalahan ke dalam bahasa pemrograman

Page 45: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

3. Flowchart volume balok

4. Flowchart Luas Lingkaran :

c. Pedoman Penilaian :Konversi Nilai = Jumlah Skor x 25,Jumlah Skor maksimal 25, maka 4 x 25 = 100

Page 46: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Lampiran 3LEMBAR PENGAMATAN SIKAP

Kompetensi : SikapSatuan Pendidikan : SMK Bina Islam Mandiri KersanaKelas/Semester : X/IMata Pelajaran : Pemrograman dasarPertemuan ke : 11 – 14Alokasi waktu : 8 x 45

Nomor peserta didik : .......................................................Nama Absen Peserta didik : .........................................................

1. Kompetensi dasar :Berlaku jujur dan bertanggung jawab dalam mengerjakan tugas-tugas dari dalam pembelajarAlgoritma dan Pemrograman Pascal

2. Indikator1. Peserta didik dapat berperilaku jujur dalam menyalin informasi dari buku sumber2. Peserta didik dapat bertanggung jawab dalam mengerjakan tugas.3. Peserta didik dapat berperilaku disiplin dalam mengumpulkan tugas4. Peserta didik dapat menunjukkan kerja sama dalam belajar Pemrograman dasar5. Peserta didik dapt berperilaku santun dalam belajar.

No. Sikap Kriteria HasilYa Tidak

1. Jujur 1. Melaporkan data/informasi sesuaidengan apa yang dibaca.

2. Menyampaikan pendapat disertaidengan informasi dari buku sumberyang diterima

2. Tanggung jawab 1. Melaksanakan tugas sesuai denganperintah guru

2. Menyelesaikan tugas sampai selesai.3. Disiplin Melaksanakan dan menyelesaikan tugas

sesuai dengan waktu yang ditetapkan.4. Bekerja sama Menghargai pekerjaan teman dan berperan

aktif dalam menyelesaikan tugaskelompok.

5. Santun 1. Menyampaikan pendapat denganbahasa dan nada yang baik.

2. Menghargai adanya perbedaanpendapat.

Page 47: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Lampiran 4LEMBAR PENGAMATAN KETERAMPILAN/PSIKOMOTOR

Kompetensi : Keterampilan Satuan Pendidikan : SMK Bina Islam Mandiri KersanaKelas/Semester : X/IMata Pelajaran : Pemrograman dasarPertemuan ke : 11 – 14Alokasi waktu : 8 x 45

A. Kompetensi Dasar5. Menerapkan struktur kontrol perulangan dalam bahasa pemrograman

B. Indikator1. Mengetahui Struktur kontrol perulangan2. Mengetahui Perulangan dengan kondisi awal3. Perulangan dengan kondisi akhir

Isilah dengan tanda centang (√) apabila seorang siswa melakukan aktivitas !No.

NamaAspek keterampilan *)

Nilai **)1 2 3 4 5

*) Keterangan: **) Keterangan1. Aktifitas bertanya 1. Sangat Terampil, jika 5 keaktifan2. Aktifitas menjawab 2. Terampil, jika 4 keaktifan3. Aktifitas mencatat 3. Cukup Terampil, jika 3 keaktifan4. Akurasi jawaban 4. Kurang Terampil, jika 2 keaktifan5. Akurasi pertanyaan 5. Tidak Terampil, jika 1 keaktifan

Page 48: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

RENCANA PELAKSANAAN PEMBELAJARAN ( RPP )

Mata Pelajaran : Pemrograman DasarKelas / Semester : X / 1Pertemuan : 15 – 17Alokasi Waktu : 6 x 45 MenitStandar Kompetensi : Menerapkan Pemrograman DasarKarakter Bangsa yang diharapkan : Disiplin, Kreatif, Mandiri, Tanggung Jawab, Kerja

sama.

A. Kompetensi Inti1. Menghayati dan mengamalkan ajaran agama yang dianutnya 2. Mengembangkan perilaku (jujur, disiplin, tanggung jawab, peduli, santun, ramah

lingkungan, gotong royong, kerjasama, cinta damai, responsif dan proaktif) danmenunjukkan sikap sebagai bagian dari solusi atas berbagai permasalahan bangsa dalamberinteraksi secara efektif dengan lingkungan sosial dan alam serta dalam menempatkandiri sebagai cerminan bangsa dalam pergaulan dunia

3. Memahami, menerapkan, menganalisis pengetahuan faktual, konseptual, proseduralberdasarkan rasa ingin tahunya tentang ilmu pengetahuan, teknologi, seni, budaya, danhumaniora dengan wawasan kemanusiaan, kebangsaan, kenegaraan, dan peradabanterkait fenomena dan kejadian, serta menerapkan pengetahuan prosedural pada bidangkajian yang spesifik sesuai dengan bakat dan minatnya untuk memecahkan masalah.

4. Mengolah, menalar, menyaji, dan mencipta dalam ranah konkret dan ranah abstrak terkaitdengan pengembangan dari yang dipelajarinya di sekolah secara mandiri, dan mampumenggunakan metoda sesuai kaidah keilmuan.

B. Kompetensi Dasar dan Indikator3.8 Menerapkan keseluruhan konsep algoritma dalam penyelesaian masalah kompleks

a. Analisa pemecahan masalahb. Debugging dan error dalam program

4.8 Menganalisa kesalahan dalam programa. Mencari pemecahan masalah dengan menggunakan algoritmab. Melakukan pengujian debugging dan mencari error dalam sebuah program

C. Tujuan PembelajaranSetelah pembelajaran selesai, peserta didik diharapakan mampu :

Menyajikan Algoritma Menyajikan Flowchart Mencari kesalahan-kesalahan dalam sebuah program.

D. Materi Ajar1. Penyajian Algoritma2. Kesalahan – kesalahan yang terdapat dalam sebuah program3. Flowchart

E. Metode Pembelajaran1. Pendekatan2. Ceramah3. Tanya Jawab4. Berkelompok

F. Media Pembelajarana. Power Pointb. Sal-soalc. Infocusd. Contoh Program

Page 49: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

G. Langkah – Langkah PembelajaranPertemuan 15 – 16

Kegiatan Deskripsi AlokasiWaktu

A. Pendahuluan 1. Siswa menjawab sapaan guru, berdoa, danmengondisikan diri siap belajar

2. Guru dan siswa bertanya jawab berkaitan denganidentitas diri yang dibutuhkan sebagai warga negarayang baik.

3. Guru menyampaikan tujuan pembelajaran4. Guru memotivasi siswa agar semakin giat belajar

30 Menit

B. Inti Mengamati :1. Siswa mengamati dan mendengarkan penjelasan

tentang debugging dalam sebuah program2. Siswa mengamati dan mendengarkan penjelasan

mengenai error yang terjadi dalam sebuah program.

Menanya :1. Siswa berdikusi menganalisa tentang debugging

sebuah program.2. Siswa berdikusi menganalisa tentang error salam

sebuah program.

Mengeksplorasi:1. Siswa melakukan kompilasi, eksekusi dan perbaikan

pada kesalahan-kesalahan yang terdapat dalamprogram.

Mengasosiasi:1. Siswa membuat sebuah kesimpulan tentang debugging

dan error dalam sebuah program.

Mengkomunikasikan:Siswa membuat sebuah laporan dan mempresentasikanhasil dari sebuah program sederhana.

120 Menit

C. Penutup 1. Mereview kembali materi yang telah disampaikan2. Siswa mengerjakan evaluasi3. Siswa saling memberikan umpan balik hasil evaluasi

pembelajaran yang telah dicapai.

30 Menit

Pertemuan 17Kegiatan Deskripsi Alokasi

WaktuA. Pendahuluan 1. Siswa menjawab sapaan guru, berdoa, dan

mengondisikan diri siap belajar2. Guru dan siswa bertanya jawab berkaitan dengan

identitas diri yang dibutuhkan sebagai warga negarayang baik.

3. Guru menyampaikan tujuan pembelajaran4. Guru memotivasi siswa agar semakin giat belajar

15 Menit

B. Inti Mengamati :1. Siswa mengamati dan mendengarkan penjelasan

tentang debugging dalam sebuah program2. Siswa mengamati dan mendengarkan penjelasan

mengenai error yang terjadi dalam sebuah program.

Menanya :3. Siswa berdikusi menganalisa tentang debugging

sebuah program.

60 Menit

Page 50: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

4. Siswa berdikusi menganalisa tentang error salamsebuah program.

Mengeksplorasi:2. Siswa melakukan kompilasi, eksekusi dan perbaikan

pada kesalahan-kesalahan yang terdapat dalamprogram.

Mengasosiasi:2. Siswa membuat sebuah kesimpulan tentang debugging

dan error dalam sebuah program.

Mengkomunikasikan:Siswa membuat sebuah laporan dan mempresentasikanhasil dari sebuah program sederhana.

C. Penutup 1. Mereview kembali materi yang telah disampaikan2. Siswa mengerjakan evaluasi3. Siswa saling memberikan umpan balik hasil evaluasi

pembelajaran yang telah dicapai.

15 Menit

H. Sumber Belajar1. Buku Algoritma dan Pemrograman Pascal.2. Internet.3. Modul produktif, Buku Algoritma dan pemograman tingkat Dasar.

I. Penilaian6. Teknik penilaian : Test 7. Bentuk instrumen

a. Test tertulisb. Instrumen (terlampir)

3. Pedoman penskoran (terlampir)

Mengetahui ;

Kepala SMK Bina Islam Mandiri

Kersana, Juli 2016

Guru Mata Pelajaran

KASLANI, S.PdNIP. 19740309 201001 1 002

Akhmad Ponirin, S.Kom

Page 51: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Lampiran 1BAHAN AJAR

Kompetensi : Bahan AjarSatuan Pendidikan : SMK Bina Islam Mandiri KersanaKelas/Semester : X/IMata Pelajaran : Pemrograman dasarPertemuan ke : 15 – 17Alokasi waktu : 6 x 45

A. Kompetensi Dasar1. Menerapkan keseluruhan konsep algoritma dalam penyelesaian masalah kompleks

B. Indikator1. Analisa pemecahan masalah2. Debugging dan error dalam program

Pertemuan 15Penyajian Algoritma

Penyajian algoritma secara garis besar bisa dalam 2 bentuk penyajian yaitu tulisan dangambar. Algoritma yang disajikan dengan tulisan yaitu dengan struktur bahasa tertentu (misalnyabahasa Indonesia atau bahasa Inggris) dan pseudocode. Pseudocode adalah kode yang miripdengan kode pemrograman yang sebenarnya seperti Pascal, atau C, sehingga lebih tepatdigunakan untuk menggambarkan algoritma yang akan dikomunikasikan kepada pemrogram.

Sedangkan algoritma disajikan dengan gambar, misalnya dengan flowchart. Secaraumum, pseudocode mengekspresikan ide-ide secara informal dalam proses penyusunanalgoritma. Salah satu cara untuk menghasilkan kode pseudo adalah dengan meregangkan aturan-aturan bahasa formal yang dengannya versi akhir dari algoritma akan diekspresikan. Pendekatanini umumnya digunakan ketika bahasa pemrograman yang akan digunakan telah diketahui sejakawal.

Definisi Pseudo-codeKode atau tanda yang menyerupai (pseudo) atau merupakan penjelasan cara menyelesaikan

suatu masalah. Pseudo-code sering digunakan oleh manusia untuk menuliskan algoritma.Contoh kasus : mencari bilangan terbesar dari dua bilangan yang diinputkanSolusi Pseudo-code :1. Masukkan bilangan pertama2. Masukkan bilangan kedua3. Jika bilangan pertama > bilangan kedua maka kerjakan langkah 4, jika tidak, kerjakan

langkah 5.4. Tampilkan bilangan pertama5. Tampilkan bilangan keduaSolusi Algoritma :1. Masukkan bilangan pertama (a)2. Masukkan bilangan kedua (b)3. if a > b then kerjakan langkah 44. print a5. print b

Contoh Lain Algortima dan Pseudo-code :

Pertemuan 16Flowchart

Flowchart merupakan gambar atau bagan yang memperlihatkan urutan dan hubunganantar proses beserta pernyataannya. Gambaran ini dinyatakan dengan simbol. Dengan demikian

Page 52: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

setiap simbol menggambarkan proses tertentu. Sedangkan antara proses digambarkan dengangaris penghubung. Dengan menggunakan flowchart akan memudahkan kita untuk melakukanpengecekan bagian-bagian yang terlupakan dalam analisis masalah. Disamping itu flowchart jugaberguna sebagai fasilitas untuk berkomunikasi antara pemrogram yang bekerja dalam tim suatuproyek.Ada dua macam flowchart yang menggambarkan proses dengan komputer, yaitu :1. Flowchart sistem yaitu bagan dengan simbol-simbol tertentu yang menggambarkan urutan

prosedur dan proses suatu file dalam suatu media menjadi file di dalam media lain, dalamsuatu sistem pengolahan data. Beberapa contoh Flowchart sistem:

2. Flowchart program yaitu bagan dengan simbol-simbol tertentu yang menggambarkanurutan proses dan hubungan antar proses secara mendetail di dalam suatu program.

Kaidah-Kaidah Umum Pembuatan Flowchart ProgramDalam pembuatan flowchart Program tidak ada rumus atau patokan yang bersifat mutlak.

Karena flowchart merupakan gambaran hasil pemikiran dalam menganalisis suatu masalahdengan komputer. Sehingga flowchart yang dihasilkan dapat bervariasi antara satu pemrogramdengan yang lainnya. Namun secara garis besar setiap pengolahan selalu terdiri atas 3 bagianutama, yaitu :

1. Input,2. Proses pengolahan dan3. Output

Pertemuan 17Pemecahan masalah dalam sebuah ProgramUntuk pengolahan data dengan komputer, urutan dasar pemecahan suatu masalah: START, berisi pernyataan untuk persiapan peralatan yang diperlukan sebelum menangani

pemecahan persoalan. READ, berisi pernyataan kegiatan untuk membaca data dari suatu peralatan input. PROSES, berisi kegiatan yang berkaitan dengan pemecahan persoalan sesuai dengan data

yang dibaca. WRITE, berisi pernyataan untuk merekam hasil kegiatan ke peralatan output. END, mengakhiri kegiatan pengolahan.

Walaupun tidak ada kaidah-kaidah yang baku dalam penyusunan flowchart, namun adabeberapa anjuran :

1. Hindari pengulangan proses yang tidak perlu dan logika yang berbelit sehingga jalannyaproses menjadi singkat.

2. Jalannya proses digambarkan dari atas ke bawah dan diberikan tanda panah untukmemperjelas.

3. Sebuah flowchart diawali dari satu titik START dan diakhiri dengan END.Berikut merupakan beberapa contoh simbol flowchart yang disepakati oleh dunia

pemrograman :

Page 53: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Untuk memahami lebih dalam mengenai flowchart ini, akan diambil sebuah kasus sederhana.Kasus : Buatlah sebuah rancangan program dengan menggunakan flowchart, mencari luas persegi panjang.Solusi : Perumusan untuk mencari luas persegi panjang adalah : L = p . ldi mana, L adalah Luas persegi panjang, p adalah panjang persegi, dan l adalah lebar persegi.

Keterangan gambar :1. Simbol pertama menunjukkan dimulainya sebuah program.2. Simbol kedua menunjukkan bahwa input data dari p dan l.3. Data dari p dan l akan diproses pada simbol ketiga dengan menggunakan perumusan L = p.

l.4. Simbol keempat menunjukkan hasil output dari proses dari simbol ketiga.5. Simbol kelima atau terakhir menunjukkan berakhirnya program dengan tanda End.

Page 54: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Lampiran 2INSTRUMEN TES URAIAN

Kompetensi : Tes UraianSatuan Pendidikan : SMK Bina Islam Mandiri KersanaKelas/Semester : X/IMata Pelajaran : Pemrograman dasarPertemuan ke : 15 – 17Alokasi waktu : 6 x 45

A. Kompetensi Dasar1. Menerapkan keseluruhan konsep algoritma dalam penyelesaian masalah kompleks

B. Indikator1. Analisa pemecahan masalah2. Debugging dan error dalam program

a. Soal1. Tuliska pengertian pseudocode !2. Tuliskan solusi pseudocode !3. Tuliskan 3 bagian utama dalam sebuah proses flowchart !4. Gambarkan flowchart untuk mencari sebauh Luas persegi panjang !

b. Kunci Jawaban1. Pseudocode adalah kode yang mirip dengan kode pemrograman yang sebenarnya seperti

Pascal, atau C, sehingga lebih tepat digunakan untuk menggambarkan algoritma yangakan dikomunikasikan kepada pemrogram.

2. Solusi Pseudo-code :a. Masukkan bilangan pertamab. Masukkan bilangan keduac. Jika bilangan pertama > bilangan kedua maka kerjakan langkah 4, jika tidak,

kerjakan langkah 5.d. Tampilkan bilangan pertamae. Tampilkan bilangan kedua

3. 3 bagian utama flowchart Input, Proses pengolahan danOutput

4. Flowchart mencari Luas persegi panjang :

Page 55: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

c. Pedoman Penilaian :Konversi Nilai = Jumlah Skor x 25,Jumlah Skor maksimal 25, maka 4 x 25 = 100

Page 56: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Lampiran 3LEMBAR PENGAMATAN SIKAP

Kompetensi : SikapSatuan Pendidikan : SMK Bina Islam Mandiri KersanaKelas/Semster : X/IMata Pelajaran : Pemrograman DasarPertemuan ke : 15 – 17Alokasi waktu : 6 x 45

Nomor peserta didik : .......................................................Nama Absen Peserta didik : .........................................................

1. Kompetensi dasar :Berlaku jujur dan bertanggung jawab dalam mengerjakan tugas-tugas dari dalam pembelajarAlgoritma dan Pemrograman Pascal

2. Indikator1. Peserta didik dapat berperilaku jujur dalam menyalin informasi dari buku sumber2. Peserta didik dapat bertanggung jawab dalam mengerjakan tugas.3. Peserta didik dapat berperilaku disiplin dalam mengumpulkan tugas4. Peserta didik dapat menunjukkan kerja sama dalam belajar Algoritma dan Pemrograman

Pascal5. Peserta didik dapt berperilaku santun dalam belajar.

No. Sikap Kriteria HasilYa Tidak

1. Jujur 3. Melaporkan data/informasi sesuaidengan apa yang dibaca.

4. Menyampaikan pendapat disertaidengan informasi dari buku sumberyang diterima

2. Tanggung jawab 3. Melaksanakan tugas sesuai denganperintah guru

4. Menyelesaikan tugas sampai selesai.3. Disiplin Melaksanakan dan menyelesaikan tugas

sesuai dengan waktu yang ditetapkan.4. Bekerja sama Menghargai pekerjaan teman dan berperan

aktif dalam menyelesaikan tugaskelompok.

5. Santun 3. Menyampaikan pendapat denganbahasa dan nada yang baik.

4. Menghargai adanya perbedaanpendapat.

Page 57: RENCANA PELAKSANAAN PEMBELAJARAN ( RPP ) Mata ......Mata Pelajaran : Pemrograman Dasar Kelas / Semester : X / 1 Pertemuan : 1- 4 Alokasi Waktu : 8 x 45 Menit Standar Kompetensi : Menerapkan

Lampiran 4LEMBAR PENGAMATAN KETERAMPILAN/PSIKOMOTOR

Kompetensi : KeterampilanSatuan Pendidikan : SMK Bina Islam Mandiri KersanaKelas/Semster : X/IMata Pelajaran : Pemrograman DasarPertemuan ke : 15 – 17Alokasi waktu : 6 x 45

A. Kompetensi Dasar1. Menerapkan keseluruhan konsep algoritma dalam penyelesaian masalah kompleks

B. Indikator1. Analisa pemecahan masalah2. Debugging dan error dalam program

Isilah dengan tanda centang (√) apabila seorang siswa melakukan aktivitas !No.

NamaAspek keterampilan *)

Nilai **)1 2 3 4 5

*) Keterangan: **) Keterangan1. Aktifitas bertanya 1. Sangat Terampil, jika 5 keaktifan2. Aktifitas menjawab 2. Terampil, jika 4 keaktifan3. Aktifitas mencatat 3. Cukup Terampil, jika 3 keaktifan4. Akurasi jawaban 4. Kurang Terampil, jika 2 keaktifan5. Akurasi pertanyaan 5. Tidak Terampil, jika 1 keaktifan