Anda di halaman 1dari 30

TUGAS

PEDAGOGIK
MODUL 5 KEGIATAN BELAJAR 4

PERENCANAAN PEMBELAJARAN

NO PESERTA : 18050252310302
NAMA : ABINURDIAN
KELAS : UM 253 C

PROGRAM PPG DALAM JABATAN


UNIVERSITAS NEGERI MALANG
TAHUN 2018

1
1. Perbandingan RPP Tahun 2016 dengan RPP revisi 2017
A. RPP sesuai Permendikbud No.22 Tahun 2016 (RPP1)
No. Komponen RPP Analisis
1. Identitas sekolah yaitu Identitas sekolah berisi nama satuan pendidikan
nama satuan
pendidikan
2. Identitas mata Identitas mata pelajaran sudah tercantum dan
pelajaran atau dilengkapi kelas/semester, materi pokok, dan
tema/subtema alokasi waktu
3. Tujuan Pembelajaran Tujuan pembelajaran sudah dibuat sesuai
komponen ABCD
4. Kompetensi Dasar Kompetensi dasar sudah tercantum
5. Indikator pencapaian Indikator pencapaian kompetensi sesuai dengan
kompetensi KD dan dirumuskan dengan menggunakan kata
kerja operasional yang dapat diamati dan/atau
diukur dan mencakup (kognitif), sikap (afektif) dan
keterampilan (psikomotor);
6. Materi Materi pembelajaran secara lengkap dalam bentuk
Lembar Kerja Peserta Didik sudah dilampirkan
7. Model/Metode Metode pembelajaran sudah dicantumkan namun
pembelajaran tidak disebutkan model pembelajarn apa yang
digunakan
8. Media Pembelajaran Penulisan media belajar belum spesifik dan urutan
penyusunan tidak sesuai yang disebutkan pada
Permendikbud No. 22 tahun 2016
9. Sumber Belajar Sumber belajar sudah tercantum namun urutan
penyusunan tidak sesuai yang disebutkan pada
Permendikbud No. 22 tahun 2016
10. Langkah-langkah Paada kegiatan inti belu terlihat sintak yang jelas
kegiatan dari model pembelajarn yang digunakan
pembelajaran
11. Penilaian Penilaian sudah spesifik dan disertai instrumen tes

B. RPP revisi 2017 yang ada pada contoh (RPP 2)


No. Komponen RPP Analisis
1. Identitas sekolah Identitas sekolah sudah tercantum
yaitu nama satuan
pendidikan

2
2. Identitas mata Identitas mata pelajaran sudah tercantum dan
pelajaran atau dilengkapi kelas/semester, materi pokok, dan
tema/subtema alokasi waktu
3. Kompetensi Inti Kompetensi Inti (sikap, spiritual, pengetahuan,
dan keterampilan)
4. Kompetensi Dasar Kompetensi dasar sudah tercantum
5. Indikator pencapaian Indikator pencapaian kompetensi sesuai dengan
kompetensi KD dan dirumuskan dengan menggunakan kata
kerja operasional yang dapat diamati dan/atau
diukur dan mencakup (kognitif), sikap (afektif) dan
keterampilan (psikomotor);
6. Tujuan Pembelajaran Tujuan pembelajaran sudah dibuat sesuai
komponen ABCD
7. Materi Materi pembelajaran ditulis pointnya saja tanpa
lampiran
8. Model/Metode Metode dan model pembelajaran sudah
pembelajaran dicantumkan
9. Media Pembelajaran Media belajar sudah ditulis secara spesifik
10. Sumber Belajar Sumber belajar sudah tertulis
11. Langkah-langkah Pada kegiatan sudah terlihat sintak yang jelas dari
kegiatan model pembelajarn yang digunakan
pembelajaran
12. Penilaian Penilaian sudah spesifik namun belum disertai
lampiran instrumen tes
13. Lampiran Lampiran yang mendukung disertakan di akhir
halaman

C. Kesimpulan
Kedua RPP sudah memuat komponen RPP yang tercantum pada
Permendikbud nomor 22 tahun 2016, namun pada RPP 1 tidak tercantum model
pembelajaran yang digunakan dan pada langkah-langkah pembelajaran tidak
terlihat sintak yang jelas pada kegiatan inti. Setelah dibandingkan, terlihat
bahwa urutan komponen RPP dalam panduan penyusunan RPP revisi 2017
berbeda dengan RPP menurut Permendikbud nomor 22 tahun 2016. Salah
satu perbedaannya yaitu pada RPP 1 tujuan pembelajarannya dibuat lebih
dahulu dibandingkan indikator pembelajaran. Sedangkan menurut revisi
2017, tujuan pembelajaran dibuat setelah menentukan indikator
pembelajaran.

