RENCANA PELAKSANAAN PEMBELAJARAN ( RPP )
Sekolah: SMK YPM 1 TAMAN SIDOARJOMata Pelajaran :
PemrogramanDasarKelas/ Semester : X / GanjilMateri Pokok: Algoritma
PemrogramanAlokasi Waktu : 9 JP (3 x 45 Menit )Pertemuan Ke: 1 s/d
3A. Kompetensi Inti1. Menghayati dan mengamalkan ajaran agama yang
dianutnya.2. Menghayati dan Mengamalkan perilaku jujur,
disiplin,tanggungjawab, peduli (gotong royong, kerjasama, toleran,
damai), santun, responsif dan proaktif dan menunjukan sikap sebagai
bagian dari solusi atas pelbagai permasalahan dalam berinteraksi
secara efektif dengan lingkungan sosial dan alam serta dalam
menempatkan diri sebagai cerminan bangsa dalam pergaulan dunia.3.
Memahami, menerapkan dan menganalisis pengetahuan faktual,
konseptual, dan procedural 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.4. 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 dan IndikatorKI.Kompetensi DasarIndikator
Pencapaian Kompetensi
1.1.1.Memahami nilai-nilai keimanan dengan menyadari hubungan
keteraturan dan kompleksitas alam dan jagad raya terhadap kebesaran
Tuhan yang menciptakannya1.1.1. Mengagumi akan ciptaan Allah yang
berjalan menurut aturan atau porosnya
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
2.2.1Menunjukkan 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 berdiskusi2.1.1. Bertanggung jawab
menyelesaikan tugas yang diberikan oleh guru2.1.2. Santun dalam
menyampaikan hasil diskusi dengan anggota kelompoknya
2.2Menghargai kerja individu dan kelompok dalam aktivitas
sehari-hari sebagai wujud implementasi melaksanakan percobaan dan
melaporkan hasil percobaan2.2.1. Kerjasama dalam memecahkan
permasalahan yang ada dalam kegiatan diskusi
33.1Memahami penggunaan data dalam algoritma dan konsep
algoritma pemrograman3.1.1. Konsep algoritma3.1.2. Struktur
algoritma3.1.3. algoritma menggunakan bahasa natural 3.1.4.
Pengenalan Variabel dan tipe data3.1.5. Pengenalan operator 3.1.6.
Pseudocode 3.1.7. Flowchart3.1.8. Penggunaan Tool flowchart
4.4.1Menggunakan algoritma pemrograman untuk memecahkan
permasalahan
4.1.1. Menerapkan Konsep algoritma4.1.2. Menggunakan Struktur
algoritma4.1.3. Menerapkan algoritma menggunakan bahasa natural
4.1.4. Menggunakan Variabel dan tipe data4.1.5. Menggunakan
operator4.1.6. Menggunakan Pseudocode 4.1.7. Menggunakan
Flowchart4.1.8. Menggunakan Tool flowchart
C. Tujuan PembelajaranSetelah Pembelajaran Peserta didik :1.
Memiliki motivasi internal, kemampuan bekerja sama, cermat, teliti
dan kreatif dalam memecahkan masalah2. Mampu mentransformasikan
diri dalam berperilaku jujur, teliti dan disiplin dalam melakukan
percobaan algoritma pemrograman3. Membuat algoritma dasar untuk
kehidupan sehari-hari4. Mampu menjelaskan dengan benar konsep
algoritma5. Mampu menjelaskan dengan benar struktur algortima6.
Terampil menerapkan struktur algoritma dalam algoritma
pemrograman7. Mampu menjelaskan dengan benar variabel8. Terampil
menerapkan variabel dalam algoritma pemrograman9. Mampu menjelaskan
dengan benar karakteristik tipe data10. Terampil menerapkan tipe
data dalam algoritma pemrograman11. Mampu menjelaskan dengan benar
operator12. Terampil menerapkan penggunaan operator dalam algoritma
pemrograman13. Mampu menjelaskan dengan benar pseudocode14.
Terampil menerapkan pseudocode dalam pemecahan masalah algoritma15.
Mampu menjelaskan dengan benar flowchart16. Terampil menerapkan
flowchart dalam pemecahan masalah algoritma17. Menerapkan logika
pemecahan masalah dalam struktur algoritma18. Membuat algoritma
sederhana dengan bahasa natural, flowchart dan pseudocode dengan
benar19. Mampu menjelaskan tool flowchart dengan benar20. Terampil
Menerapkan tool flowchart dalam pemecahan masalah algoritma
D. Materi Ajar1. Konsep algoritma2. Struktur algoritma3.
Algoritma menggunakan bahasa natural4. Pengenalan Variabel5.
Pengenalan tipe data6. Pengenalan operator7. Pseudocode8.
Flowchart9. Penggunaan Tool flowchartE. Metode
PembelajaranPendekatan:Konstruktivis
Model:Problem Based Learning ( PBL ), DI (Direct
Instructions)
Metode:Penugasan, tanya jawab, diskusi, demonstrasi
F. Media pembelajaranMedia/Alat:Komputer, LCD Proyektor,
Powerpoint, Software RAPTOR (Flowchart Emulator
Bahan/SumberBelajar:Buku Algoritma Pemrograman
G. Langkah langkah Pembelajaran
Pertemuan Ke- 1
KegiatanDeskripsiAlokasi Waktu
A. Pendahuluan1. Motivasi : Melakukan pembukaan dengan salam
pembuka dan berdoa memulai pembelajaran Memeriksa kehadiran peserta
didik Memberikan informasi pentingnya kejujuran, ketelitian dan
disiplin dalam melaksanakan segala sesuatu2. Apersepsi : Tanya
jawab seputar kegiatan yang dilakukan sehari-hari3.
Menginformasikan kompetensi dasar yang harus dicapai peserta
didik30 Menit
B. IntiMengamati Peserta didik mengamati contoh kegiatan sehari
hari yang dipaparkan guru Peserta didik mengamati alur atau diagram
contoh algoritma dalam kehidupan sehari hari yang disajikan
guruMenanya Menanya peserta didik tentang kegiatan sehari hari yang
dilakukan Mengarahkan peserta didik untuk bertanya hubungan
kegiatan sehari hari dengan algoritmaMengeksplorasi Peserta didik
membuat urutan kegiatan yang sering dilakukan sehari-hari Peserta
didik menggali informasi tentang konsep algoritma dari buku atau
internet Peserta didik menggali informasi mengenai struktur
algoritma dari buku atau internetMangasosiasi Peserta didik
mendiskusikan pengertian algoritma dan konsep algoritma Peserta
didik mendiskusikan struktur algoritma Peserta didik masing masing
kelompok membuat contoh algortima untuk kegiatan
sehari-hariMengkomunikasikan Beberapa kelompok menyimpulkan dari
hasil diskusinya mengenai pengertian algoritma, konsep algoritma
dan struktur algoritma75 Menit
C. PenutupSetiap siswa melakukan refleksi pembelajaran Guru dan
peserta didik membuat kesimpulan dari materi yang dipelajari Guru
menanyakan pengalaman apa yang didapat peserta didik pada saat
pembelajaran algoritma sehari-hari Guru Menyampaikan informasi
pembelajaran pada pertemuan yang akan datang yaitu mengenai Bahasa
Natural dan Pengertian Variabel Guru memberikan tugas kepada
peserta didik untuk membuat beberapa contoh algoritma dalam
kegiatan sehari-hari30 Menit
Pertemuan Ke- 2
KegiatanDeskripsiAlokasi Waktu
A. Pendahuluan1. Motivasi : Melakukan pembukaan dengan salam
pembuka dan berdoa memulai pembelajaran Memeriksa kehadiran peserta
didik Memberikan informasi pentingnya kejujuran, ketelitian dan
disiplin dalam melaksanakan segala sesuatu Memberikan informasi
pentingnya algortima bagi seorang programmer Memberikan informasi
pentingnya variabel, tipe data, dan operator dalam penyusunan
program komputer2. Apersepsi : Tanya jawab seputar kegiatan yang
sering dilakukan sehari-hari Mengarahkan peserta didik untuk
membuka Tugas Pekerjaan Rumah pada pertemuan sebelumnya tentang
algoritma kegiatan sehari-hari Mengumpulkan Tugas algoritma
kegiatan sehari hari yang sudah dibuat3. Menginformasikan
kompetensi dasar yang harus dicapai peserta didik30 Menit
B. IntiMengamati Peserta didik memikirkan benda-benda yang bisa
digunakan untuk menampung suatu isi atau sebagai wadah dalam
kehidupan sehari hari Peserta didik mengamati salah satu benda atau
wadah yang bisa menampung isi yang berubah ubah Peserta didik
mengamati besarnya kapasitas dan fungsi salah satu benda atau wadah
Peserta didik mengamati proses apa saja yang dapat dilakukan salah
satu benda atau wadah terhadap isi variable, serta perolehan hasil
proses tersebut Peserta didik membaca modul yang tersedia tentang
Variabel, Tipe Data dan Operator
Menanya Menanya peserta didik tentang jenis, fungsi, dan proses
apa saja yang dapat dilakukan dari wadah yang digunakan Menanya
peserta didik tentang Variabel, Tipe Data, dan Operator Menanya
peserta didik tentang macam Variabel, Tipe Data, dan Operator
Memberikan kesempatan kepada peserta didik untuk bertanya tentang
materi yang sedang dibahas (Variabel, Tipe Data, dan
Operator)Mengeksplorasi Peserta didik menggali informasi tentang
pengertian algortima dengan bahasa natural dan contoh algoritma
dengan bahasa natural dalam kegiatan sehari-hari melalui buku atau
internet Peserta didik menjelaskan pengertian variabel dan contoh
penerapan masing-masing macam variabel Peserta didik menjelaskan
pengertian Tipedata dan contoh penerapan masing-masing macam
Tipedata Peserta didik menjelaskan pengertian Operator dan contoh
penerapan masing-masing macam OperatorMangasosiasi Peserta didik
membentuk kelompok diskusi Peserta didik mendiskusikan pengertian
algoritma bahasa natural dan penggunaan dari masing masing Peserta
didik menjelaskan pengertian Variabel, Tipe Data, dan
Operator.Mengkomunikasikan Beberapa perwakilan kelompok dari
peserta didik mengemukakan kesimpulan hasil diskusinya75 menit
C. PenutupSetiap siswa melakukan refleksi pembelajaran Guru dan
peserta didik membuat kesimpulan dari materi yang dipelajari Guru
menanyakan pengalaman apa yang didapat peserta didik pada saat
pembelajaran Guru Menyampaikan informasi pembelajaran pada
pertemuan yang akan datang yaitu mengenai Pengenalan Variabel, Tipe
Data, dan Operator Guru memberikan tugas kepada peserta didik untuk
membuat beberapa contoh algoritma dalam kegiatan sehari-hari dengan
menyertakan Variabel, Tipe Data, dan Operator, yang bisa digunakan
dan algoritma berformat bahasa natural30 Menit
Pertemuan Ke - 3
KegiatanDeskripsiAlokasi Waktu
A. Pendahuluan1. Motivasi : Melakukan pembukaan dengan salam
pembuka dan berdoa memulai pembelajaran Memeriksa kehadiran peserta
didik Memberikan informasi pentingnya kejujuran, ketelitian dan
disiplin dalam melaksanakan segala sesuatu Memberikan informasi
pentingnya seorang programmer dalam sebuah perusahaan Memberikan
informasi pentingnya algortima bagi seorang programmer Memberikan
informasi pentingnya flowchart dan pseudocode dalam penyusunan
program komputer2. Apersepsi : Tanya jawab seputar materi kegiatan
kemarin dan tugas yang diberikan Mengarahkan peserta didik untuk
membuka Tugas Pekerjaan Rumah pada pertemuan sebelumnya
Mengumpulkan Tugas yang sudah dibuat3. Menginformasikan kompetensi
dasar yang harus dicapai peserta didik
30 menit
B. IntiMengamati Peserta didik mengamati contoh baris yang
ditampilkan oleh guruMenanya Menanya peserta didik tentang apa yang
berbeda dari baris yang dipaparkan Menanya peserta didik mengenai
pebedaan kode program yang ditampilkan dengan sebelumnya Menanya
peserta didik yang sudah mengetahui maksud dari kode yang berbeda
tersebutMengeksplorasi Peserta didik menggali informasi tentang
Flowchart & Pseudocode Peserta didik menggali informasi tool
aplikasi flowchart & pseudocode Peserta didik menggali
informasi penggunaan fungsi flowchart & pseudocodeMangasosiasi
Peserta didik membentuk kelompok diskusi Peserta didik
mendiskusikan pengertian flowchart & pseudocode Peserta didik
mendiskusikan penggunaan flowchart &
pseudocodeMengkomunikasikan Beberapa perwakilan kelompok dari
peserta didik mengemukakan kesimpulan hasil diskusinya75 Menit
C. PenutupSetiap siswa melakukan refleksi pembelajaran Guru dan
peserta didik membuat kesimpulan dari materi yang dipelajari Guru
menanyakan pengalaman apa yang didapat peserta didik pada saat
pembelajaran Guru Menyampaikan informasi pembelajaran pada
pertemuan yang akan datang yaitu mengenai Flowchart (beserta tool
flowchart) & pseudocode Guru memberikan tugas kepada peserta
didik untuk membuat beberapa contoh flowchart & pseudocode dari
tugas-tugas algoritma sehari-hari30 Menit
H. Penilaian 1. Teknik penilaian: Test tertulis2. Bentuk
Instrumen dan Instumrn:a. Bentuk Instrumen :Tes Uraianb. Instrumen
:Terlampir3. Pedoman Penskor-an:TerlampirNo.Jenis PenilaianBentuk
Instrumen Penilaian
1PengetahuanTes uraian, rubrik penilaian, dan kriteria
penilaian
2KinerjaJobsheet, rubrik penilaian, dan kriteria penilaian
3Perilaku dan sifat (Spiritual)Penilaian aspek spiritual
meliputi kejujuran, kemandirian, kepedulian dan tanggungjawab
disertai kriteria penilaian
4Sosial (Kerja kerlompok) Penilaian individu dalam kelompok
kerja, dan kriteria penilaian
I. DAFTAR PUSTAKAC, Rinaldi Munir, Algoritma dan Pemrograman
Dalam Bahasa Pascal dan, November 2011, Penerbit INFORMATIKAAchmad
Solichin, Pemrograman Bahasa C dengan Turbo C, 2013,
ilmukomputer.comZarlis dan Handrizal,Algoritma & Pemrograman
Teori dan Praktik dalam Pascal, Muhammad 2008, USU Press
DiverifikasiWaka Kurikulum
Ismunib, S.T
Sidoarjo, 14 Juli 2014Guru Mata Pelajaran
Moch. Najib Fahmi, ST MT
MengetahuiKepala Sekolah
Achmad Farich, S.T., M.Pd
Lampiran 1BAHAN AJARKompetensiSatuan
PendidikanKelas/SemesterMata PelajaranPertemuan keAlokasi
waktu::::::Bahan AjarSMK YPM 1X / GanjilPemrograman Dasar1 33 X 45
menit
A. Kompetensi DasarMemahami penggunaan data dalam algoritma dan
konsep algoritma pemrograman
B. Indikator1. Memahami Konsep algoritma2. Memahami Struktur
algoritma3. Memahami bahwa algoritma menggunakan bahasa natural 4.
Mengenal Variabel 5. Mengenal tipe data6. Mengenal operator 7.
Mengenal Pseudocode & Flowchart
C. MateriKONSEP ALGORITMA A. PengertianAlgoritma berasal dari
nama penulis buku Arab yaitu Abu Ja'far Muhammad ibnu Musa Al-
Khuwarizmi. Algoritma Langkah-langkah yang logis dan terstruktur
untuk menyelesaikan suatu masalah Algoritma merupakan suatu : 1.
Tahapan-tahapan untuk mencapai hasil. 2. Tahapan itu bisa berarti
proses. 3. Hasil itu bisa berarti produk. Algoritma juga merupakan
suatu : 1. Susunan yang terurut dan logis dalam menyelesaikan
masalah. 2. Setiap masalah sangat dimungkinkan memiliki proses
penyelesaian yang berbeda. 3. Perbedaan penyelesaian terhadap suatu
masalah dipengaruhi oleh kemampuan dan pengetahuan seseorang
terhadap masalah yang dihadapi Ciri-ciri Algoritma yang baik adalah
: 1. Ditulis secara berurutan 2. Tidak ada yang bermakna ganda
(ambiguous) 3. Penyelesaiannya Berhingga atau ada titik akhir.4.
Memiliki Input5. Memiliki Output6. Bersifat efektif Identifikasi
masalah : Dengan disadari atau tidak disadari dalam kehidupan kita
sehari-hari banyak hal-hal rutinitas yang dikerjakan secara
terurut, misalnya bagaimana cara manusia berpakaian, bagaimana cara
manusia mandi, bagaimana cara manusia memasak nasi, dan lain-lain.
Tentu setiap orang memiliki cara pandang dan langkah urutan yang
berbeda dalam menggunakan pakaian secara lengkap. Itulah algoritma.
Banyak masalah-masalah dimasyarakat yang sebenarnya adalah suatu
algoritma tetapi tidak berhubungan sama sekali atau diselesaikan
atau dikerjakan dengan menggunakan bantuan komputer, seperti contoh
yang telah disebutkan diatas. Asalkan kita dapat menyusun dengan
benar dan logis urutan-urutan menurut norma yang ada maka kita
sebenarnya telah menyusun algoritma. Perhatikan contoh dibawah ini,
bagaimana anda menyusun urutan yang logis dalam memasak mie instan
dengan berbagai variasi pelengkapnya.Jawaban dari gambar diatas,
tentu anda memiliki tata cara tersendiri untuk menghasilkan masakan
terbaik dari sisi tampilan maupun rasa. Dengan bahan dasar yang
sama tetapi menghasilkan bentuk yang berbeda tentunya dalam proses
pembuatannya memiliki urutan yang berbeda-beda. Jika anda
menggunakan urutan dan tata cara yang sama tentunya anda tidak
menggunakan urutan yang logis untuk menghasilkan masakan terbaik.
Itulah algoritma.B. Kaitan Algoritma dan Komputer Suatu algoritma
dapat diselesaikan dan diwujudkan dengan menggunakan bantuan
komputer. Lantas komputer yang seperti apa? yaitu : a. Komputer
yang bisa memahami keinginan manusia. b. Komputer yang bisa
memahami bahasa manusia. c. Komputer yang bisa menterjemahkan
bahasa manusia dengan bahasa komputer. d. Komputer yang bisa
berfungsi sebagai bahasa penterjemah. e. Bahasa penterjemah ini
dimaksudkan untuk menterjemahkan bahasa yang dibuat oleh manusia
dengan bahasa yang dipahami oleh mesin komputer.Bahasa Penterjemah
Orang mengatakan istilah penterjemah disini dengan istilah
Compiler. Di dunia pemrograman komputer, istilah compiler ini sudah
tidak asing lagi, hal ini karena compiler menjadi sarana utama
untuk menterjemahkan bahasa program dengan bahasa mesin. Compiler
sudah melekat kepada merk bahasa program yang telah disediakan
(produksi) oleh perusahaan besar. Contoh-contoh bahasa program yang
banyak beredar dimasyarakat, diantaranya : C++, Pascal, Java,
Visual Basic, Foxpro dan masih banyak lagi lainnya.C. Cara
Penyelesaian Masalah dengan Komputer Untuk menyelesaikan masalah
hingga pemanfaatan komputer, dapat dilihat pada bagan dibawah ini
:
BAGAN ALGORITMAA. Bagian-bagian AlgoritmaKepala
AlgoritmaMerupakan bagian dari algoritma yang menjelaskan topik
atau judul algoritmaDeklarasiMerupakan bagian dari algoritma yang
mendefinisikan semua variabel, konstanta, prosedur , dan fungsi .
Bagian ini ditulis setelah judul algoritma, dan bersifat opsional
(dibutuhkan apabila akan dipakai pada bagian Deskripsi
DeskripsiMerupakan bagian dari algoritma yang menjelaskan urutan
proses penyelesaian masalah.
B. Tipe DataData memiliki kesamaan arti dengan bentuk isi. Di
bidang komputer, data merupakan informasi yang disimpan didalamnya.
Dan informasi memiliki beragam macam bentuk dan jenis yang disebut
dengan TIPE DATA. Secara garis besar, Tipe data diklasifikasikan
atas dasar :1. Kapasitas penggunaan memori2. Jenis data yang akan
disimpan Sedangkan berdasarkan jenis data dibedakan atas :1. Tipe
Angka2. Tipe Karakter (ASCII)3. Tipe Logika4. Tipe Obyek Dan ragam
tipe data dari setiap bahasa pemrograman, memiliki aturan
tersendiri untuk menentukannya. Tipe data dijadikan acuan dasar
didalam pendeklarasian variabel, konstanta, dan fungsi. Contoh tipe
data : Nama, maka akan mengandung tipe karakter huruf dan angka
Luas segitiga, maka akan mengandung tipe angka Setuju, maka akan
mengandung tipe logika
C. VariabelVariabel merupakan tempat untuk menyimpan nilai
sementara. Variabel selalu identik dengan penggunaan tipe data.
Variabel harus memiliki nama sebagai identitas. Sebuah variabel
hanya dapat menyimpan satu nilai data sesuai dengan type datanya.
Contoh variabel adalah dapat diperhatikan pada saat kita melihat
sebuah rumus, misalkan rumus mencari luas persegi panjang. Maka
variabel yang berkaitan adalah luas, panjang, dan lebar.D.
OperatorOperator adalah simbol-simbol khusus yang digunakan untuk
mengoperasikan suatu nilai data. Didalam matematika, seringkali
kita menggunakan operator, misalkan penjumlahan dengan notasi +,
pengurangan dengan notasi -, perkalian dengan notasi x, dan masih
banyak lagi yang lainnya.
NOTASI ALGORITMA A. Karakteristik AlgoritmaSifat Algoritma
adalah : Tidak menggunakan simbol atau sintaks dari suatu bahasa
pemrograman Tidak tergantung pada suatu bahasapemrograman
Notasi-notasinya dapat digunakan untuk seluruh bahasa manapun
Algoritma lebih bersifat general.
B. Ragam Notasi AlgoritmaPada dasarnya suatu algoritma dapat
ditulis menggunakan 3 cara yaitu :1. Narasi2. Flowchart3.
Pseudocode
Narasi
Merupakan algoritma yang dituliskan dalam bentuk deskripsi
proses dengan teks bebas. Contoh :Algoritma {Mencari Luas Persegi
Panjang}Deklarasi : Luas, Panjang, LebarDeskripsi :1. Masukkan
Panjang2. Masukkan Lebar3. Luas = Panjang x Lebar4. Tampilkan
Luas
FlowchartSuatu gambar dengan simbol yang spesifik menjelaskan
tentang aliran logika dari suatu masalah untuk menghasilkan solusi.
Setiap simbol dihubungkan dengan suatu garis panah. Beberapa simbol
yang sering digunakan seperti tabel dibawah ini
Contoh : Flowchart -> Mencari Luas Persegi Panjang
PseudocodePseudo-code berarti menyerupai kode. Maksud kode
adalah elemen-elemen dalam bahasa pemrograman komputer seperti
simbol aritmatika, perintah input dan output tetapi bahasa yang
digunakan adalah bahasa yang mudah dipahami secara universal dan
lebih ringkas. Kode-kode ini merupakan penjelasan cara
menyelesaikan suatu masalah.
Contoh : Pseudocode -> Mencari Luas Persegi PanjangAlgoritma
{Mencari Luas Persegi Panjang}Deklarasi : Luas, Panjang,
LebarDeskripsi :1. Cin>>Panjang2. Cin>>Lebar3. Luas