Anda di halaman 1dari 24

RENCANA PELAKSANAAN PEMBELAJARAN (RPP)

Satuan Pendidikan : SMK NEGERI TUTUR


Kelas/Semester : X/2
Mata Pelajaran : PEMROGAMAN DASAR
Pertemuan : 8-10
Alokasi Waktu : 2 JP (@ 45 menit)
Standar Kompetensi : Menerapkan Pemrograman Dasar
T
T

A. Kompetensi Inti
1. Memahami, menerapkan dan menganalisis pengetahuan faktual, konseptual, dan
prosedural berdasarkan rasa ingin tahunya tentang ilmu pengetahuan, teknologi, seni, budaya,
dan humaniora dalam wawasan kemanusiaan, kebangsaan, kenegaraan, dan peradaban terkait
penyebab fenomena dan kejadian dalam bidang kerja yang spesifik untuk memecahkan
masalah.
2. Mengolah, menalar, dan menyaji dalam ranah konkret dan ranah abstrak terkait dengan
pengembangan dari yang dipelajarinya di sekolah secara mandiri, dan mampu melaksanakan
tugas spesifik di bawah pengawasan langsung.

B. Kompetensi Dasar
3.6 Menerapkan Struktur kontrol percabangan dalam bahasa pemrograman

Indikator
3.6.1 Membuat Struktur kontrol percabangan
3.6.2 Membuat Percabangan 1 kondisi
3.6.3 Membuat Percabangan 2 kondisi
3.6.4 Membuat Percabangan lebih dari 2 kondisi

4.6 MenggunakanStruktur Kontrol percabangan dengan percabangan 1 kondisi, dan


percabangan 2 kondisi
Indikator
4.6.1 Menggunakan struktur kontrol percabangan
4.6.2 Menggunakan percabangan dengan 1 kondisi
4.6.3 Menggunakan percabangan dengan 2 kondisi
C. Tujuan Pembelajaran
a. Dapat mengetahui defenisi percabangan
b. Dapat mengetahui fungsi dari percabangan 1 kondisi dengan 2 kondisi
c. Dapat membuat sebuah program sederhana dengan menggunakan percabangan

D. Materi Ajar
a. Struktur kontrol percabangan
b. Percabangan 1 kondisi
c. Percabangan 2 kondisi
d. Percabangan lebih dari 2 kondisi

E. Pendekatan, Model dan Metode Pembelajaran


 Pendekatan : Saintifik
 Model Pembelajaran : Discovery Learning
 Metode : Paparan, Tanyangan, Diskusi, Tanya jawab, dan Unjuk kerja /
eksperimen

F. Alat, Bahan, Media, dan Sumber Belajar


1. Buku Algoritma
2. Internet
3. Modul produktif, Buku Algoritma dan pemograman tingkat Dasar.

G. Kegiatan Pembelajaran

Kegiatan Deskripsi Alokasi


Waktu

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


mengondisikan diri siap belajar
2. Guru dan siswa bertanya jawab berkaitan dengan
identitas diri yang dibutuhkan sebagai warga negara 45 Menit
yang baik.
3. Guru menyampaikan tujuan pembelajaran
4. Guru memotivasi siswa agar semakin giat belajar

B. Inti
Mengamati :

1. Siswa mengamati dan mendengarkan penjelasan 180 Menit


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 2 kondisi
dan percabangan bersarang.
2. Siswa melakukan kompilasi, eksekusi dan perbaikan
pada kesalahan-kesalahan yang terdapat dalam
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 program sederhana.

C. Penutup
1. Mereview kembali materi yang telah disampaikan 15 e
2. Siswa mengerjakan evaluasi 45 Menit n
3. Siswa saling memberikan umpan balik hasil evaluasi i
pembelajaran yang telah dicapai. t
A. Alat Pembelajaran
1. Laptop
2. Infocus
3. Komputer