3
2. Rangkuman konten video panduan penyusunan RPP Versi 2017
Penyusunan RPP ditekankan pada keterkaitan dan keterpaduan KD, materi
pembelajaran, kegiatan pembelajaran, indikator pencapaian, kompetensi, penilaian,
dan sumber belajar dalam satu keutuhan pengalaman belajar.
a. Identitas terdiri dari nama sekolah, mata pelajaran, kelas/semester, materi pokok
dan alokasi waktu.
b. Kompetensi Inti (KI) dikutip dari Permendikbud No. 21 Tahun 2016 mencakup
sikap, sosial, pengetahuan, dan keterampilan.
c. Kompetensi Dasar (KD) dikutip dari Permendikbud No. 24 Tahun 2016 yang
merupakan kemampuan minimal yang harus dicapai oleh peserta didik.
Indikator pencapaian kompetensi (IPK) dikembangkan dari KD dan
menggunakan kata kerja operasional yang dapat diukur.
d. Tujuan pembelajaran dirumuskan berdasarkan KD dan menggunakan kata kerja
operasional yang dapat diamati dan diukur, dituangkan dalam bentuk deskripsi
dan memuat kompetensi yang hendak dicapai, memberikan gambaran
operasional dan pencapaian hasil belajar.
e. Materi memuat fakta, prinsip, dan prosedur yang ditulis dalam bentuk butir-
butir.
f. Metode pembelajaran yang digunakan sesuai dengan tujuan pembelajaran dan
menerapkan pembelajaran aktif yang dapat meningkatkan kemampuan HOTS
(High Order Thinking Skill). Metode pembelajaran harus menggambarkan
sintaks yang jelas.
g. Media pembelajaran merupakan alat bantu proses pembelajaran yang
mendukung pencapaian kompetensi. Media pembelajaran yang digunakan
hendaknya sesuai dengan karakteristik peserta didik.
h. Sumber belajar dapat berupa buku, media cetak dan elektronik, ataupun alam
sekitar.
i. Langkah-langkah pembelajaran melalui tahapan pembukaan, inti, dan penutup
yang terintegrasi dengan kemampuan 4C. pembelajaran hendaknya interaktif,
inspiratif, menyenangkan, menantang dan memotivasi peserta didik.
j. Penilaian yang dilakukan harus sesuai dengan:
(1) kompetensi yang diajarkan;

4
(2) kegiatan yang dilakukan dalam pembelajaran sesuai materi;
(3) memuat soal dengan High Order Thinking Skill;
(4) lingkup penilaian sikap, pengetahuan, dan keterampilan.
k. Teknik penilaian yang dapat digunakan:
(1) Sikap, berbentuk observasi, jurnal, penilaian diri, penilaian antar teman
(2) Pengetahuan, berbentuk tes tulis, tes lisan, penugasan
(3) Keterampilan, berbentuk praktik, proyek, portofolio.
l. Lampiran berisi hal-hal yang mendukung misalnya uraian materi yang memang
diperlukan, instrumen penilaian dilengkapi pedoman penskoran, dll.

3. RPP salah satu KD mata pelajaran yang saya ampu:

5
RENCANA PELAKSANAAN PEMBELAJARAN ( RPP )

Mata Pelajaran : Pemrograman Dasar


Kelas / Semester : X/1
Pertemuan : 5 - 10
Alokasi Waktu : 12 x 45 Menit
Standar Kompetensi : Menerapkan Pemrograman Dasar
Karakter Bangsa yang diharapkan : Disiplin, Kreatif, Mandiri, Tanggung
Jawab, Kerja sama.

A. Kompetensi Inti
1. Menghayati dan mengamalkan ajaran agama yang dianutnya
2. Mengembangkan perilaku (jujur, disiplin, tanggung jawab, peduli, santun, ramah
lingkungan, gotong royong, kerjasama, cinta damai, responsif dan proaktif) dan
menunjukkan sikap sebagai bagian dari solusi atas berbagai permasalahan bangsa
dalam berinteraksi secara efektif dengan lingkungan sosial dan alam serta dalam
menempatkan diri sebagai cerminan bangsa dalam pergaulan dunia
3. Memahami, menerapkan, menganalisis pengetahuan faktual, konseptual, prosedural
berdasarkan rasa ingin tahunya tentang ilmu pengetahuan, teknologi, seni, budaya,
dan humaniora dengan wawasan kemanusiaan, kebangsaan, kenegaraan, dan
peradaban terkait fenomena dan kejadian, serta menerapkan pengetahuan prosedural
pada bidang kajian yang spesifik sesuai dengan bakat dan minatnya untuk
memecahkan masalah.
4. Mengolah, menalar, menyaji, dan mencipta dalam ranah konkret dan ranah abstrak
terkait dengan pengembangan dari yang dipelajarinya di sekolah secara mandiri, dan
mampu menggunakan metoda sesuai kaidah keilmuan.

