Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 1 Oleh Wedia Hidayana
M O D U L
PENERAPAN
ALGORITMA PEMROGRAMAN DASAR
PADA BAHASA C++
( UNTUK KELAS X SMK )
Oleh :
WEDIA HIDAYANA, S.Kom., M.Pd.T
NIP. 19750818 200501 2 010
SMK NEGERI 2 PADANG PANJANG
Jalan Syekh Ibrahim Musa No. 26 Kel. Ganting ( 0752 ) 84072 KOTA PADANG PANJANG
SUMATERA BARAT
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 2 Oleh Wedia Hidayana
Kegiatan Belajar 1 :
Algoritma Pemrograman
A. Tujuan Kegiatan Pembelajaran 1
Setelah pembelajaran diharapkan peserta didik dapat: 1. Menjelaskan konsep algoritma dengan tepat 2. Menjelaskan notasi algoritma dengan tepat
3. Menjelaskan struktur algoritma dengan penuh rasa ingin tahu
4. Memahami dan menjelaskan pengenalan variabel dan konstanta dengan jelas 5. Memahami dan menjelaskan pengenalan tipe data dengan rasa ingin tahu 6. Memahami dan menjelaskan pengenalan operator dengan rasa ingin tahu
B. Uraian Materi 1 1. Konsep Algoritma
Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis. Kata kunci dalam algoritma adalah logis dan sistematis. Logis artinya harus dapat ditentukan dan diterima secara jelas benar atau salahnya. Sistematis maksudnya langkah-demi langkah pengerjaan tersususn menurut urutannya. Sebaiknya disusun sebelum membuat program
Ciri-Ciri Algoritma:
1) Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas. 2) Setiap langkah harus didefinisikan secara tepat dan tidak berarti dua. 3) Algoritma memiliki nol atau lebih masukan (input).
4) Algoritma mempunyai nol atau lebih keluaran (output). 5) Algoritma harus sangkil (efektif)
Kriteria suatu algoritma:
1) Ada input dan output 2) Efektivitas dan efisien 3) Terstruktur
Syarat-Syarat Algoritma menurtu Donald E. Knuth, yaitu:
1) Finiteness (Keterbatasan) Algoritma harus berakhir setelah melakukan sejumlah langkah proses
2) Definiteness (Kepastian) Setiap langkah algoritma harus didefinisikan dengan tepat dan tidak menimbulkan makna ganda
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 3 Oleh Wedia Hidayana
3) Input (Masukan) Sebuah algoritma memiliki nol atau lebih masukan (input) yang diberikan kepada algoritma sebelum dijalankan
4) Output (Keluaran) Setiap algoritma memberikan satu atau beberapa hasil keluaran
5) Effectiveness (Efektivitas)
2. Cara Penulisan Algoritma
a. Notasi yang dinyatakan dalam kalimat deskriptif
Dengan notasi ini, deskripsi setiap langkah dijelaskan dengan bahasa yang jelas. Notasi ini cocok untuk algoritma yang pendek.
Contoh:
Mengirim surat ke teman; algoritmanya adalah: 1. Tulis surat pada secarik kertas surat.
2. Ambil sampul surat.
3. Masukkan surat ke dalam sampul.
4. Tutup sampul surat menggunakan perekat. 5. Jika kita ingat alamat teman tersebut, maka 6. tulis alamat pada sampul surat.
7. Jika tidak ingat, lihat buku alamat, kemudian 8. tulis alamat pada sampul surat.
9. Tempel perangko pada surat.
10. Bawa surat ke kantor pos untuk diposkan.
b. Notasi yang dinyatakan dengan pseudo code
Pseudocode adalah notasi yang enyerupai bahasa pemrograman tingkattinggi.
Contoh:
Mencari bilangan terbesar dari dua bilangan yang diinputkan Dalam algoritma:
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
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 4 Oleh Wedia Hidayana
Dalam Pseudo-code: 1. Input a
2. Input b
3. If a > b then kerjakan langkah 4 4. print a
5. print b
c. Notasi yang dinyatakan dalam flow chart
Adalah bagan-bagan yang mempunyai arus yang menggambarkan langkah-langkah penyelesaian suatu masalah.
Tujuan Membuat Flowchat :
a. Menggambarkan suatu tahapan penyelesaian masalah b. Secara sederhana, terurai, rapi dan jelas
c. Menggunakan simbol-simbol standar
Sama halnya dengan notasi deskriptif, notasi ini cocok untuk algoritma yang pendek,
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 5 Oleh Wedia Hidayana
3. Struktur Algoritma
a. Runtunan (sequence)
Sebuah runtunan terdiri dari satu atau lebih instruksi. Tiap instruksi dikerjakan secara berurutan sesuai dengan urutan penulisannya, yakni sebuah instruksi dilaksanakan setelah instruksi sebelumnya selesai dikerjakan. Notasi ini cocok untuk algoritma yang pendek.
Contoh: Algoritma membuat secangkir kopi panas 1. Mulai
2. Masukkan alas 3. Masukkan tinggi
4. Hitung Luas = 0.5 * alas * tinggi 5. Tampilkan Luas
6. Selesai
b. Pemilihan (selection)
Tiap–tiap instruksi akan diseleksi oleh kondisi, apabila instruksi memenuhi kondisi yang diminta, maka instruksi akan dijalankan.
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 6 Oleh Wedia Hidayana
Contoh: Menentukan bilagan genap dan ganjil 1. Mulai
2. Masukkan bilangan
3. Membagi bilangan dengan angka 2 4. Jika sisa bagi tidak sama dengan 0, maka print “ ini bilangan ganjil “ Jika sisa bagi sama dengan 0 maka print “ ini bilangan genap “
5. Selesai
c. Pengulangan (repetition)
Kita tidak perlu menulis instruksi yang sama berulang kali, tetapi cukup melakukan pengulangan dengan instruksi yang tersedia. Melakukan instruksi yang sama berulang kali, sampai kondisi berhenti pengulangan tercapai.
Contoh: Menampilkan bilangan ganjil di bawah 20
4. Pengenalan Variabel dan Konstanta a. Variabel
Variabel adalah sebuah nama yang menyimpan suatu nilai yang dapat
diubah-ubah saat eksekusi berlangsung. Variabel dalam program C++, harus dideklarasikan dengan tipe data tertentu sebelum digunakan. Berbeda dengan pendeklarasian variabel di bahasa pemrograman lain, dalam C++ sebelum mendeklarasikan variabel, hal pertama yang harus dideklarasikan adalah tipe data yang akan digunakan untuk menampung data. Variabel merupakan pengenal atau identifier.
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 7 Oleh Wedia Hidayana
Deklarasi : Memesan tempat pada memori komputer, dan menentukan jenis data yang dapat disimpan dalam variabel.
Bentuk Umum Deklarasi :
TipeData NamaVariabel1[, variabel2, variabel-n] ;
Contoh :
Int jumlah; : Deklarasi variabel jumlah dinyatakan bertipe int
Float harga, total; : Delarasi variabel harga, total bertipe float
Pemberian Nilai : Memasukkan sebuah nilai ke dalam variabel
Bentuk Umum Pemberian Nilai :
namaVariabel = nilai ;
Contoh :
jumlah =10; : Konstanta jumlah disi oleh nilai 10
cin>>huruf; : Variabel huruf menyimpan nilai yang diketik user const pi =3.1428 ; : Konstanta pi disi oleh nilai 3.1428
Nama dari suatu variable dapat ditentukan sendiri oleh pemrogram dengan aturan sebagai berikut :
1. Terdiri dari gabungan huruf dan angka dengan karakter pertama harus berupa huruf. Bahasa C ++ bersifat case-sensitive artinya huruf besar dan kecil dianggap berbeda. Jadi antara nim, NIM dan Nim dianggap berbeda.
2. Tidak boleh mengandung spasi.
3. Tidak boleh mengandung symbol-simbol khusus, kecuali garis bawah (underscore). Yang termasuk symbol khusus yang tidak diperbolehkan antara lain : $, ?, %, #, !, &, *, (, ), -, +, =dsb.
4. Panjangnya bebas, tetapi hanya 32 karakter pertama yang terpakai.
Contoh penamaan variabel yang benar :
NIM, a, x, nama_mhs, f3098, f4, nilai, budi, dsb. Contoh penamaan variable yang salah :
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 8 Oleh Wedia Hidayana
Contoh 1:
// bekerja dengan variabel
#include <iostream.h> int main () { // inisialisasi variabel : int a, b; int hasil; // proses : a = 5; b = 2; a = a + 1; hasil = a - b; // cetak hasilnya : cout << hasil; // menghentikan program : return 0; } Contoh 2: #include <iostream.h> main() { int n=66; cout<<n<<endl; cout<<’n’; }
Format penulisan variabel adalah :
Tipe_data pengenal = nilai ; Sebagai contoh :
int a;
float nomor;
atau dapat juga pemberian nilai awal untuk variable dilakukan pada saat deklarasi, contoh :
int a=10; char s=’a’;
Jika hendak mendeklarasikan beberapa variabel sekaligus dengan tipe data yang sama, dapat dilakukan dengan 2 cara, yaitu :
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 9 Oleh Wedia Hidayana
int c;
atau dapat disederhanakan dengan deklarasi : int a,b,c;
b. Konstanta
Konstanta juga merupakan variabel, namun data nilai yang disimpan
bersifat tetap tidak dapat diubah pada saat eksekusi program berlangsung.
Menggunakan keyword const
Contoh : const float PhI = 3.14152965;
Berbeda dengan variable, konstanta bernama tidak dapat diubah jika telah diinisialisasi
Menggunakan #define
Contoh : #define Phi 3.14152965
Keuntungan menggunakan #define apabila dibandingkan dengan const adalah kecepatan kompilasi, karena sebelum kompilasi dilaksanakan, kompiler pertama kali mencari symbol #define (oleh sebab itu mengapa # dikatakan prepocessor directive) dan mengganti semua Phi dengan nilai 3.14152965.
5. Tipe Data
Beberapa Tipe Data Dasar :
a. Integer
Tipe data integer atau bilangan bulat dideklarasikan menggunakan kata kunci (keyword) sebagai berikut:
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 10 Oleh Wedia Hidayana
Keyword Memory Kisaran Nilai
int unsigned int short int atau short unsig ned short lon g int ata u lon g unsi gne d lon g 16 bit 16 bit 16 bit 16 bit 32 bit 16 bit -32768 s/d 32768 0 s/d 65535 -32.768 s/d 32768 0 s/d 65535 -2147483648 s/d 2147483648 0 s/d 4294967295 b. Pecahan
Tipe data pecahan atau bilangan pecahan dideklarasikan menggunakan kata kunci (keyword) sebagai berikut :
Contoh : Tipe data integer dan pecahan : Keterangan :
Variabel harga_sat, total, dan rata dideklarasikan dengan tipe data pecahan (double/float) karena dapat berisi nilai pecahan. Sedangkan variabel jumlah dideklarasikan dengan tipe data integer (int) karena berisi bilangan bulat yang diperkirakan nilai maksimalnya 32768, jika nilai maksimal variabel jumlah lebih besar dari 32768 dapat memilih keyword yang lain dari tipe data integer seperti unsigned int dll.
c. Teks
Tipe teks berupa karakter atau string, dideklarasikan menggunakan keyword Char Contoh 1 :
d. Operator
d. Operator
Operator adalah simbol-simbol yang digunakan untuk melakukan suatu manipulasi atau operasi seperti menjumlahkan, membandingkan atau menggabungkan.
Keyword Memory Kisaran Nilai
float double long double 32 bit 64 bit 64 bit 3.4E-038 s/d 3.4E+038 1.7E-038 s/d 1.7E+038 1.7E-038 s/d 1.7E+038
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 11 Oleh Wedia Hidayana
Operator Assign (=)
Disebut juga dengan Operator Pengerjaan
Simbol = digunakan untuk mengisikan suatu nilai ke dalam variabel Contoh :
jumlah =10; Nilai 10 yang berada pada sisi kanan simbol =, diisikan atau disimpan dalam variabel/konstanta jumlah yang berada pada sisi kiri simbol =
a=b=jumlah; Nilai variabel jumlah disimpan pada variabel b, dan Nilai variabel b disimpan pada variabel a
Operator Aritmatika ( +, -, *, /, %) Operator Keterangan + Penjumlahan - Pengurangan * Perkalian / Pembagian % Modulus
Untuk operator %, sama dengan modulus, yaitu untuk mengetahui sisa hasil bagi. Misalnya a = 11 % 3, maka variable a akan terisi nilai 2 karena sisa hasil bagi 11 dan 3 adalah 2.
Operator Majemuk ( +=, -=, *=, /=, %=, <<=, >>=, &=, |= )
Dalam C++, operasi aritmatika dapat disederhanakan penulisannya dengan format penulisan operator majemuk.
Misalnya :
a += 5 sama artinya dengan menuliskan a = a+5 a *= 5 sama artinya dengan menuliskan a = a*5
a /= 5 sama artinya dengan menuliskan a = a/5 a %= 5 sama artinya dengan menuliskan a = a % 5
Operator Penaikan dan Penurunan (++ dan --)
Operator penaikan (++) akan menaikkan atau menambahkan 1 nilai variable. Sedangkan operator (--) akan menurunkan atau mengurangi 1 nilai variable.
Misalnya : a++; a+=1; a=a+1;
untuk ketiga pernyataan tersebut, memiliki arti yang sama yaitu menaikkan 1nilai variable 1.
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 12 Oleh Wedia Hidayana
Karakteristik dari operator ini adalah dapat dipakai di awal (++a) atau di akhir (--a) variable. Untuk penggunaan biasa, mungkin tidak akan ditemui perbedaan hasil dari cara penulisannya. Namun untuk beberapa operasi nantinya harus diperhatikan cara peletakan operator ini, karena akan berpengaruh terhadap hasil.
Contoh 1 : Contoh 2: B=3; B=3; A=++B; A=B++; // A= 4, B=4 //hasil A=3, B=4
Dari contoh1, nilai B dinaikkan sebelum dikopi ke variable A. Sedangkan pada contoh2, nilai B dikopi terlebih dahulu ke variable A baru kemudian dinaikkan.
Operator Relasional (==, !=, >, <, >=, <=)
Yang dihasilkan dari operator ini bukan berupa sebuah nilai, namun berupa bilangan bool yaitu benar atau salah.
Operator Keterangan > >= < <= == !=
Lebih besar dari
Lebih besar sama dengan Lebih kecil dari
Lebih kecil sama dengan Sama dengan
Tidak sama dengan Contoh :
A == B : Salah, Nilainya 0 B > A : Benar, Nilainya 1 20 > 10 : Benar, Nilainya 1
(7==5) hasilnya adalah false (5>4) hasilnya adalah true (5<5) hasilnya adalah false.
Operator Logika ( !, &&, || )
Operator logika juga digunakan untuk memberikan nilai atau kondisi true dan false. Biasanya operator logika dipakai untuk membandingkan dua kondisi. Misalnya: ((5==5) && (3>6)) mengembalikan nilai false, karena (true && false) untuk logika NOT (!), contohnya !(5==5) akan mengembalikan nilai false, karena !(true).
Ekspresi : Satu Kondisi pengujian yang terdiri dari :
Operand yang diuji, operator hubungan, dan operand pembanding
Contoh Ekspresi : IF (ekspresi) IF (JUMLAH >= 10)
Operator logika : Digunakan untuk membandingkan dua ekspresi atau lebih, dan menghasilkan nilai perbandingan benar (1) dan salah (0). IF (ekspresi1 Operator_Logika ekspresi2)
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 13 Oleh Wedia Hidayana
IF (JUMLAH >= 10 && HARGA>= 50000) IF (JUMLAH >= 10 && JUMLAH<= 50)
Biasanya, operator logika berpasangan dengan operator hubungan untuk menguji suatu pernyataan secara lengkap.
Operator Keterangan
&& | | !
Operator logika AND Operator logika OR Operator logika NOT
Operator Kondisional ( ? )
Format penulisan operator kondisional adalah : kondisi ? hasil1 : hasil2
Jika kondisi benar maka yang dijalankan adalah hasil1 dan jika kondisi salah, maka akan dijalankan hasil2.
Contoh :
7==5 ? 4 : 3 hasilnya adalah 3, karena 7 tidak sama dengan 5 5>3 ? a : b hasilnya adalah a, karena 5 lebih besar dari 3 Tabel : Perbandingan Logika
X Y X && Y X | | Y ! X ! (X && Y)
0 0 0 0 1 1
0 1 0 1 1 1
1 0 0 1 0 1
1 1 1 1 0 0
Langkah – langkah membuat program :
1. Analisa terlebih dahulu masalah dengan menentukan input, proses dan output 2. Deklarasikan variabel input , output dan menentukan tipe datanya
3. Buat program 4. Kompilasi program 5. Jalankan program
6. Analisa program, apakah sudah sesuai dengan logikanya
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 14 Oleh Wedia Hidayana
C. Rangkuman
Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis. Kata kunci dalam algoritma adalah logis dan sistematis.
Variabel adalah sebuah nama yang menyimpan suatu nilai yang dapat diubah-ubah saat eksekusi berlangsung. Variabel dalam program C++, harus dideklarasikan dengan tipe data tertentu sebelum digunakan. Konstanta juga merupakan variabel, namun data nilai yang disimpan bersifat tetap tidak dapat diubah pada saat eksekusi program berlangsung. Operator adalah simbol-simbol yang digunakan untuk melakukan suatu manipulasi atau operasi seperti menjumlahkan, membandingkan atau menggabungkan.
D. Tugas 1
Pahamilah mengenai materi algoritma pemrograman yang diberikan.
E. Tes Formatif 1
1. Apa yang dimaksud dengan algoritma?
2. Jelaskan dua kata kunci sebuah algoritma yang benar
3. Dude sering terlambat datang ke sekolah. Pak guru menghukum Dude dengan menulis kalimat “Saya tidak akan mengulangi perbuatan ini lagi” sebanyak 100 kali. Buatlah flowchart dari instruksi tersebut!
4. Apa yang dimaksud dengan variabel dan apa saja aturan dalam pembuatan variabel dalam bahas C++?
5. Apakah fungsi operator pada bahasa C++?
F. Lembar Kerja 1 Alat da Bahan:
1. Kertas folio dan alat tulis
2. PC/laptop yang telah terinstal bahasa C++
Kesehatan dan Keselamatan Kerja:
1. Berdo’alah sebelum memulai kegiatan belajar 2. Baca dan pahami materi serta petunjuk kerja. 3. Kerjakan tugas praktek dengan baik
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 15 Oleh Wedia Hidayana
Langkah Kerja
Perhatikan masing-masing soal di bawah ini! Buatlah algoritmanya dan kerjakan pada kertas double folio! Lanjutkan pembuatan program dalam bahasa C++! 1. Buatlah program untuk menampilkan tulisan sebagai berikut :
Hallo, siapa namamu?
Nama saya :...(diinputkan melalui keryboard) Senang berteman dengan <nama yang diinputkan tadi>. 2. Buatlah program untuk menampilkan data berikut ini :
Nama : <diinputkan melalui keyboard> Kelas : <diinputkan melalui keyboard> Alamat : <diinputkan melalui keyboard>
3. Tuliskan program algoritma untuk menghitung luas bangun geometri (lingkaran, bujur sangkar, segitiga, trapesium, persegi panjang. Data dimasukkan melalui keyboard.
4. Buatlah program dengan menggunakan define untuk menghitung volume Tabung (Rumus Volume Tabung : phi x jari-jari x jari-jari x tinggi) dan Luas Tabung (Rumus Luas tabung : 2 x phi x jari-jari x tinggi ) dimana jari-jari 7 dan tinggi 24.
5. Buatlah program untuk mencatat data siswa yang terdiri dari field Nama, NIS dan Nilai
6. Buatlah program untuk menghitung luas bangunan geometri (bujursangkar, lingkaran, segitiga, empat persegi panjang dan trapesium). Data masukkan dibaca dari piranti masukkan dan luas bangun ditampilkan sebagai keluaran. 7. Buatlah program untuk menghitung harga total suatu barang, dimana
jumlah barangnya 5, harga per unit 5203.02.
8. Buatlah program untuk penggunaan operasi aritmatika yaitu penjumlahan, pembagian, perkalian, dan pengurangan dengan variabel yang diinputkan. 9. Gaji yang diterima pegawai terdiri dari gaji pokok, tunjangan dan upah
lembur,besar tunjangan 15% dari gaji pokok, besar upah lembur perjam 3% dari gaji pokok. Buatlah program untuk menghitung gaji yang diterima pegawai. Masukan (Input). nomor pegawai, nama,gaji pegawai,jumlah jam lembur. Keluaran (Output): Gaji pokok, tunjangan, uang lembur, total gaji)
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 16 Oleh Wedia Hidayana
10. Tulislah algoritma untuk menghitung komisi yang diterima salesman berdasarkan nilai penjualan yang dicapainya. Salesman itu mendapat komisi 5% dari hasil penjualannya. Algoritma menerima data nama salesman dan nilai penjualan yang dicapainya, menghitung komisi, lalu menampilkan nama salesman dan besar komisi yang diperolehnya.
11. Tulislah algoritma yang membaca nama karyawan dan gaji pokok bulanannya dan menghitung gaji bersih karyawan tersebut. Gaji bersih yang diterima pegawai adalah :
Gaji bersih = gaji pokok + tunjangan – pajak
Tujangan karyawan dihitung 20% dari gaji pokok sedangkan pajak adalah 15% dari gaji pokok ditambah tunjangan. Nama karyawan dan gaji bersih di tampilkan di layar monitor.
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 17 Oleh Wedia Hidayana
Kegiatan Belajar 2 :
Algoritma Pencabangan
A. Tujuan Kegiatan Pembelajaran 2
Setelah pembelajaran diharapkan peserta didik dapat:
1. Menjelaskan percabangan 1 kondisi dengan penuh rasa ingin tahu
2. Memahami dan menjelaskan percabangan 2 kondisi dengan rasa ingin tahu 3. Menjelaskan percabangan lebih dari 2 kondisi dengan rasa ingin tahu 4. Memahami dan menjelaskan percabangan bersarang dengan jelas.
B. Uraian Materi 2
Pencabangan adalah suatu Struktur dasar algoritma yang memiliki satu atau lebih kondisi tertentu dimana sebuah instruksi dilaksanakan jika sebuah kondisi/persyaratan terpenuhi.
Ada beberapa bentuk struktur dasar pemilihan ini :
a) PERNYATAAN if
Sebuah pernyataan yang dapat dipakai muntuk mengambil keputusan berdasarkan suatu kondisi. Bentuk pernyataan ini ada dua macam :
- if saja dan - else
Bentuk Umumnya Satu Kasus: if (kondisi)
pernyataan ;
Pernyataan dilaksanakan jika dan hanya jika kondisi yang diinginkan terpenuhi, jika tidak program tidak memberikan hasil apa-apa. Contoh :
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 18 Oleh Wedia Hidayana
Outputnya :
Penjelesan :
Tampak bahwa kalau usia yang dimasukkan lebih dari atau sama dengan 17, program tidak menghasilkan apa-apa.
Bentuk Umumnya Dua Kasus : If(kondisi)
pernyataan1 ; else
pertanyaan2;
Pernyataan1 dilaksanakan jika dan hanya jika kondisi yang diinginkan terpenuhi, jika tidak, lakukan pernyataan2. Jika Anda tidak mempergunakan pernyataan else program tidak akan error, namun jika anda mempergunakan pernyataan else tanpa didahului pernyataan if, maka program akan error. Jika pernyataan1 atau pernyataan2 hanya terdiri dari satu baris, maka tanda { } tidak diperlukan, namun jika lebih maka diperlukan.
Bentuk Umumnya Banyak Kasus : if (kondisi) { pernyataan1; pernyataan1a; pernyataan1b; } else {
pernyataan2; pernyataan2a; pernyataan2b; }
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 19 Oleh Wedia Hidayana
Contoh:
Contoh 2:
Outputnya :
Penjelesan :
Terlihat bahwa kalau usia yang dimasukkan lebih dari 17, program akan memberi pesan Selamat Menonton.
Selain dari if … else, juga dikenal bentuk if … else if. Adapun perbedaannya diilustrasikan oleh dua contoh dibawah ini.
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 20 Oleh Wedia Hidayana
Outputnya:
Mengapa ? Karena contoh 2 sama saja jika ditulis seperti dibawah ini Contoh 4 :
Contoh diatas disebut juga nested conditional
b) PERNYATAAN Switch
Pernyataan swich adalah pernyataan yang digunakan untuk menjalankan salah satu pernyataan dari beberapa kemungkinan pernyataan, berdasarkan nilai dari sebuah ungkapan dan nilai penyeleksian.
Pernyataan if…else if jamak dapat dibangun dengan pernyataan switch.
Bentuk Umumnya : switch (ekspresi) { case konstanta1 : pernyataan1 ; break ; case konstanta2 :
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 21 Oleh Wedia Hidayana
pernyataan2 ; break ; case konstanta3 : pernyataan3 ; break ; : : case konstantaN : pernyataanN ; break ; default : pernyataanlain; }
Hal – hal yang perlu diperhatikan adalah :
1) Dibelakang keyword case harus diikuti oleh sebuah konstanta, tidak boleh diikuti oleh ekspresi ataupun variable.
2) Konstanta yang digunakan bertipe int atau char
3) Jika bentuknya seperti diatas maka apabila ekspresi sesuai dengan konstanta2 maka pernyataan2, pernyataan3 sampai dengan pernyataanlain dieksekusi. Untuk mencegah hal tersebut, gunakan keyword break;. Jika keyword break digunakan maka setelah pernyataan2 dieksekusi program langsung keluar dari pernyataan switch. Selain digunakan dalam switch, keyword break banyak digunakan untuk keluar dari pernyataan yang berulang ( looping ). 4) pernyataan lain dieksekusi jika konstanta1 sampai konstantaN
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 22 Oleh Wedia Hidayana
Output :
Ket : 45, dan 450 adalah input dari user
C. Rangkuman 2
Pencabangan adalah suatu Struktur dasar algoritma yang memiliki satu atau lebih kondisi tertentu dimana sebuah instruksi dilaksanakan jika sebuah kondisi/persyaratan terpenuhi.
D. Tugas 2
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 23 Oleh Wedia Hidayana
E. Tes Formatif 2
1. Apa yang dimaksud dengan algoritma pencanbangan? 2. Buatlah bentuk umum penulisan If dengan satu Kondisi! 3. Buatlah bentuk umum penulisan If lebih dari dua kondisi! 4. Kapankah digunakan pernyataan Switch?
5. Buatlah bentuk umum penulisan pernyataan Switch!
F. Lembar Kerja2 Alat da Bahan:
PC/laptop yang telah terinstal bahasa C++
Kesehatan dan Keselamatan Kerja:
1. Berdo’alah sebelum memulai kegiatan belajar 2. Baca dan pahami materi serta petunjuk kerja. 3. Kerjakan tugas praktek dengan baik
Langkah Kerja
Perhatikan masing-masing soal di bawah ini! Buatlah program dalam bahasa C++! 1. Buatlah program untuk mencari apakah bilangan tersebut ganjil atau genap,
dimana bilangan merupakan piranti masukkan
2. Buatlah program untuk menseleksi suatu bilangan dengan ketentuan sebagai berikut : 0<=nilai <30 : Nilai rendah
30<=nilai < 60 : Nilai sedang 60<=nilai<=100 : Nilai tinggi
3. Buatlah program dalam bentuk menu yang mampu menghitung : a. Luas dan Keliling Bujur sangkar
b. Luas dan Keliling persegi panjang c. Luas dan keliling lingkaran
4. Buatlah algoritma yang membaca sebuah bilangan positif, lalu menentukan apakah bilangan tersebut merupakan kelipatan 4
5. Pasar swalayan X memberikan diskon harga bagi pembeli yang nilai total belanjanya lebih dari Rp 100.000. Tulislah algoritma untuk menentukan harga belanja setelah dikurangi diskon. Data masukan adalah nilai total belanja pembeli, sedangkan nilai keluarannya adalah diskon harga dan nilai belanja setelah dikurangi diskon
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 24 Oleh Wedia Hidayana
pesan genap atau ganjil.
7. Buatlah algoritma dan program untuk membaca sebuah karakter, lalu menuliskan pesan “huruf hidup” jika karakter tersebut merupakan salah satu huruf vokal
8. Karyawan honorer di PT “ABC” digaji berdasarkan jumlah jam kerjanya selama satu minggu. Upah per jam misalkan Rp 2000. Bila jumlah jam kerja lebih besar dari 48 jam, maka sisanya dianggap sebagai jam lembur.Upah lembur misalkan Rp 3000/jam. Tuliskan algoritma yang membaca jumlah jam kerja seorang karyawan selama satu minggu, lalu menentukan upah mingguannya.
9. Buatlah algoritma yang membaca angka tahun masehi dari keyboard, lalu menentukan apakah tahun tersebut merupakan tahun kabisat. Secara sederhana, tahun kabisat adalah tahun yang habis dibagi dengan 4. Pada tahun kabisat, bulan februari berjumlah 29 hari. Tapi syarat lain dari tahun kabisat adalah tidak habis dibagi 100 dan habis dibagi 400.
10. Tuliskan algoritma yang membaca sebuah bilangan bulat, lalu menentukan apakah bilangan tersebut positif, negatif atau nol
11. Tulislah algoritma yang membaca temperatur air (T dalam satuan derajat celcius) pada tekanan normal, lalu menentukan apakah wujud air tersebut dalam keadaan pada (T≤0 oC), cair pada (0<T<100 0C) atau gas (T > 100)
12. Indeks nilai mahasiswa ditentukan berdasarkan nilai ujian yang diraihnya. Ketentuan pemberian nilai indeks sebagai berikut :
Jika nilai ujian ≥ 80 , indeks nilai = A; Jika 70 ≤ nilai ujian < 80 . indeks nilai = B; Jika 55 ≤ nilai ujian < 70 ; indeks nilai = C; Jika 40 ≤ nilai ujian <55 ; indeks nilai = D; Jika nilai ujian < 40 ; indeks nilai = E;
Buatlah algoritma yang membaca nilai ujian seorang mahasiswa, lalu menentukan indeks nilainya, kemudian mencatak nilai dan indeksnya ke piranti keluaran.
13. Buatlah algoritma yang membaca no bulan (integer), lalu menuliskan nama bulan sesuai angka bulannya. Misalnya dibaca bulan 8, maka tercetak agustus.
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 25 Oleh Wedia Hidayana
Kegiatan Belajar 3 :
Algoritma Perulangan
A. Tujuan Kegiatan Pembelajaran 3
Setelah pembelajaran diharapkan peserta didik dapat:
1. Menjelaskan dan memahami perulangan dengan kondisi diawal dengan teliti 2. Memahami dan menjelaskan perulangan dengan kondisi diakhir dengan teliti 3. Memahami dan menjelaskan Perulangan dengan kondisi akhir diinputkan user
dengan rasa ingin tahu
4. Memahami dan menjelaskan Perulangan sebagai pencacah naik dengan jelas 5. Memahami dan menjelaskan Perulangan sebagai pencacah turun dengan jelas
B. Uraian Materi 3
Sebuah / kelompok instruksi diulang untuk jumlah pengulangan tertentu. Baik yang terdifinisikan sebelumnya ataupun tidak.
Struktur pengulangan terdiri atas dua bagian : 1. Kondisi
2. Pengulangan yaitu ekspresi boolean yang harus dipenuhi untuk melaksanakan pengulangan
3. Isi atau badan pengulangan yaitu satu atau lebih pernyataan (aksi) yang akan diulang.
Perintah atau notasi dalam struktur pengulangan adalah : 1. Pernyataan while
2. Pernyataan do..while 3. Pernyataan for
4. Pernyataan continue dan break 5. Pernyataan go to
1. PERNYATAAN while
Pernyataan while merupakan salah satu pernyataan yang berguna untuk memproses suatu pernyataan atau beberapa pernyataan beberapa kali. Pernyataan while memungkinkan statemen-statemen yang ada didalamnya tidak diakukan sama sekali.
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 26 Oleh Wedia Hidayana
Bentuk Umumnya : while (kondisi) { Pernyataan; } Contoh: Output : Penjelasan :
Program diatas digunakan untuk mengulangan tulisan sebanyak 10 kali
2. PERNYATAAN do…while
Pernyataan do…while mirip seperti pernyataan while, hanya saja pada do…while pernyataan yang terdapat didalamnya minimal akan sekali dieksekusi. Bentuk Umumnya : do { pernyatan ; } while(kondisi); Contoh :
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 27 Oleh Wedia Hidayana
3. PERNYATAAN for
Pernyataan for digunakan untuk menghasilkan pengulangan(looping) beberapa kali tanpa penggunaan kondisi apapun. Pada umumnya looping yang dilakukan oleh for telah diketahui batas awal, syarat looping dan perubahannya.
Pernyataan for digunakan untuk melakukan looping. Pada umumnya looping yang dilakukan oleh for telah diketahui batas awal, syarat looping dan perubahannya. Selama kondisi terpenuhi, maka pernyataan akan terus dieksekusi.
Bagaimana jika program diatas diubah menjadi
Program diatas akan menampilkan bilangan yang banyaknya tak terhingga sehingga dapat membuat komputer anda berhenti bekerja. Contoh diatas juga merupakan prinsip membuat bom program ( contohnya : bom mail )
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 28 Oleh Wedia Hidayana
Pernyataan for dapat berada di dalam pernyataan for lainnya yang biasa disebut nested for.
Contoh :
4. PERNYATAAN continue dan break
Pernyataan break akan selalu terlihat digunakan bila menggunakan pernyataan switch. Pernyataan ini juga digunakan dalam loop. Bila pernyataan ini dieksekusi, maka akan mengakhiri loop dan akan menghentikan itrasi pada saat tersebut.
Pernyataan continue digunakan untuk pergi ke bagian awal dari blok loop untuk memulai iterasi berikutnya.
Contoh :
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 29 Oleh Wedia Hidayana
Penjelasan :
Dari program diatas, dapat dilihat perulangan dari suatu bilangan sebanyak 10 kali. Tetapi, pada perulangan i=4, ada perintah continue. Dengan perintah ini, maka program langsung meloncat ke loop berikutnya dan ketika sampai perulangan i = 6, ada perintah break. Otomatis program akan berhenti dan tidak sampai ke i=10. Dan program akan mencetak bilangan 0, bilangan 1, bilangan 2, bilangan 3, bilangan 5, bilangan 6.
5. PERNYATAAN go to
Pernyataan goto, diperlukan untuk melakukan suatu lompatan ke suatu pernyataan berlabel yang ditandai dengan tanda “ : “.
Bentuk Umumnya :
goto bawah; pernyataan1; pernyataan2;
bawah : pernyataan 3;
Pada contoh diatas, pada saat goto ditemukan maka program akan melompat pernyataan berlabel bawah dan melakukan pernyataan 3.
Contoh :
Outputnya :
C. Rangkuman 3
Pahamilah materi algoritma perulangan yang diberikan.
D. Tugas 3
Modul “Penerapan Algoritma Pemrograman Dasar pada Bahasa C++” 30 Oleh Wedia Hidayana
E. Tes Formatif 3
1. Apa yang dimaksud dengan algoritma perulangan? 2. Jelaskan bagian-bagian algoritma perulangan!!
3. Apa perbedaan penggunaan struktur perulangan while dengan do while? 4. Apa maksud perintah continue dan break pada perulangan?
5. Struktur perulangan yang manakah yang digunakan untuk melakukan suatu lompatan ke suatu pernyataan berlabel yang ditandai dengan tanda “ : “?
F. Lembar Kerja 3 Alat da Bahan:
PC/laptop yang telah terinstal bahasa C++
Kesehatan dan Keselamatan Kerja:
1. Berdo’alah sebelum memulai kegiatan belajar 2. Baca dan pahami materi serta petunjuk kerja. 3. Kerjakan tugas praktek dengan baik
Langkah Kerja
Perhatikan masing-masing soal di bawah ini! Buatlah program dalam bahasa C++! 1. Buatlah program untuk mencetak deret 10 9 8 7 6 5 4 3 2 1
2. Buatlah program untuk mencetak (gunakan perulangan while atau for) * * * *
* * * * * *
3. Buatlah program yang menampilkan 5 buah bilangan, yaitu mulai dari bilanagn ke 5 sampai bilangan ke 1 dengan nilai awal bilangan 8. Tampilan bilangan tersebut adalah menurun dan contohnya adalah : bilangan ke 5, i=3 (diperoleh dari 8-5)dan seterusnya sampai bilangan 1, i=7 (diperoleh dari 8-1=7)