B. Penilaian
1. Teknik penilaian : Test tertulis
2. Bentuk Instrumen dan Instumrn
a. Bentuk Instrumen : Tes Uraian
b. Instrumen : Terlampir
3. Pedoman Peskroan : Terlampir

Mengetahui Tutur,
Kepala SMK Negeri Tutur Guru Mata Pelajaran

Ir. SENTOT NURIYANTO EKO S WAHYUDI, S.Kom


NIP. 19630516 199303 1 002 NIP.
Lampiran 1

BAHAN AJAR

Kompetensi : BAHAN AJAR


Satuan Pendidikan : SMK NEGERI TUTUR
Kelas/Semester : X/2
Mata Pelajaran : PEMROGAMAN DASAR
Pertemuan : 8-10
Alokasi Waktu : 2 JP (@ 45 menit)

A. Kompetensi Dasar
a. Menerapkan Struktur kontrol percabangan dalam bahasa pemrograman
B. Indikator
1. Membuat Struktur kontrol percabangan,
2. Membuat Percabangan 1 kondisi
3. Membuat Percabangan 2 kondisi
4. Membuat Percabangan lebih dari 2 kondisi

PERTEMUAN 8

Algoritma Penulisan Data pada File

Algoritma 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 n

Close 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 menuliskan data
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 juga bila kita
menempatkan pada buffer no #2.

Algoritma Pembacaan Data pada File

Algoritma 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 dibaca datanya
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 n

Print field 1, field 2, .. field n

End while

Close buffer number

Pernyataan While Not EOF digunakan untuk memeriksa apakah sudah ada pada baris terakhir
dari data. Jika belum maka baris-baris data akan dibaca dan dicetak sampai baris terakhir. Pernyataan
input digunakan untuk mengambil data dari file untuk dimuat ke dalam 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” seperti pada
contoh 5.25 yang field-nya adalah nama siswa, alamat, nomor telepon. Maka untuk membaca data
adalahsebagai berikut.

Open “I”, #2, “siswa.dat”

While not EOF:

Input #2, <nama>, <alamat>, <no.telepon>

Print <nama>, <alamat>, <no.telepon>

End while

Close buffer number

Contoh dalam bahasa pemrograman dasar :


Uses Crt;
Var
I,n,x : integer;
Procedure Inputan ( var x,n : integer);
Begin
For i := 1 to n do
Begin
Write (’masukkan suku ke-’,i,’=’);
Readln(x);
End;
End;
Procedure Keluaran ( var x,n : integer);
Begin
For i := 1 to n do
Write (‘x[’,i,’]=’,x);
End;
Begin
Clrscr;
Write(’Masukkan N (mak 100) :’);
Readln(n);
Inputan(x,n);
Writeln; Writeln;
Keluaran(x,n);
Readln;
End.

PERTEMUAN 9

Percabangan dengan 2 kondisi

Struktur satu kondisi (perintah if)

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

Bentuk umum:

if (kondisi)

pernyataan;

atau

if (kondisi)

statemen1;

statemen2;

Contoh:

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 bulat

cout<<”Masukkan sebuah bilangan bulat: “;

cin>>nilai;

//menampilkan teks jika nilai yang tersimpan lebih besar dari 0

if (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 maka program ini
akan menampilkan teks “Nilai yang Anda masukkan adalah bilangan positif”.
Selain itu kita juga 10omp nenggunakan operator || dan && dalam menentukan sebuah ekspresi.
Contoh program:

#include <iostream.h>

int main()

int bilangan;

char huruf;

//memasukkan bilangan bulat

cout<<”Masukkan sebuah bilangan bulat: “;

cin>>bilangan;

if ((bilangan > 0) && (bilangan < 10))

cout<<bilangan<<” lebih besar dari nol dan lebih kecil dari sepuluh”;

//memasukkan huruf

cout<<“\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 10ompu”;

return 0;

}
PERTEMUAN 10
Penggunaan If Majemuk