B. Kompetensi Dasar dan Indikator


1.6 Menerapkan Struktur kontrol percabangan dalam bahasa pemrograman
a. Membuat Struktur kontrol percabangan,
b. Membuat Percabangan 1 kondisi
c. Membuat Percabangan 2 kondisi
d. Membuat Percabangan lebih dari 2 kondisi

4.6 MenggunakanStruktur Kontrol percabangan dengan percabangan 1 kondisi, dan


percabangan 2 kondisi
a. Menggunakan struktur kontrol percabangan
b. Menggunakan percabangan dengan 1 kondisi
c. 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

6
E. Metode Pembelajaran
1. Penyampaian
2. Tanya jawab
3. Tes Program
4. Praktek

F. Media pembelajaran dan Sumber Belajar


1. Media
a. Power Point
b. Internet

2. Alat/Bahan
a. Laptop/Smartphone
b. LCD Projecktor
c. Whiteboard
d. Spidol
e. Software

G. Sumber pembelajaran
1. Buku Algoritma dan Pemrograman Pascal
2. Internet
3. Modul produktif, Buku Algoritma dan pemograman tingkat Dasar.

H. Langkah – langkah Pembelajaran


Pertemuan 5 – 7

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 45 Menit
diri yang dibutuhkan sebagai warga negara yang baik.
3. Guru menyampaikan tujuan pembelajaran
4. Guru memotivasi siswa agar semakin giat belajar
B. Inti Mengamati :

1. Siswa mengamati dan mendengarkan penjelasan tentang


struktur kontrol percabangan.
2. Siswa mengamati dan mendengarkan penjelasan
mengenai percabangan 1 kondisi.
3. Siswa mengamati dan mendengarkan penjelasan
180 Menit
mengenai percabangan 2 kondisi.

Menanya :

1. Siswa berdikusi menganalisa tentang percabangan.


2. Siswa berdikusi menganalisa tentang percabangan 1
kondisi.

7
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:

Siswa membuat sebuah laporan dan mempresentasikan hasil


dari sebuah program sederhana.

C. Penutup 1. Mereview kembali materi yang telah disampaikan


2. Siswa mengerjakan evaluasi 45 Menit
3. Siswa saling memberikan umpan balik hasil evaluasi
pembelajaran yang telah dicapai.

Pertemuan 8 – 10

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
45 Menit
identitas diri yang dibutuhkan sebagai warga negara
yang baik.
3. Guru menyampaikan tujuan pembelajaran
4. Guru memotivasi siswa agar semakin giat belajar
B. Inti Mengamati :

4. Siswa mengamati dan mendengarkan penjelasan tentang


struktur kontrol percabangan.
5. Siswa mengamati dan mendengarkan penjelasan 180 Menit
mengenai percabangan 1 kondisi.
6. Siswa mengamati dan mendengarkan penjelasan
mengenai percabangan 2 kondisi.

8
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
2. Siswa mengerjakan evaluasi 45 Menit
3. Siswa saling memberikan umpan balik hasil evaluasi
pembelajaran yang telah dicapai.

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

Mengetahui ; Sidoarjo, Juli 2018


Kepala SMA Negeri 1 Sidoarjo Guru Mata Pelajaran

Drs. Sulaiman Suwarto,M.Pd. Abinurdian,M.Kom


NIP. 19581005 198603 1 021 NIP. 19771108 200801 1 009

9
Lampiran 1

BAHAN AJAR

Kompetensi : Bahan Ajar

Satuan Pendidikan : SMA Negeri 1 Sidoarjo

Kelas/Semester : X/I

Mata Pelajaran : Pemrograman Dasar

Pertemuan ke : 5 - 10

Alokasi waktu : 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:

10
Mulai

2. Baca data alas dan tinggi.

3. Luas adalah alas kali tinggi kali 0.5

4. Tampilkan Luas

5. 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.

