Documente Academic
Documente Profesional
Documente Cultură
RENCANA
PELAKSANAAN
PEMBELAJARAN
( RPP )
NO. DOKUMEN
NTW.MNT.201.
(2).A
Nama Sekolah
Mata Pelajaran
Kelas / Semester
Standar Kompetensi
Pertemuan
Alokasi Waktu
K13
Tanggal
Halama
n
00
18 Juli
2016
1 dari 2
: 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
KD untuk KI-1
1.1. Memahami
nilai-nilai
keimanan
dengan
menyadari
hubungan
keteraturan dan kompleksitas alam dan jagad raya terhadap kebesaran
Tuhan yang menciptakannya
1.2. Mendeskripsikan kebesaran Tuhan yang menciptakan berbagai sumber
energi di alam
1.3. Mengamalkan nilai-nilai keimanan sesuai dengan ajaran agama dalam
kehidupan sehari-hari
KD untuk KI-2
2.1. Menunjukkan perilaku ilmiah (memiliki rasa ingin tahu; objektif; jujur;
teliti; cermat; tekun; hati-hati; bertanggung jawab; terbuka; kritis;
kreatif; inovatif dan peduli lingkungan) dalam aktivitas sehari-hari
sebagai wujud implementasi sikap dalam melakukan percobaan dan
berdiskusi
2.2. Menghargai kerja individu dan kelompok dalam aktivitas sehari-hari
sebagai wujud implementasi melaksanakan percobaan dan melaporkan
hasil percobaan
KD untuk KI-3
Deskripsi
Inti
Alokasi
Waktu
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
30 Menit
120 Menit
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 ekspresi dengan
program sederhana.
2. Siswa melakukan kompilasi, eksekusi dan
perbaikan pada kesalahan-kesalahan yang
terdapat dalam program.
Mengasosiasi:
1. Siswa membuat sebuah kesimpulan
tentang penggunaan tipe data, variabel,
konstanta, operator dan ekspresi dalam
sebuah program sederhana.
Penutup
Mengkomunikasikan:
1. Siswa membuat sebuah laporan dan
mempresentasikan hasil dari sebuah
program sederhana.
1. Mereview kembali materi yang telah
disampaikan
2. Siswa mengerjakan evaluasi
3. Siswa saling memberikan umpan balik
hasil evaluasi pembelajaran yang telah
dicapai.
30 Menit
Pertemuan 3 4
Kegiatan
Pendahuluan
Deskripsi
Inti
Alokasi
Waktu
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.
30 Menit
120 Menit
Penutup
Mengkomunikasikan:
1. Siswa membuat sebuah laporan dan
mempresentasikan hasil dari sebuah
program sederhana.
1. Mereview kembali materi yang telah
disampaikan
2. Siswa mengerjakan evaluasi
3. Siswa saling memberikan umpan balik
hasil evaluasi pembelajaran yang telah
dicapai.
30 Menit
I. Sumber Belajar
1. Buku Algoritma dan Pemrograman Pascal
2. Internet
3. Modul produktif, Buku Algoritma dan pemograman tingkat Dasar
J. Alat Pembelajaran
1. Laptop
2. LCD
3. White board
4. Spidol
K. Penilaian
1. Teknik penilaian
: Test tertulis
2. Bentuk Instrumen dan Instumrn
:
a. Bentuk Instrumen : Tes Uraian
b. Instrumen
: Terlampir
3. Pedoman Peskroan
: Terlampir
Ditinjau Oleh :
Wakasek Urusan Kurikulum,
Diperiksa Oleh :
Kapala Prog. TKJ,
Dibuat Oleh :
Guru Mata Pelajaran,
AMIR ISHAK, S. Pi
NIP. 19751222 200701
1006
LA GANI, S.Kom
NIP. 19770525 201001 1013
LA GANI,S.Kom
NIP. 19770525
2010011013
Lampiran 1
BAHAN AJAR
Kompetensi
Satuan Pendidikan
Kelas/Semester
Mata Pelajaran
Pertemuan ke
Alokasi waktu
:
:
:
:
:
:
Bahan Ajar
SMK Negeri 4 Baubau
X/II
Pemrograman Dasar
14
8 x 45
A. Kompetensi Dasar
Menerapkan Penggunaan Tipe Data, Variabel, Konstanta, Operator dan
Ekspresi
B. Indikator
Defenisi Tipe data, variabel, Konstanta, Operator dan Ekspresi
Pertemuan 1
Pengertian Tipe Data, variabel, dan Konstanta
Variabel, konstanta dan tipe data merupakan tiga hal yang akan
selalu kita jumpai ketika kita membuat program. Bahasa pemrograman
apapun dari yang paling sederhana sampai yang paling 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 variabel atau
konstanta akan sangat menentukan pemakaian sumberdaya komputer
(terutama
memori
komputer).
Salah
satu
tugas
penting
seorang
Adalah variabel yang nilai datanya bersifat tetap dan tidak bisa
diubah. Jadi konstanta adalah juga variabel bedanya adalah pada nilai
yang disimpannya. Jika nilai datanya sepanjang program berjalan tidak
berubah-ubah, Maka sebuah varibel lebih baik diperlakukan sebagai
konstanta. Pada sebuah kode program, biasanya nilai data dari konstanta
diberikan langsung dibagian deklarasi konstanta. Sedangkan untuk
variabel biasanya hanya ditentukan nama variabel dan tipe datanya tanpa
isian nilai data. Aturanpena maan variabel juga berlaku untuk penamaan
konstanta. Demikian juga aturan penetapan tipe data.
Variabel
adalah tempat dimana kita dapat mengisi atau mengosongkan
nilainya dan memanggil kembali apabila dibutuhkan.
Pada
sebagian
besar
bahasa
pemrograman,
variabel
harus
harus
mengikuti
aturan
yang
ditetapkan
oleh
bahasa
pemrograman yang kita gunakan. Namun secara umum ada aturan yang
berlaku untuk hampir semua bahasa pemrograman.
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.
Contoh penamaan variabel.
Penamaan yang
Penamaan yang
Keterangan
benar
namasiswa
salah
nama siswa
XY12
12XY
spasi)
harga_total
harga.total
JenisMotor
Jenis Motor
angka)
(salah karena menggunakan
karakter)
(salah karena menggunakan
spasi)
Pertemuan 2
Tipe Data
Tipe data 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 variabel atau
konstanta akan sangat menentukan pemakaian sumberdaya komputer
(terutama
memori
komputer).
Salah
satu
tugas
penting
seorang
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.
erbeda dalam
jenis numeric yang diakomodasi. Jenis yang termasuk dalam tipe data
numeric antara lain integer (bilanganbulat), dan float (bilangan
pecahan). Selain jenis, dalam bahasa pemrograman juga diterapkan
presisi angka yang digunakan, misalnya tipe data Single adalah tipe
data untuk bilangan pecahan dengan presisi yang terbatas, sedangkan
tipe data Double adalah tipe data untuk bilangan pecahan dengan
presisi yang lebih akurat.
2. Character
Bersama dengan tipe data numeric, character merupakan tipe data
yang paling banyak digunakan. Tipe data character kadang disebut
sebagai char atau string. Tipe data string hanya dapat digunakan
menyimpan teks atau apapun sepanjang berada dalam tanda petik dua
() atau petik tunggal ().
3. Boolean
Tipe data Boolean digunakan untuk menyimpan nilai True/False
(Benar/Salah). Pada sebagian besar bahasa pemrograman nilai selain 0
menunjukkan True dan 0 melambangkan False. Tipe data ini banyak
digunakan untuk pengambilan keputusan pada struktur percabangan
dengan IF THEN atau IF THEN ELSE
Pertemuan 3
Array
Array atau sering disebut sebagai larik adalah tipe data yang sudah
terstruktur dengan baik, meskipun masih sederhana. Array mampu menyimpan
sejumlah data dengan tipe yang sama (homogen) dalam sebuah variabel. Setiap
lokasi data array diberi nomor indeks yang berfungsi sebagai alamat dari data
tersebut. Penjelasan tentang array akan disampaikan lebih detil 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++. Berbeda dengan array, tipe data record mampu menampung
banyak data dengan tipe data berbeda-beda (heterogen). Sebagai ilustrasi array
mampu menampung banyak data namun dengan satu tipe data yang sama,
misalnya integer saja. Sedangkan dalam record, kita bisa menggunakan untuk
menampung banyak data dengan tipe data yang berbeda, satu bagian integer,
satu bagian lagi character, dan bagian lainnya Boolean.
Biasanya record digunakan untuk menampung data suatu obyek. Misalnya,
siswa memiliki nama, alamat, usia, tempat lahir, dan tanggal lahir. Nama akan
akan menggunakan tipe data string, alamat bertipe data string, usia bertipe data
single (numeric), tempat lahir bertipe data string 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 = Record
Nama_Siswa : String[30]
Alamat : String[50]
Usia : Real
EndRecord
Image
Ket :
Image atau gambar atau citra merupakan tipe data grafik. Misalnya grafik
perkembangan jumlah siswa SMK, foto keluarga kita, video perjalanan dan lainlain. Pada bahasa-bahasa pemrograman modern terutama yang berbasis visual
tipe data ini telah didukung dengan sangat baik.
Date Time
Nilai data untuk tanggal (Date) dan waktu (Time) secara internal disimpan
dalam format yang pesifik. Variabel atau konstanta yang dideklarasikan dengan
tipe data Date dapat digunakan untuk menyimpan baik tanggal maupun jam.
Tipe data ini masuk dalam kelompok tipe data composite karena merupakan
bentukan dari beberapa tipe data.
Berikut ini contoh tipe data dalam Visual Basic.
Dim WaktuLahir As Date
WaktuLahir = 01/01/1997
WaktuLahir = 13:03:05 AM
WaktuLahir = 02/23/1998 13:13:40 AM
WaktuLahir = #02/23/1998 13:13:40 AM#
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.
Type
BatasIndeks = 1..20
RentangTahun = 1950..2030
Var
Indeks : BatasIndeks
Tahun : RentangTahun
Enumerasi
Tipe data ini merupakan tipe data yang mempunyai elemen-elemen yang
harus disebut satu persatu dan bernilai konstanta integer sesuai dengan
urutannya. Nilai konstanta integer elemen ini diwakili oleh suatu nama variable
yang ditulis di dalam kurung. Tipe data ini juga dijumpai 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_Bulan
Pada 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 data Nama_Bulan termasuk enumerasi dengan
rentang nilai Nol, Januari sampai dengan Desember
dan nilai data dari 0, 1, sampai dengan 12
Object
Pertemuan 4
Contoh-contoh program di dalam menggunakan variabel, konstanta.
a. Mencari Luas segitiga
Perhatikan algoritma sederhana berikut
Mulai
Baca data alas dan tinggi.
Luas adalah alas kali tinggi kali 0.5
Tampilkan Luas
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 satu kali. Sekilas algoritma di atas benar,
namun apabila dicermati maka algoritma ini mengandung kesalahan 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 seperti ini kita perlu menambahkan langkah untuk
memastikan nilai alas dan tinggi memenuhi syarat, misalnya dengan
melakukan pengecekan pada input yang masuk. Apabila input nilai alas dan
tinggi kurang dari 0 maka program tidak akan dijalankan. Sehingga algoritma
di atas dapat dirubah menjadi seperti contoh berikut.
Hasil perbaikan algoritma perhitungan luas segitiga
Start
Baca data alas dan tinggi.
Periksa data alas dan tinggi, jika nilai data alas dan tinggi lebih besar dari nol
maka lanjutkan ke langkah ke 4 jika tidak maka stop
Luas adalah alas kali tinggi kali 0.5
Tampilkan Luas
Stop
Keterangan :
Dari penjelasan di atas dapat diambil kesimpulan pokok tentang algoritma.
Pertama, algoritma harus benar. Kedua algoritma harus berhenti, dan
setelah berhenti, algoritma memberikan hasil yang benar
yang
sering
digunakan.
Kadang-kadang
orang
menyebut
Start
2. READ alas, tinggi
3. Luas = 0.5 * alas * tinggi
4. PRINT Luas
5. Stop
Keterangan:
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 pseudocode seperti di atas maka proses
penterjemahan dari algoritma ke kode program menjadi lebih mudah.
Lampiran 2
:
:
:
:
:
:
Pengetahuan
SMK Negeri 4 Baubau
X/II
Pemrograman Dasar
14
8 x 45
A. Kompetensi Dasar
Menerapkan Penggunaan Tipe Data, Variabel, Konstanta, Operator dan
Ekspresi
B. Indikator
Defenisi Tipe data, variabel, Konstanta, Operator dan Ekspresi
a. Soal
1. Tuliskan pengertian Tipe Data
2. Tuliskan pengertian Variabel !
3. Tuliskan pengertian Konstanta
4. Gambarkan macam-macam Tipe Data !
5. Buat sebuah program sederhana dengan menggunakan variabel !
b. Kunci Jawaban
1. Tipe data 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 variabel atau
konstanta akan sangat menentukan pemakaian sumberdaya komputer
(terutama memori komputer). Salah satu tugas penting seorang
programmer adalah memilih tipe data yang sesuai untuk menghasilkan
program yang efisien dan berkinerja tinggi
3. Konstanta adalah variabel yang nilai datanya bersifat tetap dan tidak
bisa diubah. Jadi konstanta adalah juga variabel bedanya adalah pada nilai
yang disimpannya. Jika nilai datanya sepanjang program berjalan tidak
berubah-ubah, Maka sebuah varibel lebih baik diperlakukan sebagai
konstanta. Pada sebuah kode program, biasanya nilai data dari konstanta
diberikan langsung dibagian deklarasi konstanta. Sedangkan untuk
variabel biasanya hanya ditentukan nama variabel dan tipe datanya tanpa
isian nilai data.
c. Penskoran
Pedoman Penilaian :
Konversi Nilai = Jumlah Skor x 20,
Jumlah Skor maksimal 20, maka 5 x 20 = 100
Lampiran 3
LEMBAR PENGAMATAN SIKAP
Kompetensi
Satuan Pendidikan
Kelas/Semester
Mata Pelajaran
Pertemuan ke
Alokasi waktu
Nomor peserta didik
:
:
:
:
:
:
Sikap
SMK Negeri 4 Baubau
X/II
Pemrograman Dasar
14
8 x 45
: .......................................................
.........................................................
1. Kompetensi dasar :
Berlaku jujur dan bertanggung jawab dalam mengerjakan tugas-tugas
dari dalam pembelajaran Pemrograman Dasar.
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
Pemrograman dasar.
5. Peserta didik dapt berperilaku santun dalam belajar.
No.
Sikap
1.
Jujur
2.
Tanggung
jawab
3.
Disiplin
4.
Bekerja
sama
5.
Santun
Kriteria
1. Melaporkan data/informasi
sesuai dengan apa yang
dibaca.
2. Menyampaikan
pendapat
disertai dengan informasi
dari buku sumber yang
diterima
1. Melaksanakan tugas sesuai
dengan perintah guru
2. Menyelesaikan
tugas
sampai selesai.
Melaksanakan dan menyelesaikan
tugas sesuai dengan waktu yang
ditetapkan.
Menghargai pekerjaan teman dan
berperan
aktif
dalam
menyelesaikan tugas kelompok.
1. Menyampaikan
pendapat
dengan bahasa dan nada
yang baik.
2. Menghargai
adanya
perbedaan pendapat.
Hasil
Ya
Tidak
Lampiran 4
LEMBAR PENGAMATAN KETERAMPILAN/PSIKOMOTOR
Kompetensi
Satuan Pendidikan
Kelas/Semester
Mata Pelajaran
Pertemuan ke
Alokasi waktu
:
:
:
:
:
:
Keterampilan
SMK Negeri 4 Baubau
X/II
Pemrograman Dasar
14
8 x 45
A. Kompetensi Dasar
Menerapkan Penggunaan Tipe Data, Variabel, Konstanta, Operator dan
Ekspresi
B. Indikator
Defenisi Tipe data, variabel, Konstanta, Operator dan Ekspresi
Isilah dengan tanda centang () apabila seorang siswa melakukan
aktivitas !
N
o.
Nama
*) Keterangan:
1. Aktifitas bertanya
Aspek keterampilan *)
2
3
4
Nilai
5
**)
**) Keterangan
1. Sangat Terampil, jika 5
keaktifan
2. Aktifitas menjawab
2.
3. Aktifitas mencatat
4. Akurasi jawaban
keaktifan
5. Akurasi pertanyaan
RENCANA
PELAKSANAAN
PEMBELAJARAN
( RPP )
K13
Tanggal
Halama
n
00
18 Juli
2016
1 dari 2
Nama Sekolah
Mata Pelajaran
Kelas / Semester
Standar Kompetensi
Pertemuan
Alokasi Waktu
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
KD untuk KI-1
1.4. Memahami
nilai-nilai
keimanan
dengan
menyadari
hubungan
keteraturan dan kompleksitas alam dan jagad raya terhadap kebesaran
Tuhan yang menciptakannya
1.5. Mendeskripsikan kebesaran Tuhan yang menciptakan berbagai sumber
energi di alam
1.6. Mengamalkan nilai-nilai keimanan sesuai dengan ajaran agama dalam
kehidupan sehari-hari
KD untuk KI-2
2.3. Menunjukkan perilaku ilmiah (memiliki rasa ingin tahu; objektif; jujur;
teliti; cermat; tekun; hati-hati; bertanggung jawab; terbuka; kritis;
kreatif; inovatif dan peduli lingkungan) dalam aktivitas sehari-hari
sebagai wujud implementasi sikap dalam melakukan percobaan dan
berdiskusi
2.4. Menghargai kerja individu dan kelompok dalam aktivitas sehari-hari
sebagai wujud implementasi melaksanakan percobaan dan melaporkan
hasil percobaan
KD untuk KI-3
Deskripsi
Alokasi
Waktu
45 Menit
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
percabangan.
2. Siswa berdikusi menganalisa
percabangan 1 kondisi.
3. Siswa berdikusi menganalisa
percabangan 2 kondisi.
tentang
tentang
tentang
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.
180 Menit
Mengasosiasi:
1. Siswa membuat sebuah kesimpulan
tentang penggunaan percabangan 1
kondisi, 2 kondisi, lebih dari 2 kondisi
dan percabangan bersarang.
Penutup
Mengkomunikasikan:
Siswa membuat sebuah laporan dan
mempresentasikan hasil dari sebuah
program sederhana.
1. Mereview kembali materi yang telah
disampaikan
15
45 Menit
Pertemuan 8 10
Kegiatan
Pendahuluan
Deskripsi
Alokasi
Waktu
Mengamati :
4. Siswa mengamati dan mendengarkan
45 Menit
180 Menit
Penutup
Mengkomunikasikan:
1. Siswa membuat sebuah laporan dan
mempresentasikan hasil dari sebuah
program sederhana.
1. Mereview kembali materi yang telah
disampaikan
2. Siswa mengerjakan evaluasi
3. Siswa saling memberikan umpan balik
hasil evaluasi pembelajaran yang telah
dicapai.
J. Alat Pembelajaran
1. Laptop
2. Infocus
3. Komputer
K. Penilaian
16
45 Menit
1. Teknik penilaian
2. Bentuk Instrumen dan Instumrn
a. Bentuk Instrumen
b. Instrumen
: Test tertulis
3. Pedoman Peskroan
: Terlampir
: Tes Uraian
: Terlampir
Ditinjau Oleh :
Wakasek Urusan Kurikulum,
Diperiksa Oleh :
Kapala Prog. TKJ,
Dibuat Oleh :
Guru Mata Pelajaran,
AMIR ISHAK, S. Pi
NIP. 19751222 200701
1006
LA GANI, S.Kom
NIP. 19770525 201001 1013
LA GANI,S.Kom
NIP. 19770525
2010011013
Lampiran 1
BAHAN AJAR
Kompetensi
Satuan Pendidikan
Kelas/Semester
Mata Pelajaran
Pertemuan ke
Alokasi waktu
:
:
:
:
:
:
Bahan Ajar
SMK Negeri 4 Baubau
X/II
Pemrograman Dasar
5 - 10
12 x 45
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 5
Struktur Algoritma Pemrograman
Sebelum memasuki materi tentang percabangan, terlebih dahulu kita
harus mengetahui apa itu algoritma?
Pengertian Algoritma
Algoritma adalah urutan langkah-langkah logis penyelesaian masalah
yang disusun secara sistematis. Masalah dapat berupa apa saja, dengan catatan
untuk setiap masalah, ada syarat kondisi awal yang harus dipenuhi sebelum
menjalankan algoritma. Konsep algoritma sering kali disetarakan dengan sebuah
resep. Sebuah resep biasanya memiliki daftar bahan atau bumbu yang akan
digunakan, urutan pengerjaan dan bagaimana hasil dari urutan pengerjaan
tersebut. Apabila bahan yang digunakan tidak tertera (tidak tersedia) maka resep
tersebut tidak akan dapat dikerjakan. Demikian juga jika urutan pengerjaannya
tidak beraturan, maka hasil yang diharapkan tidak akan dapat diperoleh.
Algoritma yang berbeda dapat diterapkan pada suatu masalah dengan syarat
yang sama. Tingkat kerumitan dari suatu algoritma merupakan ukuran seberapa
banyak komputasi yang dibutuhkan algoritma tersebut untuk menyelesaikan
masalah. Umumnya, algoritma yang dapat menyelesaikan suatu permasalahan
dalam waktu yang singkat memiliki tingkat kerumitan yang rendah, sementara
algoritma yang membutuhkan waktu lama untuk menyelesaikan suatu masalah
membutuhkan tingkat kerumitan yang tinggi.
Perhatikan algoritma sederhana berikut:
Mulai
PERTEMUAN 6
Pencarian Data dalam Array
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 berurutan sebagai 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
diketaui sebelum 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 ]
Deklarasi
Var
Contoh :
1. Bentuk Pertama sebagai variabel
Deklarasi
Nilai
: Nilai
Atau
X
: 100
Type
Nilai
: Nilai
Var
Atau
PERTEMUAN 7
PERCABANGAN 1 KONDISI
Penggunaan Larik dengan percabangan 1 kondisi
Array (larik) dibutuhkan apabila suatu proses memerlukan penyimpanan
sementara data yang bertipe 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 nantinya yang tersimpan data yang paling akhir.
Contoh dalam bahas Pemrograman Pascal :
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.
Jika Program ini dijalankan maka hasilnya Sebagai berikut :
Masukkan N (mak 100) : ketikkan 5
Masukkan suku ke-1 = 10
Masukkan suku ke-2 = 15
Masukkan suku ke-3 = 20
Masukkan suku ke-4 = 25
Masukkan suku ke-5 = 30
Hasilnya :
X[1] = 30
X[2] = 30
X[3] = 30
X[4] = 30
X[5] = 30
b. Variabel berindeks
Data 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;
X[2] = 15
X[3] = 20
X[4] = 25
X[5] = 30
PERTEMUAN 7
Larik 2 Dimensi
Misalkkan Matrik C ukuran 3x4 yang merupakan hasil penjumlahan dari
Matrik A ukuran 3x4 dan Matrik B ukuran 3x4.
A e
i
l
dan
am
C eq
iu
bn
f r
jv
m n o
B q r s
u v w
t
x
c o d p
g s ht
k w l x
: Larik
: Integer
: integer
Deskripsi
For I := 1 to m do
For 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
Deskripsi
: integer
For I := 1 to m do
For J := 1 to n do
Read ( B[I,j])
End for
Endfor
Procedure Jumlah_Array(Input x : Larik; Input M,N : integer);
Deklarasi
I,j
: integer
Deskripsi
For I := 1 to m do
For J := 1 to n do
C[I,j] := A[I,j] + B[I,j]
Write ( C[I,j] )
End for
Endfor
Deskripsi
Read (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 do
Begin
For J := 1 to n do
Begin
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 do
Begin
For J := 1 to n do
Begin
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 do
Begin
For J := 1 to n do
Begin
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.
Pengurutan Data pada Array
Permasalahan lain dalam array yang juga banyak digunakan adalah
bagaimana
mengurutkan
elemen-elemen
dari
variabel
array
tersebut.
Perhatikankembali Contoh 5.24. Pada contoh tersebut terlihat bahwa isi elemenelemen dari array tidak dalam posisi berurutan. Bagaimanakah caranya agar isi
elemenelemen tersebut terurut dari besar ke kecil atau sebaliknya? Ada
beberapa algoritma yang dapat digunakan untuk mengurutkan sekumpulan
bilangan, antara lain bubble sort, selection sort, shell sort, quick sort, dan lainlain. Pada buku ini kita akan membahas satu algoritma yaitu bubble sort.
Meskipun kinerjanya tidak sebaik algoritma yang lain, algoritma ini mudah
dimengerti dan banyak digunakan.
Operasi File
File seringkali digunakan untuk menyimpan data agar data tidak hilang.
Data atau yang ada dan dihasilkan pada program akan hilang ketika program
diakhiri, sehingga file digunakan untuk menyimpan data tersebut. Ada dua jenis
file yaitu file program dan file data. File program berisi kode-kode program
sedangkan file data hanya berisi data. File data terdiri dari dua jenis yaitu file
data berurutan (sequential data file) dan file data acak (random-access data file).
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
Readln;
End.
PERTEMUAN 9
Percabangan dengan 2 kondisi
Struktur satu kondisi (perintah if)
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
maka
program
ini
akan
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
omputer
Bentuk umum:
if (kondisi)
{
statement_jika_kondisi_terpenuhi;
}
else
{
statement_jika_kondisi_tidak_terpenuhi;
}
Contoh:
#include <iostream.h>
int main()
{
int nilai;
//memasukkan bilangan bulat
cout<<Masukkan sebuah bilangan bulat: ;
cin>>nilai;
//pengecek bilangan apakah habis dibagi dua atau tidak
if (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 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 *omputer;
}
else
{
cout<<Anda memasukkan bilangan NOL;
}
return 0;
}
Contoh Program :
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 do
Begin
For J := 1 to n do
Begin
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 do
Begin
For J := 1 to n do
Begin
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 do
Begin
For J := 1 to n do
Begin
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.
Lampiran 2
INSTRUMEN TES URAIAN
Kompetensi
: Pengetahuan
Satuan Pendidikan
: SMK 4 Baubau
Kelas/Semester
: X/II
Mata Pelajaran
: Pemrograman Dasar
Pertemuan ke
: 5 10
Alokasi waktu
: 12 x 45
C. Kompetensi Dasar
a. Menerapkan Struktur kontrol percabangan dalam bahasa
pemrograman
D. Indikator
1. Membuat Struktur kontrol percabangan,
2. Membuat Percabangan 1 kondisi
3. Membuat Percabangan 2 kondisi
4. Membuat Percabangan lebih dari 2 kondisi
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 *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 :
Variabel [ indeks1, indeks2 ]
c. Array 3 dimensi dituliskan :
Variabel [ indeks1, indeks2, indeks3 ]
3. Struktur Percabangan :
c. Pedoman Penilaian :
Konversi Nilai = Jumlah Skor x 25,
Jumlah Skor maksimal 25, maka 4 x 25 = 100
Lampiran 3
: Sikap
Satuan Pendidikan
: SMK 4 Baubau
Kelas/Semester
: X/II
Mata Pelajaran
: Pemrograman dasar
Pertemuan ke
: 5 10
Alokasi waktu
: 12 x 45
1. Kompetensi dasar :
Berlaku jujur dan bertanggung jawab dalam mengerjakan tugas-tugas
dari dalam pembelajar Algoritma dan Pemrograman Pascal
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.
Nomor peserta didik
: .......................................................
: .........................................................
No.
Sikap
1.
Jujur
2.
Tanggung
jawab
3.
Disiplin
4.
Bekerja
sama
5.
Santun
Kriteria
1. Melaporkan data/informasi
sesuai dengan apa yang
dibaca.
2. Menyampaikan
pendapat
disertai dengan informasi
dari buku sumber yang
diterima
1. Melaksanakan tugas sesuai
dengan perintah guru
2. Menyelesaikan
tugas
sampai selesai.
Melaksanakan dan menyelesaikan
tugas sesuai dengan waktu yang
ditetapkan.
Menghargai pekerjaan teman dan
berperan
aktif
dalam
menyelesaikan tugas kelompok.
1. Menyampaikan
pendapat
dengan bahasa dan nada
yang baik.
2. Menghargai
adanya
perbedaan pendapat.
Hasil
Ya
Tidak
Lampiran 4
LEMBAR PENGAMATAN KETERAMPILAN/PSIKOMOTOR
Kompetensi
: Keterampilan
Satuan Pendidikan
Kelas/Semester
: X/II
Mata Pelajaran
: Pemrograman dasar
Pertemuan ke
: 5 10
Alokasi waktu
: 12 x 45
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 !
N
o.
Nama
*) Keterangan:
1. Aktifitas bertanya
Aspek keterampilan *)
2
3
4
Nilai
5
**)
**) Keterangan
1. Sangat Terampil, jika 5
keaktifan
2. Aktifitas menjawab
2.
3. Aktifitas mencatat
4. Akurasi jawaban
keaktifan
5. Akurasi pertanyaan
NO. DOKUMEN
NTW.MNT.201.
(2).A
K13
Tanggal
Halama
n
Nama Sekolah
Mata Pelajaran
Kelas / Semester
Standar Kompetensi
Pertemuan
Alokasi Waktu
00
18 Juli
2016
1 dari 2
A. Kompetensi Inti
1. 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 peduli lingkungan) dalam aktivitas sehari-hari sebagai wujud
implementasi sikap dalam mlakukan percobaan dan diskusi.
4. Menghargai kerja individu dan kelompok dalam aktivitas sehari-hari
sebagai wujud implementasi melaksanakan percobaan dan melaporkan
hasil.
B. Kompetensi Dasar
KD untuk KI-1
1.7. Memahami
nilai-nilai
keimanan
dengan
menyadari
hubungan
keteraturan dan kompleksitas alam dan jagad raya terhadap kebesaran
Tuhan yang menciptakannya
1.8. Mendeskripsikan kebesaran Tuhan yang menciptakan berbagai sumber
energi di alam
1.9. Mengamalkan nilai-nilai keimanan sesuai dengan ajaran agama dalam
kehidupan sehari-hari
KD untuk KI-2
2.5. Menunjukkan perilaku ilmiah (memiliki rasa ingin tahu; objektif; jujur;
teliti; cermat; tekun; hati-hati; bertanggung jawab; terbuka; kritis;
kreatif; inovatif dan peduli lingkungan) dalam aktivitas sehari-hari
sebagai wujud implementasi sikap dalam melakukan percobaan dan
berdiskusi
2.6. Menghargai kerja individu dan kelompok dalam aktivitas sehari-hari
sebagai wujud implementasi melaksanakan percobaan dan melaporkan
hasil percobaan
KD untuk KI-3
3.7
Menerapkan
struktur kontrol
pemrograman
KD untuk KI-4
4.8
Memecahkan
perulangan
masaalah
menggunakan
struktur
kontrol
Deskripsi
Pendahuluan
Alokasi
Waktu
2. Guru
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.
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:
30 Menit
120 Menit
Penutup
Mengkomunikasikan:
1. Siswa membuat sebuah laporan dan
mempresentasikan
hasil
dari
sebuah program sederhana.
1. Mereview kembali materi yang telah
disampaikan
30
menit
Pertemuan 13 14
Kegiatan
Pendahuluan
Deskripsi
Alokasi
Waktu
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.
Menanya :
1. Siswa
berdikusi
menganalisa
tentang perulangan.
2. Siswa
berdikusi
menganalisa
tentang perulangan dengan kondisi
awal.
3. Siswa
berdikusi
menganalisa
tentang perulangan dengan kondisi
15 Menit
60 Menit
akhir.
Mengeksplorasi:
1. Siswa membuat kode program
menggunakan perulangan dengan
kondisi
awal,
dan
perulangan
kondisi akhir.
2. Siswa
melakukan
kompilasi,
eksekusi
dan
perbaikan
pada
kesalahan-kesalahan yang terdapat
dalam program.
Mengasosiasi:
1. Siswa membuat sebuah kesimpulan
tentang penggunaan perulangan
dengan
kondisi
awal,
dan
perulangan dengan kondisi akhir.
Penutup
Mengkomunikasikan:
1. Siswa membuat sebuah laporan dan
mempresentasikan
hasil
dari
sebuah program sederhana.
1. Mereview kembali materi yang telah
disampaikan
2. Siswa mengerjakan evaluasi
3. Siswa saling memberikan umpan balik
hasil evaluasi pembelajaran yang telah
dicapai.
30 menit
H. Penilaian
1. Jenis/teknik penilaian
2. Bentuk instrumen dan instrumen
a. Bentuk instrumen
1) Test
: Test Uraian
b. Instrumen
1) Test (Terlampir)
3. Pedoman penskoran (Terlampir)
I. Media, Alat, dan Sumber Pembelajaran
1. Media
1. Power Point
2. Internet
2.Alat dan bahan
a. laptop
b. LCD
c. Whiteboard
d. Spidol
e. Komputer
f. Software
3. Sumber Belajar
a. Supriyanto 2013, modul Pemrograman Dasar 1 SMK/MAK Kelas X
,Penerbit Kementerian Pendidikan dan Kebudayaan, Jakarta
Ditinjau Oleh :
Wakasek Urusan Kurikulum,
Diperiksa Oleh :
Kapala Prog. TKJ,
Dibuat Oleh :
Guru Mata Pelajaran,
AMIR ISHAK, S. Pi
NIP. 19751222 200701
LA GANI, S.Kom
NIP. 19770525 201001 1013
LA GANI,S.Kom
NIP. 19770525
1006
2010011013
Lampiran 1
BAHAN AJAR
Kompetensi
: Bahan Ajar
Satuan Pendidikan
Kelas/Semester
: X/II
Mata Pelajaran
: Pemrograman dasar
Pertemuan ke
: 11 14
Alokasi waktu
: 8 x 45
A. Kompetensi Dasar
2. Menerapkan struktur kontrol perulangan dalam bahasa
pemrograman
B. Indikator
1. Mengetahui Struktur kontrol perulangan
2. Mengetahui Perulangan dengan kondisi awal
3. Perulangan dengan kondisi akhir
Pertemuan 11
Struktur kontrol perulangan
Dalam banyak kasus seringkali kita dihadapkan pada sejumlah
pekerjaanyang harus diulang berkali. Salah satu contoh yang gampang
kita jumpai adalah balapan mobil seperti tampak pada Mobil-mobil peserta
harus mengelilingi lintasan sirkuit berkali-kali sesuai yang ditetapkan
dalam aturan lomba. Siapa yang mencapai garis akhir paling cepat, dialah
yang menang. Pada pembuatan program _omputer, kita juga kadangkadang 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
untuk
berputar-putar
mengendarai
mobil
yang
nilainya
akan
naik
atau
turun
selama
proses
pengulangan.
Flowchart umum untuk struktur For tampak pada Gambar 5.14.
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 keluar dari
proses pengulangan.
c. Mengeksekusi pernyataan yang ada di badan loop
d. Menaikkan/menurunkan nilai counter sesuai dengan jumlah yang
ditentukan pada argument increment. Apabila argument increment
tidak ditetapkan maka secara default nilai 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 While
Pada pengulangan dengan For, banyaknya pengulangan diketahui
dengan pasti karena nilai awal (start) dan nilai akhir (end) sudah
ditentukan diawal pengulangan. Bagaimana jika kita tidak tahu pasti harus
berapa kali mengulang? Pengulangan dengan While merupakan jawaban
dari permasalahan ini. Seperti halnya For, struktur pengulangan dengan
While juga merupakan struktur yang didukung oleh _omput semua bahasa
pemrograman namun dengan sintaks yang berbeda.
Flowchart umum untuk struktur For tampak pada Gambar 5.15
lagi.
Namun
kita
menggunakan
simbol
decision
untuk
Pertemuan 12
Diagram Alir dan Struktur Data
Algoritma 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 data yang akan kita cari, kita
bandingkan satu persatu sampai data yang kita inginkan bertemu atau
tidak ketemu dengan kumpulan data tersebut pada saat data yang kita
cari. Juga sudah ketemu maka proses pencaharian langsung kita hentikan,
tetapi data yang kita cari belum ketemu maka _omputer_ kita teruskan
sampai seluruh data dibandingkan. Dalam kasus yang paling burung
dengan vakton n elemen harus dilakukan pencaharian sebanyak n kali
pencarian.
Contoh :
5
7 9 10 50 70 6 12 8
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 :
a.
b.
c.
d.
e.
f.
g.
h.
i.
Shorting
Pertimbangan akan melakukan shorting.
Hal-hal yang akan dipertimbangkan adalah :
1. Perlu tidaknya data disorting
2. Besarnya atau banyaknya data yang akan dishorting
3. Kemampuan atau kapasitas komputer atau penyimpanan datanya
4. 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 elemen terakhir) dengan elemen-elemen sebelumnya.
Contoh : 8, 3, 7, 4
8, 7, 8, 4 (awal) 4 banding 8 Tukar
Hasil : 3, 4, 7, 8 4 banding 7 Tukar
Hasil : 3, 4, 7, 8 4 banding 3 Tetap
Hasil : 3, 4, 7, 8 (akhir)
2. Selection Sort (Sorting Pemilihan)
Tehnik ini adalah mencari elemen terkecil kemudian letakkan dan
tukar dengan posisi ke 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)
Pertemuan 13
a. MERGE SHORT
Shorter ini biasanya digunakan untuk jumlah data yang besar dengan
membagi-bagi menjadi sub-sub bagian dimulai dari sedikit elemen hingga
keseluruhan elemen tersebut menjadi data yang sudah diurut. Shorter ini
digunakan bila kapasitas memory tidak sanggup untuk menampung
seluruh data yang diakan disortir.
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 Decision
Tiap 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 loop
parameter := parameter + step;
goto 10
endif
c. 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 do
Blok loop
Endfor
d. Loop While
Pada loop ini sebelum masuk kedalam blok loop, nilai awal harus
didefenisikan diluar blok loop, yang kemudian akan dikomparasi dengan
batas loop, jika proses komparasi bernilai true maka proses akan masuk
kedalam blok loop.
Bentuk umum :
Parameter := awal
While (parameter <= akhir) do
Blok loop
Parameter := parameter + step
Endwhile.
e. Loop Repeat
Pada 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 komparasi bernilai false.
Bentuk umum :
Parameter := awal
Repeat
Blok loop
Parameter := parameter + step
Until parameter > akhir
f. Nested Loop For
Yang 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 ada karena sangat fleksibelnya.
Bentuk umum :
For indeks1 := awal1 to akhir1 do
Statement1
For indeks2 := awal2 to akhir 2 do
Statement2
Endfor
Endfor
Pertemuan 14
Perulangan dengan kondisi akhir
1. Nested Loop While
Penggunaan loop while yang saling tersarang sebagaimana pada kasus
loop for.
Bentuk umum :
Parameter := awal1
While (parameter <= akhir 1) do
Statemen1
Parameter2 := awal2
While (parameter <= akhir2) do
Statemen2
Parameter2 := parameter2 + step2
Endwhile
Parameter1 := parameter1 + step1
Endwhile
Lampiran 2
INSTRUMEN TES URAIAN
Kompetensi
Satuan Pendidikan
Kelas/Semester
Mata Pelajaran
Pertemuan ke
Alokasi waktu
:
:
:
:
:
:
Pengetahuan
SMK Negeri 4 Baubau
X/II
Pemrograman dasar
11 14
8 x 45
A. Kompetensi Dasar
4. Menerapkan struktur kontrol perulangan dalam bahasa
pemrograman
B. Indikator
1. Mengetahui Struktur kontrol perulangan
2. Mengetahui Perulangan dengan kondisi awal
3. Perulangan dengan kondisi akhir
a. Soal
b.
c.
membuat algoritma!
d.
e.
b. Kunci Jawaban
1. 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 dan dipahami.
b. Tidak ada notasi yang baku dalam penulisan teks algoritma
seperti notasi bahasa pemrograman. Notasi yang digunakan
dalam menulis algoritma disebut notasi algoritmik.
c. Setiap orang dapat membuat aturan penulisan dan notasi
algoritmik sendiri. Hal ini dikarenakan teks algoritma tidak
maka
sebaiknya
notasi
algoritmik
tersebut
_omputer.
Agar
dapat
dijalankan
oleh
_omputer,
suatu
permasalahan
ke
dalam
bahasa
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
Kelas/Semester
: X/II
Mata Pelajaran
: Pemrograman dasar
Pertemuan ke
: 11 14
Alokasi waktu
: 8 x 45
: .......................................................
.........................................................
1. Kompetensi dasar :
Berlaku jujur dan bertanggung jawab dalam mengerjakan tugas-tugas
dari dalam pembelajar Algoritma dan Pemrograman Pascal
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
Pemrograman dasar
5. Peserta didik dapt berperilaku santun dalam belajar.
No.
Sikap
Kriteria
Ya
1.
Jujur
2.
Tanggung
jawab
3.
Disiplin
4.
Bekerja
sama
5.
Santun
1. Melaporkan data/informasi
sesuai dengan apa yang
dibaca.
2. Menyampaikan
pendapat
disertai dengan informasi
dari buku sumber yang
diterima
1. Melaksanakan tugas sesuai
dengan perintah guru
2. Menyelesaikan
tugas
sampai selesai.
Melaksanakan dan menyelesaikan
tugas sesuai dengan waktu yang
ditetapkan.
Menghargai pekerjaan teman dan
berperan
aktif
dalam
menyelesaikan tugas kelompok.
1. Menyampaikan
pendapat
dengan bahasa dan nada
yang baik.
Hasil
Tidak
2. Menghargai
adanya
perbedaan pendapat.
Lampiran 4
LEMBAR PENGAMATAN KETERAMPILAN/PSIKOMOTOR
Kompetensi
: Keterampilan
Satuan Pendidikan
Kelas/Semester
: X/II
Mata Pelajaran
: Pemrograman dasar
Pertemuan ke
: 11 14
Alokasi waktu
: 8 x 45
A. Kompetensi Dasar
5. Menerapkan struktur kontrol perulangan dalam bahasa
pemrograman
B. Indikator
1. Mengetahui Struktur kontrol perulangan
2. Mengetahui Perulangan dengan kondisi awal
3. Perulangan dengan kondisi akhir
Isilah dengan tanda centang () apabila seorang siswa melakukan
aktivitas !
N
o.
Nama
Aspek keterampilan *)
2
3
4
*) Keterangan:
1. Aktifitas bertanya
Nilai
5
**)
**) Keterangan
1. Sangat Terampil, jika 5
keaktifan
2. Aktifitas menjawab
2.
3. Aktifitas mencatat
keaktifan
4. Akurasi jawaban
keaktifan
5. Akurasi pertanyaan
keaktifan
NO. DOKUMEN
NTW.MNT.201.
(2).A
K13
Tanggal
Halama
n
Nama Sekolah
Mata Pelajaran
Kelas / Semester
Standar Kompetensi
Pertemuan
Alokasi Waktu
i.
00
18 Juli
2016
1 dari 2
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.
ii.
Kompetensi Dasar
KD untuk KI-1
1.10. Memahami
nilai-nilai
keimanan
dengan
menyadari
hubungan
keteraturan dan kompleksitas alam dan jagad raya terhadap kebesaran
Tuhan yang menciptakannya
1.11. Mendeskripsikan kebesaran Tuhan yang menciptakan berbagai sumber
energi di alam
1.12. Mengamalkan nilai-nilai keimanan sesuai dengan ajaran agama dalam
kehidupan sehari-hari
KD untuk KI-2
2.1. Menunjukkan perilaku ilmiah (memiliki rasa ingin tahu; objektif; jujur;
teliti; cermat; tekun; hati-hati; bertanggung jawab; terbuka; kritis; kreatif;
inovatif dan peduli lingkungan) dalam aktivitas sehari-hari sebagai wujud
implementasi sikap dalam melakukan percobaan dan berdiskusi
2.2. Menghargai kerja individu dan kelompok dalam aktivitas sehari-hari
sebagai wujud implementasi melaksanakan percobaan dan melaporkan
hasil percobaan
KD untuk KI-3
3.8
Menerapkan keseluruhan
Penyelesaian masalah kompleks
konsep
alogaritma
dalam
KD untuk KI-4
4.8
iv.
Menyajikan Algoritma
Menyajikan Flowchart
Materi Ajar
1. Penyajian Algoritma
2. Kesalahan kesalahan yang terdapat dalam sebuah program
3. Flowchart
vi.
Metode Pembelajaran
1. Pendekatan : Scintifict learning
2. Strategi
: cooperatif learning
3. Model
: Problem based learning
4. Metode
:
Diskusi kelompok, ceramah, tanya jawab dan
penugasan
vii.
Kegiatan
Deskripsi
Pendahuluan
Inti
Mengamati :
1. Siswa mengamati dan mendengarkan
penjelasan tentang debugging dalam
sebuah program
2. 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
Alokasi
Waktu
30 Menit
120 Menit
Penutup
30 Menit
Pertemuan 17
Kegiatan
Deskripsi
Pendahuluan
Alokasi
Waktu
Penutup
15 Menit
Mengamati :
1. Siswa mengamati dan mendengarkan
penjelasan tentang debugging dalam
sebuah program
2. Siswa mengamati dan mendengarkan
penjelasan mengenai error yang terjadi
dalam sebuah program.
Menanya :
3. Siswa berdikusi menganalisa tentang
debugging sebuah program.
4. Siswa berdikusi menganalisa tentang error
salam sebuah program.
Mengeksplorasi:
2. Siswa melakukan kompilasi, eksekusi dan
perbaikan pada kesalahan-kesalahan yang
terdapat dalam program.
Mengasosiasi:
2. Siswa
membuat
sebuah
kesimpulan
tentang debugging dan error dalam
sebuah program.
Mengkomunikasikan:
Siswa
membuat
sebuah
laporan
dan
mempresentasikan hasil dari sebuah program
sederhana.
1. Mereview kembali materi yang telah
disampaikan
2. Siswa mengerjakan evaluasi
3. Siswa saling memberikan umpan balik hasil
evaluasi pembelajaran yang telah dicapai.
60 Menit
15 Menit
viii. Penilaian
4. Jenis/teknik penilaian
5. Bentuk instrumen dan instrumen
c. Bentuk instrumen
1) Test
: Test Uraian
d. Instrumen
1) Test (Terlampir)
6. Pedoman penskoran (Terlampir)
ix.
Ditinjau Oleh :
Wakasek Urusan Kurikulum,
Diperiksa Oleh :
Kapala Prog. TKJ,
Dibuat Oleh :
Guru Mata Pelajaran,
AMIR ISHAK, S. Pi
NIP. 19751222 200701
1006
LA GANI, S.Kom
NIP. 19770525 201001 1013
LA GANI,S.Kom
NIP. 19770525
2010011013
Lampiran 1
BAHAN AJAR
Kompetensi
: Bahan Ajar
Satuan Pendidikan
Kelas/Semester
: X/II
Mata Pelajaran
: Pemrograman dasar
Pertemuan ke
: 15 17
Alokasi waktu
: 6 x 45
A. Kompetensi Dasar
1. Menerapkan keseluruhan konsep algoritma dalam penyelesaian
masalah kompleks
B. Indikator
1. Analisa pemecahan masalah
2. Debugging dan error dalam program
Pertemuan 15
Penyajian Algoritma
Penyajian algoritma secara garis besar bisa dalam 2 bentuk penyajian yaitu tulisan dan
gambar. Algoritma yang disajikan dengan tulisan yaitu dengan struktur bahasa tertentu
(misalnya bahasa Indonesia atau bahasa Inggris) dan pseudocode. Pseudocode adalah kode
yang mirip dengan kode pemrograman yang sebenarnya seperti Pascal, atau C, sehingga lebih
tepat digunakan untuk menggambarkan algoritma yang akan dikomunikasikan kepada
pemrogram.
Sedangkan algoritma disajikan dengan gambar, misalnya dengan flowchart. Secara
umum, pseudocode mengekspresikan ide-ide secara informal dalam proses penyusunan
algoritma. Salah satu cara untuk menghasilkan kode pseudo adalah dengan meregangkan
aturan-aturan bahasa formal yang dengannya versi akhir dari algoritma akan diekspresikan.
Pendekatan ini umumnya digunakan ketika bahasa pemrograman yang akan digunakan telah
diketahui sejak awal.
Definisi Pseudo-code
Kode 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
diinputkan
Solusi Pseudo-code :
1. Masukkan bilangan pertama
2. Masukkan bilangan kedua
3. Jika bilangan pertama > bilangan kedua maka kerjakan langkah 4,
jika tidak, kerjakan langkah 5.
4. Tampilkan bilangan pertama
5. Tampilkan bilangan kedua
Solusi Algoritma :
1. Masukkan bilangan pertama (a)
2. Masukkan bilangan kedua (b)
3. if a > b then kerjakan langkah 4
4. print a
5. print b
Contoh Lain Algortima dan Pseudo-code :
Pertemuan 16
Flowchart
Flowchart merupakan gambar atau bagan yang memperlihatkan urutan dan hubungan
antar proses beserta pernyataannya. Gambaran ini dinyatakan dengan simbol. Dengan
demikian setiap simbol menggambarkan proses tertentu. Sedangkan antara proses
digambarkan dengan garis penghubung. Dengan menggunakan flowchart akan memudahkan
kita untuk melakukan pengecekan bagian-bagian yang terlupakan dalam analisis masalah.
Disamping itu flowchart juga berguna sebagai fasilitas untuk berkomunikasi antara
pemrogram yang bekerja dalam tim suatu proyek.
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,
dalam suatu sistem pengolahan data.
Pertemuan 17
Pemecahan masalah dalam sebuah Program
Untuk 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.
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 . l
di 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.
Lampiran 2
INSTRUMEN TES URAIAN
Kompetensi
: Tes Uraian
Satuan Pendidikan
Kelas/Semester
: X/II
Mata Pelajaran
: Pemrograman dasar
Pertemuan ke
: 15 17
Alokasi waktu
: 6 x 45
A. Kompetensi Dasar
1. Menerapkan keseluruhan konsep algoritma dalam penyelesaian
masalah kompleks
B. Indikator
1. Analisa pemecahan masalah
2. Debugging dan error dalam program
I.
Soal
1. 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 !
II.
Kunci Jawaban
1. Pseudocode adalah kode yang mirip dengan kode pemrograman yang sebenarnya
seperti Pascal, atau C, sehingga lebih tepat digunakan untuk menggambarkan
algoritma yang akan dikomunikasikan kepada pemrogram.
2. Solusi Pseudo-code :
a. Masukkan bilangan pertama
b. Masukkan bilangan kedua
c. Jika bilangan pertama > bilangan kedua maka kerjakan langkah
4, jika tidak, kerjakan langkah 5.
d. Tampilkan bilangan pertama
e. Tampilkan bilangan kedua
III.
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
Kelas/Semster
: X/II
Mata Pelajaran
: Pemrograman Dasar
Pertemuan ke
: 15 17
Alokasi waktu
: 6 x 45
: .......................................................
.........................................................
1. Kompetensi dasar :
Berlaku jujur dan bertanggung jawab dalam mengerjakan tugas-tugas
dari dalam pembelajar Algoritma dan Pemrograman Pascal
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.
No.
Sikap
Kriteria
Ya
1.
Jujur
2.
Tanggung
jawab
3.
Disiplin
4.
Bekerja
sama
5.
Santun
3. Melaporkan data/informasi
sesuai dengan apa yang
dibaca.
4. Menyampaikan
pendapat
disertai dengan informasi
dari buku sumber yang
diterima
3. Melaksanakan tugas sesuai
dengan perintah guru
4. Menyelesaikan
tugas
sampai selesai.
Melaksanakan dan menyelesaikan
tugas sesuai dengan waktu yang
ditetapkan.
Menghargai pekerjaan teman dan
berperan
aktif
dalam
menyelesaikan tugas kelompok.
3. Menyampaikan
pendapat
dengan bahasa dan nada
yang baik.
Hasil
Tidak
4. Menghargai
adanya
perbedaan pendapat.
Lampiran 4
LEMBAR PENGAMATAN KETERAMPILAN/PSIKOMOTOR
Kompetensi
: Keterampilan
Satuan Pendidikan
Kelas/Semster
: X/II
Mata Pelajaran
: Pemrograman Dasar
Pertemuan ke
: 15 17
Alokasi waktu
6 x 45
A. Kompetensi Dasar
1. Menerapkan keseluruhan konsep algoritma dalam penyelesaian
masalah kompleks
B. Indikator
1. Analisa pemecahan masalah
2. Debugging dan error dalam program
Isilah dengan tanda centang () apabila seorang siswa melakukan
aktivitas !
N
o.
Nama
*) Keterangan:
1. Aktifitas bertanya
Aspek keterampilan *)
2
3
4
Nilai
5
**)
**) Keterangan
1. Sangat Terampil, jika 5
keaktifan
2. Aktifitas menjawab
2.
3. Aktifitas mencatat
4. Akurasi jawaban
keaktifan
5. Akurasi pertanyaan