Struktur dua kondisi (perintah if – else)

Struktur percabangan jenis ini sedikit lebih kompleks bila dibandingkan dengan struktur yang
hanya memiliki satu kondisi. Konsep ini sangat sederhana yaitu pada struktur jenis ini terdapat sebuah
statemen khusus yang berguna untuk mengatasi kejadian apabila kondisi yang didefinisikan tersebut
tidak terpenuhi (bernilai salah). Perintah ini memberikan satu 11omputer1111e dari dua kemungkinan.

Bentuk umum:

if (kondisi)

statement_jika_kondisi_terpenuhi;

else

statement_jika_kondisi_tidak_terpenuhi;

Contoh:

Berikut ini contoh code statement if-else-if

int grade = 68;

if( grade > 90 ){


System.out.println("Very good!");
}
else if( grade > 60 ){
System.out.println("Very good!");
}
else{
}
System.out.println("Sorry you failed");

Contoh program:

#include <iostream.h>

int main()

int nilai;

//memasukkan bilangan bulat

cout<<”Masukkan sebuah bilangan yang akan diperiksa: “;

cin>>nilai;

//pengecek bilangan apakah habis dibagi dua atau tidak

if (nilai > 0)

cout<<nilai<<“ adalah bilangan positif“;

else if (nilai < 0)

cout<<nilai<<“ adalah bilangan 12omputer“;

else

cout<<“Anda memasukkan bilangan NOL“;

return 0;
}

Contoh Program :

Implementasinya dalam bahasa Pemrograman :


Lampiran 2

INSTRUMEN TES URAIAN

Kompetensi : Pengetahuan
Satuan Pendidikan : SMK NEGERI TUTUR
Kelas/Semester : X/2
Mata Pelajaran : PEMROGAMAN DASAR
Pertemuan : 8-10
Alokasi Waktu : 2 JP (@ 45 menit)

1. Kompetensi dasar :
Berlaku jujur dan bertanggung jawab dalam mengerjakan tugas-tugas dari dalam pembelajar
Algoritma dan Pemrograman Java

2. Indikator
1. Peserta didik dapat berperilaku jujur dalam menyalin informasi dari buku sumber
2. Peserta didik dapat bertanggung jawab dalam mengerjakan tugas.
3. Peserta didik dapat berperilaku disiplin dalam mengumpulkan tugas
4. Peserta didik dapat menunjukkan kerja sama dalam belajar Algoritma dan Pemrograman
Pascal
5. Peserta didik dapt berperilaku santun dalam belajar.

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