Struktur Algoritma Percabangan

Sebuah program tidak selamanya akan berjalan dengan mengikuti struktur berurutan,
kadang-kadang kita perlu merubah urutan pelaksanaan program dan menghendaki agar
pelaksanaan program meloncat ke baris tertentu. Peristiwa ini kadang disebut sebagai
percabangan/pemilihan atau keputusan. Hal ini seperti halnya ketika mobil berada dalam
persimpangan seperti pada

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

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

11
PERTEMUAN 6

Pencarian Data dalam Array

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

Perhatikan contoh berikut.

Contoh 5.24. Pencarian pada array.

Pada contoh ini kita diminta mencari elemen yang berisi angka 12 dari sekumpulan
elemen dalam array. Ada 6 elemen pada array tersebut. Menurut kalian bagaimanakah
algoritma penyelesaiannya?

Cara yang paling umum dan paling mudah dilakukan adalah dengan cara pencarian
berurutan (linear search). Pada masa lalu cara ini dianggap tidak efisien karena membutuhkan
waktu lama. Namun dengan perkembangan komputer yang sangat cepat, waktu eksekusi
algoritma ini tidak terlalu dipermasalahkan. Cara ini dilakukan dengan cara membandingkan
isi dari 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 ]

12
c. Array 3 dimensi dituliskan :
Variabel [ indeks1, indeks2, indeks3 ]
Syntax :
Variabel [ indeks ]
Variabel [ indeks1, indeks2 ]
Variabel [ indeks1, indeks2, indeks3 ]
Deklarasi
Var
< Nama Array = array [indeks] of tipe data;
< Nama Array = array [indeks1, indeks2] of tipe data;
tipe data;
< Nama Array = array [indeks1, indeks2, indeks3] of tipe data;
of tipe data;

Contoh :

1. Bentuk Pertama sebagai variabel


Deklarasi

Nilai : Array [ 1..15] of integer

Nama : Array [ ‘A’..’Z’] of string

2. Bentuk Kedua sebagai tipe baru


Deklarasi

Type

Nilai : Array [ 1..100 ] of real

Var

X : Nilai

Atau

X : Array [ 1.. 100 ] of real

3. Bentuk Ketiga dengan ukuran maksimum elemen larik sebagai sebuah konstanta
Deklarasi

Const max : 100

Type

Nilai : Array [ 1..max ] of real

13
Var

X : Nilai

Atau

X : Array [1..100 ] of real

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.

14
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;

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

Begin

For i := 1 to n do

Begin

Write (’Masukkan suku ke-’,i, ’= ’);

Readln(x [ i ]);

End;

End;

Procedure Keluaran (cetak : latih; n : integer);

Begin

For i := 1 to n do

15
Write (’x [‘,I,’ ] = x [ i ] :6:1);

End;

Begin

Clrscr;

Write (‘Masukkan N (mak 100) : ‘);

Readln(n);

Inputan(x,n);

Writeln; Writeln;

Keluaran(x,n)

Readln;

End.

Jika Dijalankan maka hasilnya :

Masukkan N (mak 100) : ketikkan 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] =10
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 b c d m n o p
   
A  e f g h  dan B   q r s t
i k l  u v w x 
 j 

16
a  m b  n c  o d  p
 
C   eq f r g s ht 
 iu j v k w l  x 
 

Maka algoritma dari permasalahan tersebut dapat dituliskan :

Deklarasi
Type larik : Array [1..Indeks, 1..indeks2] of integer

X : Larik

N : Integer

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

Deklarasi

I,j : 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 : integer

Deskripsi

For I := 1 to m do

For J := 1 to n do

Read ( B[I,j])

End for

17
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

18
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

19
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 elemen-elemen 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 lain-lain. 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.

20
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.

21
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);

22
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;

23
}

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; }

24
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 25omp 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 25ompu”;

return 0;

25
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 26omputer2626e dari dua kemungkinan.

Bentuk umum:

if (kondisi)

statement_jika_kondisi_terpenuhi;

else

statement_jika_kondisi_tidak_terpenuhi;

Contoh:

#include <iostream.h>

int main()

int nilai;

//memasukkan bilangan bulat

cout<<”Masukkan sebuah bilangan bulat: “;

cin>>nilai;

//pengecek bilangan apakah habis dibagi dua atau tidak

26
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 27omputer“;

27
}

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;

28
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);

29
InputA(a,m,n);

InputB(a,m,n);

Writeln; Writeln;

Keluaran(c,m,n);

Readln;

End.

30