b. Kunci jawaban
1. Contoh Program sederhana:
#include <iostream.h>
int main()
{
int nilai;
//memasukkan bilangan bulat

cout<<”Masukkan sebuah bilangan yang akan diperiksa: “;

cin>>nilai;
//pengecek bilangan apakah habis dibagi dua atau tidak
if (nilai > 0)
{

cout<<nilai<<“ adalah bilangan positif“;

}
else if (nilai < 0)
{
cout<<nilai<<“ adalah bilangan 16omputer“;

else

{
cout<<“Anda memasukkan bilangan NOL“;
}
return 0;
}
2. Macam – macam array :
a. Array 1 dimensi dituliskan :
Variabel [ indeks ]
b. Array 2 dimensi dituliskan :
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 16omput 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


Lampiran 3

LEMBAR PENGAMATAN SIKAP

Kompetensi : Sikap
Satuan Pendidikan : SMK NEGERI TUTUR
Kelas/Semester : X/2
Mata Pelajaran : PEMROGAMAN DASAR
Pertemuan : 8-10
Alokasi Waktu : 2 JP (@ 45 menit)

3. Kompetensi dasar :
Berlaku jujur dan bertanggung jawab dalam mengerjakan tugas-tugas dari dalam pembelajar
Algoritma dan Pemrograman Java

4. Indikator
6. Peserta didik dapat berperilaku jujur dalam menyalin informasi dari buku sumber
7. Peserta didik dapat bertanggung jawab dalam mengerjakan tugas.
8. Peserta didik dapat berperilaku disiplin dalam mengumpulkan tugas
9. Peserta didik dapat menunjukkan kerja sama dalam belajar Algoritma dan Pemrograman
Pascal
10. Peserta didik dapt berperilaku santun dalam belajar.

Nomor peserta didik : .......................................................

Nama Absen Peserta didik : .........................................................

No. Sikap Kriteria Hasil


Ya Tidak
1. Jujur 1. Melaporkan data/informasi sesuai dengan
apa yang dibaca.
2. Menyampaikan pendapat disertai dengan
informasi dari buku sumber yang diterima
2. Tanggung jawab 1. Melaksanakan tugas sesuai dengan
perintah 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 tugas kelompok.
5. Santun 1. Menyampaikan pendapat dengan bahasa
dan nada yang baik.
2. Menghargai adanya perbedaan pendapat.
Lampiran 4

LEMBAR PENGAMATAN SIKAP

Kompetensi : Sikap
Satuan Pendidikan : SMK NEGERI TUTUR
Kelas/Semester : X/2
Mata Pelajaran : PEMROGAMAN DASAR
Pertemuan : 8-10
Alokasi Waktu : 2 JP (@ 45 menit)

A. Kompetensi dasar :
Berlaku jujur dan bertanggung jawab dalam mengerjakan tugas-tugas dari dalam pembelajar
Algoritma dan Pemrograman Java

B. Indikator
a. Peserta didik dapat berperilaku jujur dalam menyalin informasi dari buku sumber
b. Peserta didik dapat bertanggung jawab dalam mengerjakan tugas.
c. Peserta didik dapat berperilaku disiplin dalam mengumpulkan tugas
d. Peserta didik dapat menunjukkan kerja sama dalam belajar Algoritma dan Pemrograman Java
e. Peserta didik dapt berperilaku santun dalam belajar.

Nomor peserta didik : .......................................................

Nama Absen Peserta didik : .........................................................

No. Sikap Kriteria Hasil


Ya Tidak
1. Jujur 3. Melaporkan data/informasi sesuai dengan
apa yang dibaca.
4. Menyampaikan pendapat disertai dengan
informasi dari buku sumber yang diterima
2. Tanggung jawab 3. Melaksanakan tugas sesuai dengan
perintah 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 tugas kelompok.
5. Santun 3. Menyampaikan pendapat dengan bahasa
dan nada yang baik.
4. Menghargai adanya perbedaan pendapat.
Lampiran 5

LEMBAR PENGAMATAN KETERAMPILAN/PSIKOMOTOR

Kompetensi : KETERAMPILAN
Satuan Pendidikan : SMK NEGERI TUTUR
Kelas/Semester : X/2
Mata Pelajaran : PEMROGAMAN DASAR
Pertemuan : 8-10
Alokasi Waktu : 2 JP (@ 45 menit)

A. Kompetensi Dasar
1. Menerapkan Struktur kontrol percabangan dalam bahasa pemrograman

B. Indikator
1. Membuat Struktur kontrol percabangan,
2. Membuat Percabangan 1 kondisi
3. Membuat Percabangan 2 kondisi
4. Membuat Percabangan lebih dari 2 kondisi

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

Aspek keterampilan *)
No. Nama Nilai **)
1 2 3 4 5

*) Keterangan: **) Keterangan

1. Aktifitas bertanya 1. Sangat Terampil, jika 5 keaktifan


2. Aktifitas menjawab 2. Terampil, jika 4 keaktifan
3. Aktifitas mencatat 3. Cukup Terampil, jika 3 keaktifan
4. Akurasi jawaban 4. Kurang Terampil, jika 2 keaktifan
5. Akurasi pertanyaan 5. Tidak Terampil, jika 1 keaktifan

Anda mungkin juga menyukai