IF (Kondisi1) THEN
pernyataan 1
ELSE IF (Kondisi 2) THEN
pernyataan 2
ELSE IF (Kondisi 3) THEN
pernyataan 3
ELSE
pernyataan 4
END IF
Dari instruksi diatas dapat disimpulkan bahwa dalam Kondisi ke 1 cukup dengan menggunakan
instruksi IF (Kondisi 1) THEN, sedangkan untuk kondisi berikutnya yaitu kondisi 2 hingga
seterusnya dan selain kondisi terakhir, maka menggunakan ELSE IF (Kondisi N) THEN,
Sedangkan untuk kondisi terakhir cukup menggunakan ELSE saja.
IF, THEN, dan ELSE, adalah sebuah pernyataan yang ada Untuk keperluan pengambilan
keputusan. Dan untuk artinya IF diartikan sebagai JIKA, sedangkan THEN dapat anda artikan
dengan sebutan MAKA, sedangkan ELSE dapa anda artiken sebagai JIKA BUKAN / SELAIN ITU.
Jika kamu masih belum paham penggunaan IF THEN ELSE
Pernyataan IF
Pernyataan if digunakan Jika kondisi bernilai benar, maka pernyataan 1 akan dikerjakan
kemudian mengerjakan pernyataan 2 dan jika tidak memenuhi syarat (salah) maka akan
mengerjakan pernyataan 2 Dari pengertian tersebut dapat dilihat dari diagram alir berikut:
Pernyataan IF
Pernyataan IF – ELSE
Pernyataan if mempunyai pengertian, Jika kondisi bernilai benar, maka pernyataan -1 akan
dikerjakan kemudian kerjakan pernyataan 3dan jika tidak memenuhi syarat maka akan
mengerjakan pernyataan 2 kemudian kerjakan pernyataan 3 Dari pengertian tersebut dapat
dilihat dari diagram alir berikut
Percabangan IF – ELse
Jika kamu sudah mengetahui dasar pemrograman tentang sturktur percabangan kita bisa lanjut
ke materi belajar percabangan berikutnya :
Percabangan 1 Kondisi
1. Mulai
5. Selesai
Algoritma Pseuducode
Var :
nilai_siswa : integer
Pseudocode :
Read ( nilai siswa )
IF nilai siswa ≤ 60 THEN
write ( Siswa dinyatakan gagal )
Percabangan 2 Kondisi
IF <kondisi>
THEN <pernyataan 1>
ELSE <pernyataan 2>
Pada format di atas, Jika <kondisi> bernilai benar maka pernyataan 1 dikerjakan. Sedangkan
jika tidak (<kondisi>bernilai salah), maka pernyataan yang dikerjakan adalah pernyataan 2.
Berbeda dengan percabangan 1 kondisi, pada percabangan dua kondisi ada dua pernyataan
untuk kedua kondisi,yaitu untuk <kondisi> yang bernilai benar dan <kondisi> yang bernilai
salah.
1. Mulai
2. Menentukan nilai siswa
3. Jika nilai siswa ( 0 – 100 ) > 75 Tergolong Baik
4. Jika nilai siswa ( 0 – 100 ) ≤ 75 Tergolong Cukup
5. Tampilkan hasil
6. Selesai
Algoritma Pseuducode
Var :
nilai_siswa : integer
Pseudocode
read (nilai siswa )
IF nilai siswa > 75 THEN
write ( tergolong baik )
ELSE
write ( tergolong cukup )
Percabangan Bersarang
Algoritma percabangan bersarang Adalah algoritma percabangan yang setiap pernyataan untuk
kondisi IF di dalamnya terdapat Instruksi IF Lagi. Sehingga struktur Algoritma percabangan
bersarang di dalam IF terdapat IF lagi.
IF(Kondisi a) THEN
IF(kondisi x)THEN
pernyataan 1
ELSE IF
pernyataan 2
ENDIF
ELSE
pernyataan b
ENDIF
Penyelesaian:
Pada contoh ini, masalah terlihat lebih rumit. Ada dua percabangan yang terjadi. Yang pertama
adalah pemeriksaan apakah status seseorang pelanggan atau bukan. Kedua, apabila status
seseorang bukan pelanggan, maka dilakukan pemeriksaan berapa jumlah lembar fotokopi,
apakah lebih dari 100 lembar atau tidak.
Kita akan menggunakan Algoritma flowchart untuk menjalaskan mengenai Kasus Percabangan
Bersarang.
Algoritma Flowchart
percabangan bersarang
Algoritma Percabangan (1,2, 3 kondisi, percabangan bersarang dan contoh kasus)
Algoritma percabangan adalah salah satu instruksi dalam algoritma yang digunakan untuk
memberikan pilihan kepada program perintah mana yang harus diproses dan perintah mana
yang harus dilewati sesuai dengan kondisi yang diberikan.
Di dunia bahasa pemrograman atau algoritma, instruksi agar alur proses program bisa loncat
menuju baris instruksi tertentu sesuai dengan kondisi yang diberikan, itu disebut dengan instruksi
percabangan, pemilihan atau flow control.
Untuk lebih memahami logika dari algoritma percabangan, baik percabangan 1 kondisi, 2
kondisi, 3 kondisi maupun percabangan bersarang, maka di artikel kali saya akan coba kupas
tuntas mengenai algoritma percabangan disertai dengan contoh kasus lengkap, baik kasus-kasus
khusus, maupun contoh kasus dalam kehidupan sehari-hari.
IF (Kondisi1) THEN
pernyataan 1
pernyataan 2
pernyataan 3
ELSE
pernyataan 4
END IF
Untuk Kondisi ke 1 cukup menggunakan instruksi IF (Kondisi 1) THEN, sedangkan untuk kondisi
2 dan seterusnya selain kondisi terakhir, maka menggunakan ELSE IF (Kondisi N) THEN,
sementara untuk kondisi terakhir cukup menggunakan ELSE saja.
Contoh :
write("LULUS")
ELSE
weite("GAGAL")
END IF
Instruksi di atas jika diterjemahkan adalah, IF="jika nilai lebih besar atau sama dengan 80, maka
cetak kata LULUS", ELSE="jika tidak (artinya nilainya lebih kecil dari 80) maka GAGAL".
Yang diberikan warna merah tebal itu adalah bagian kondisi, dengan operan nilai dan angka
80, sedangkan operator yang digunakan adalah >= (lebih besar atau sama dengan), harap
diingat kondisi biasanya selalu membandingkan 2 buah operan dengan operator artimatika.
Semoga dengan uraian singkat di atas anda punya gambaran apa itu percabangan.
Contoh:
Algoritma untuk menentukan usia balita, jika usia lebih kecil atau sama dengan 5 tahun maka
balita.
Pseudocode:
program cek_usia
deklarasi
var usia:integer
algoritma
read(usia)
write("BALITA")
ENDIF
Pada contoh di atas usia diinput oleh pengguna, usia kemudian dicek, jika usia lebih kecil dari
lima maka cetak tulisan "BALITA" sedangkan jika tidak maka instruksi write("BALITA") akan
dilewati.
IF (Kondisi 1) THEN
pernyataan 1
ELSE
pernyataan 2
ENDIF
Algoritma untuk menentukan Lulus dan Tidak Lulus nilai siswa, dengan ketentuan:
1. Jika nilai >=75 maka lulus,
Jawab:
program kelulusan
deklarasi
var nilai:integer
algoritma:
read(nilai)
write("LULUS")
ELSE
write("TIDAK LULUS")
ENDIF
program kelulusan
deklarasi
var nilai:integer
algoritma:
read(nilai)
write("TIDAK LULUS")
ELSE
write("LULUS")
ENDIF
Untuk 2 kondisi, maka algoritma akan melibatkan instruksi percabangan IF (kondisi) THEN.....
ELSE......, artinya jika 2 kondisi maka instruksi kata IF hanya 1 jumlahnya lainnya menggunakan
kata ELSE.
IF (kondisi 1) THEN
pernyataan 1
ELSE IF(kondisi 2) THEN
pernyataan 2
ELSE
pernyataan 3.
ENDIF
Untuk kondisi pertama selalu menggunakan IF (Kondisi 1) THEN, sedangkan untuk kondisi
kedua dan seterusnya selain kondisi terakhir, menggunakan ELSE IF (kondisi n) THEN, dan
untuk kondisi terakhir menggunakan ELSE saja.
Jawab:
program cari_nilai
deklarasi
var nilai:integer
algoritma
read(nilai)
IF(nilai>80)THEN
write("A")
ELSE IF(nilai>=70 AND nilai <=80) THEN
write("B")
ELSE
write("C")
ENDIF
IF(Kondisi 1) THEN
pernyataan 1
ELSE IF(Kondisi 2) THEN
pernyataan 2
ELSE IF (kondisi 3) THEN
pernyataan 3
ELSE IF(kondisi 4) THEN
pernyataan 4
...
...
...
...
...
ELSE IF(kondisi N) THEN
pernyataan N
ELSE
pernyataan terakhir
ENDIF
Contoh algoritma lebih dari 3 kondisi sama halnya dengan 3 kondisi di atas, namun
ketentuannya lebih dari 3. bisa 4, 5 dan seterusya.
IF(Kondisi a) THEN
IF(kondisi x)THEN
pernyataan 1
ELSE IF
pernyataan 2
ENDIF
ELSE
pernyataan b
ENDIF
Intinya algoritma percabangan disebut percabangan bersarang jika di dalam percabangan ada
percabangan lagi, banyak yang menyebut juga dengan sebutan di dalam IF ada IF lagi.
Struktur Algoritma Percabangan dan Contoh Soal 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.
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.
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.
Buatlah flowchart untuk permasalahan tersebut?
Penyelesaian:
Struktur percabangan untuk perhitungan dua buah bilangan. Dalam suatu perhitungan nilai P
= X + Y. Jika P positif, maka Q = X * Y, sedangkan jika negative maka nilai Q = X/Y. Buatlah
flowchart untuk mencari nilai P dan Q ?
Penyelesaian:
Pada contoh ini input yang dibutuhkan adalah nilai X dan Y, sedangkan proses pemeriksaan
kondisi dilakukan pada nilai P apakah positif (termasuk 0) ataukah negative.
Kedua contoh di atas merupakan contoh struktur percabangan sederhana yang melibatkan
hanya satu percabangan. Pada masalah-masalah yang lebih rumit, kita akan menjumpai lebih
banyak percabangan. Kita juga akan menjumpai suatu struktur percabangan berada di dalam
struktur percabangan yang lain, atau yang biasa disebut nested (bersarang).
· jika yang fotokopi statusnya adalah langganan, maka berapa lembar pun dia fotokopi, harga
perlembarnya Rp. 75,-
· jika yang fotokopi bukan langganan, maka jika dia fotokopi kurang dari 100 lembar harga
perlembarnya Rp. 100,-. Sedangkan jika lebih atau sama dengan 100 lembar maka harga
perlembarnya Rp. 85,-.
Buat flowchart untuk menghitung total harga yang harus dibayar jika seseorang memfotokopi
sejumlah X lembar.
Penyelesaian:
Pada contoh ini, masalah terlihat lebih rumit. Ada dua percabangan yang terjadi. Yang pertama
adalah pemeriksaan apakah status seseorang pelanggan atau bukan. Kedua, apabila status
seseorang bukan pelanggan, maka dilakukan pemeriksaan berapa jumlah lembar fotokopi,
apakah lebih dari 100 lembar atau tidak.
Pada soal ini kita juga menjumpai apa yang disebut sebagai nested. Perhatikan pernyataan pada
syarat kedua dari persoalan di atas, jika yang fotokopi bukan langganan, maka jika dia fotokopi
kurang dari 100 lembar harga perlembarnya Rp. 100 pernyataan jika yang kedua berada di
dalam jika yang pertama.
Input yang dibutuhkan untuk permasalahan ini adalah status orang yang fotokopi dan jumlah
lembar yang difotokopi. Sehingga variable input yang digunakan adalah:
Selain itu terdapat variable dengan nama HPP yang digunakan untuk menyimpan harga per
lembar dan TH untuk menyimpan nilai total harga. Perhatikan, variable Status bertipe data
char, sehingga penulisannya harus menggunakan tanda “ “.
Struktur percabangan bersarang untuk masalah kelulusan siswa. Aturan kelulusan siswa pada
mata pelajaran Pemrograman Web diterapkan sebagai berikut:
Jika nilai ujian tengah semester (UTS) lebih besar dari 70 maka siswa dinyatakan lulus dan Nilai
Akhir sama dengan nilai UTS. x Jika nilai UTS kurang atau sama dengan 70 maka siswa
dinyatakan lulus jika Nilai Akhir lebih besar atau sama dengan 60 dimana Nilai Akhir = (nilai
UTS x 40%) + (nilai UAS x 60%).
Buatlah flowchart penyelesaian masalah tersebut apabila output yang diinginkan adalah NIM,
Nama Siswa, Nilai Akhir dan Status Kelulusan?
Penyelesaian:
Pada contoh ini, ada dua percabangan. Yang pertama adalah pemeriksaan apakah nilai UTS
siswa lebih dari 70. Kedua, apabila nilai UTS tidak lebih dari 70, maka dilakukan pemeriksaan
apakah nilai akhir lebih dari 60. Input yang dibutuhkan untuk permasalahan ini adalah NIM,
nama siswa, nilai UTS, dan nilai UAS.
Sehingga variable input yang digunakan adalah: NIM untuk Nomor induk siswa, nama untuk
nama siswa, NUTS untuk nilai ujian tengah semester, dan NUAS untuk nilai ujian akhir semester.
Sedangkan variabel ouput terdiri dari NA yang digunakan untuk menyimpan nilai akhir dan
Status untuk menyimpan status kelulusan.
Algoritma Dalam Kehidupan Sehari-Hari Dalam Bahasa Natural Dan Flowchart
3/26/2019
Algoritma ialah urutan langkah-langkah logis untuk menuntaskan suatu persoalan yang disusun
secara sistematis dan logis. Kata Logis merupakan kata kunci dalam Algoritma sebab langkah-
langkah dalam Algoritma harus bersifat logis (nyata) dan harus sanggup ditentukan bernilai
salah atau benar.
Prosedur dalam resep menyerupai itu bahwasanya menyatakan semacam algoritma. Prosedur
itu merupakan suatu urutan yang memandu orang untuk melaksanakan suatu proses.
Dalam kehidupan sehari-hari ada aneka macam proses-proses yang mewakili proses algoritma,
baik algoritma bahasa natural, algoritma flowchart atau algoritma pseudocode.
Di artikel kali ini aku akan coba uraikan algoritma dalam kehidupan sehari-hari yang akan
disajikan dalam bahasa natural dan flowchart.
Tapi sebelum pada pola kasus aku akan coba jelaskan kembali apa itu algoritma bahasa natural
dan algoritma flowchart. Mengenai penulisan algoritma ini bahwasanya sudah dibahas di artikel
sebelumnya wacana 3 cara penyajian algoritma.
Ketika menyajikan algoritma dalam bahasa natural, maka ada beberapa hal yang perlu
diperhatikan, urutan langkah-langkah harus dimulai dengan kata mulai / Start dan diakhiri
dengan kata selesai / stop, atau anda juga sanggup memakai istilah dengan bahasa lainnya yang
serupa, Start dituliskan sebagai ‘inisialisasi’ atau ‘Mulai’, sedangkan End sendiri dituliskan sebagai
‘selesai’ dan dituliskan pada selesai algoritma.
Pengertian Algoritma Flowchart ?
Flowchart adalah suatu skema dengan simbol-simbol tertentu yang menggambarkan urutan
proses secara mendetail dan hubungan antara suatu proses (instruksi) dengan proses lainnya
dalam suatu program.
1. Mulai
3. Siapkan amplop
7. Lem amplop
9. Apakah ada perangko, kalau ada temple perangko, kalau tidak ada beli dulu
13. selesai
1. Mulai
2. Cuci Tangan
8. Makan
10.Cuci piring
11 Selesai.
B. Algoritma Flowchart
3. Tidur
Aktivitas berikutnya yang sanggup dipecahkan dalam algoritma ialah proses tidur, algoritma
flowchartnya ialah sebagai berikut:
5. Menanak Nasi
Algoritma flowchart menanak nasi ialah sebagai berikut:
Kesimpulan
Ada aneka macam pola permasalahan dalam kehidupan sehari-hari yang sanggup dipecahkan
memakai algoritma flowchart.
Untuk menciptakan algoritma flowchart intinya harus dimulai dengan simbol terminator
dengan goresan pena Mulai / start atau selesai / end / finish.
Simbul lainnya yang dipakai harus sesuai dengan kasus yang ingin dipecahkan, sehingga alur
proses yang terjadi gampang untuk dipahami.
ALGORITMA PERCABANGAN 1 KONDISI DAN 2 KONDISI
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. Algoritma percabangan pada pemrograman umumnya
menggunakan kata kunci IF (jika), THEN (maka), dan ELSE (selainnya). Berikut kelompok saya
akan mejelaskan tentang algoritma percabangan 1 kondisi dan 2 kondisi beserta contoh
kasusnya.
ALGORITMA PERCABANGAN 1 KONDISI
Algoritma percabangan dengan 1 kondisi memiliki format dasar seperti berikut :
IF <kondisi>
THEN <pernyataan>
Pada format diatas , jika <kondisi> bernilai benar maka <pernyataan> dikerjakan, sedangkan
jika bernilai salah, maka <pernyataan> tidak dikerjakan dan proses langsung keluar dari
percabangan.
Contoh Kasus : Nilai siswa akan gagal bila bernilai ≤ 60
ALGORITMA BAHASA NATURAL
1. Mulai
2. Menentukan nilai siswa
3. Jika nilai siswa ≤ 60
4. Siswa dinyatakan Gagal
5. Selesai
PSEUDOCODE
Var :
nilai_siswa : integer
Pseudocode :
Read ( nilai siswa )
IF nilai siswa ≤ 60 THEN
write ( Siswa dinyatakan gagal )
FLOWCHART
ALGORITMA PERCABANGAN 2 KONDISI
Algoritma percabangan dengan 2 kondisi memiliki format dasar seperti berikut :
IF <kondisi>
THEN <pernyataan 1>
ELSE <pernyataan 2>
Pada format di atas, Jika <kondisi> bernilai benar maka pernyataan 1 dikerjakan. Sedangkan
jika tidak (<kondisi>bernilai salah), maka pernyataan yang dikerjakan adalah pernyataan 2.
Berbeda dengan percabangan 1 kondisi, pada percabangan dua kondisi ada dua pernyataan
untuk kedua kondisi,yaitu untuk <kondisi> yang bernilai benar dan <kondisi> yang bernilai
salah.
Contoh Kasus : Penggolongan nilai
ALGORITMA BAHASA NATURAL
1. Mulai
2. Menentukan nilai siswa
3. Jika nilai siswa ( 0 – 100 ) > 75 Tergolong Baik
4. Jika nilai siswa ( 0 – 100 ) ≤ 75 Tergolong Cukup
5. Tampilkan hasil
6. Selesai
PSEUDOCODE
Var :
nilai_siswa : integer
Pseudocode
read (nilai siswa )
IF nilai siswa > 75 THEN
write ( tergolong baik )
ELSE
write ( tergolong cukup )
FLOWCHART
Percabangan Java if, else-if, if-else, switch
Percabangan adalah suatu pilihan atau opsi dengan kondisi tertentu. Jika kondisi yang menjadi syarat
terpenuhi, maka opsi atau pilihan dijalankan, jika tidak maka sebaliknya. Dalam java terdapat 4 macam
jenis percabangan, if, if-else, else-if, dan juga switch. Keempat jenis ini memiliki penggunaan masing-
masing. Berikut penjelasan mengenai penggunaan tiap-tiap percabangan :
if : Percabangan if ini digunakan jika kita hanya memiliki satu pernyaatan yang akan dijalankan
dengan syarat tertentu. Sintaks if seperti berikut :
if(kondisi){
pernyataan
}
Jika kondisi benar, maka pernyataan akan dijalankan.
Contoh :
public class coba{
public static void main (String [] args){
int a=0;
if (a==0)
System.out.println("Nilai a = 0");
if (a==1)
System.out.println("Nilai a = 1");
}
}
Output : Program akan menampilkan nilai a = 0 saja, karena pada if yang kedua, kondisi tidak
memenuhi atau salah.
if else : Percabangan if else digunakan saat kita memiliki dua pernyataan dengan syarat tertentu.
Sintaks if-else seperti berikut :
if(kondisi){
pernyataan1
}else{
pernyataan2
}
Jika hasil dari if benar, maka pernyataan1 yang dijalankan, sedangkan jika salah, pernyataan dua yang
akan dijalankan.
Contoh :
public class coba{
public static void main (String [] args){
int a=0;
if (a==0)
System.out.println("Nilai a = 0");
else
System.out.println("Nilai a = 1");
}
}
Output : program akan menampilkan nilai a = 0, karena kondisi if bernilai benar, jika pada inisialisasi
nilai a tidak bernilai 0, maka program akan menampilkan nilai a = 1.
else -if : percabangan yang digunakan saat kita memiliki banyak kondisi (lebih dari 2) dan banyak
pernyataan (lebih dari 2). Sintaks dari else-if seperti berikut :
if(kondisi){
pernyataan1
}elseif(kondisi2){
pernyataan2
}else(kondisi3){
pernyataan3
}
else {
penyataan4
}
jika kondisi1 benar, maka pernyataan1 akan dijalankan, jika kondisi2 benar, maka penyataan2 akan
dijalankan, jika semua kondisi salah, maka penyataan4 yang akan dijalankan saja.
Contoh :
switch-case : percabangan yang digunakan saat kita memiliki banyak kondisi (lebih dari 2) dan
banyak pernyataan (ledbih dari 2). Sebenarnya switch-case ini hampir sama dengan else if, hanya
saja sintaksnya yang berbeda. Sintaks dari switch-case seperti berikut :
switch (variabel) {
case nilai1: pernyataan1;
break;
case nilai2: pernyataan2;
break;
default: pernyataan3;
}
Jika nilai variabel yang ditunjuk bernilai sesuai nilai1, maka pernyataan1 akan dijalankan, jika nilai
variabel yang ditunjuk bernilai sesuai nilai2, pernyataan2 dijalankan, jika tidak ,maka pernyataan3 yang
akan dijalankan.
1. Buatlah sebuah program untuk menghitung salah satu diantara luas segitiga, luas persegi
panjang atau luas lingkaran dengan menggunakan rumus berikut :
Berikut program untuk menghitung diantara Luas Segitiga, Luas Persegi Panjang, atau Luas
Lingkaran.
Algoritma Deskriptif
Masukkan Pilihan untuk menghitung luas Segitiga, Luas Persegi Panjang, atau Luas Lingkaran.
a. Jika memilih menghitung Luas Segitiga, maka :
Masukkan Alas
Masukkan Tinggi
Luas segitiga=0.5*alas*tinggi
Tampilkan hasil luas segitiga
Masukkan panjang
Masukkan lebar
Luas persegi panjang=panjang*lebar
Tampilkan hasil luas persegi panjang
Masukkan Jari-jari
Luas lingkaran = 3.14*(Jari-jari*Jari-jari)
Hasil luas lingkaran
Program
# include <iostream.h>
# include <conio.h>
main ()
{
int pilihan;
double alas, tinggi, segi3;
double panjang, lebar, lpp;
double jari2, luas_lingkaran;
if (pilihan == 1)
{
cout<<"\t Menghitung Luas Segitiga \n";
cout<<"Masukkan Alas : ";
cin>>alas;
segi3=0.5*alas*tinggi;
cout<<"Luas Segitiga = "<<segi3<<endl;
}
else if (pilihan==2)
{
cout<<"\t Menghitung Luas Persegi Panjang \n";
cout<<"Masukkan Panjang : ";
cin>>panjang;
lpp=panjang*lebar;
cout<<"Luas Persegi Panjang = "<<lpp<<endl;
}
else if (pilihan==3)
{
cout<<"\t Menghitung Luas Lingkaran \n";
cout<<"Masukkan Jari-Jari : ";
cin>>jari2;
luas_lingkaran=3.14*(jari2*jari2);
cout<<"Luas Lingkaran = "<<luas_lingkaran<<endl;
}
else
{
cout<<"Maaf, Anda Salah Memilih"<<endl;
}
getch();
}
Hasil Run :
Silahkan coba buat seperti berikut :
- Silahkan pilih : 1
- Masukkan Nilai Alas : 3
- Masukkan Nilai Tinggi : 5
2. Buatlah program untuk menghitung total pembayaran pemasangan baru rekening pelanggan
PLN. Untuk pemasangan baru ditambah dengan Ppn 10% dan administrasi 5% dari harga untuk
setiap sambungan. Berikut tabel pemasangan :
Algoritma Deskriptif
- Masukkan Nama Lengkap
- Masukkan Pilihan Jenis Pelanggan [Rumah Tangga/Industri]
- Jika pilih Rumah Tangga, maka sambungan yang akan di pilih yakni :
a. jika memilih sambungan Kurang dari 450 watt, maka harga sambungan Rp. 650.000
b. jika memilih sambungan 451 - 900 watt, maka harga sambungan Rp. 650.000
c. jika memilih sambungan 901 - 1.200 watt, maka harga sambungan Rp. 1.200.000
d. jika memilih sambungan 1.201 - 2.200 watt, maka harga sambungan Rp. 1.500.000
e. jika memilih sambungan 2.201 - 4.400 watt, maka harga sambungan Rp. 1.750.000
main ()
{
char nama[20],kode;
int rt,industri;
long int harga, total;
double ppn=0.1,ppnt,admin=0.05,admint;
gotoxy (5,7);
cout<<"|---------------------------------------------------------------------|\n";
gotoxy (5,13);
cout<<"|---------------------------------------------------------------------|\n";
gotoxy (5,19);
cout<<"-----------------------------------------------------------------------\n";
cout<<"\n\t\t\t Input Data Pelanggan Baru\n";
cout<<" Masukkan Nama Lengkap : ";
cin>>nama;
if (rt==1)
{
harga=650000;
}
else if (rt==2)
{
harga=850000;
}
else if (rt==3)
{
harga=1200000;
}
else if (rt==4)
{
harga=1500000;
}
else if (rt==5)
{
harga=1750000;
}
else
{
cout<<"\t\a Anda Salah Memasukkan Kode\n";
harga=0;
}
}
if (industri==6)
{
harga=2250000;
}
else if (industri==7)
{
harga=2750000;
}
else if (industri==8)
{
harga=3250000;
}
else if (industri==9)
{
harga=4500000;
}
else if (industri==10)
{
harga=6750000;
}
else
{
cout<<"\t\a Anda Salah Memasukkan Kode\n";
harga=0;
}
}
else
{
cout<<"\t Anda Salah Memasukkan Kode\n";
harga=0;
}
admint=admin*harga;
ppnt=ppn*harga;
total=harga+ppnt+admint;
main ()
{
char nama[20],kode;
int rt,industri;
long int harga, total;
double ppn=0.1,ppnt,admin=0.05,admint;
gotoxy (5,7);
cout<<"|---------------------------------------------------------------------|\n";
gotoxy (5,13);
cout<<"|---------------------------------------------------------------------|\n";
gotoxy (5,19);
cout<<"-----------------------------------------------------------------------\n";
else
{
cout<<"\t Anda Salah Memasukkan Kode\n";
harga=0;
}
admint=admin*harga;
ppnt=ppn*harga;
total=harga+ppnt+admint;
cout<<"\n\t Output Data";
cout<<"\n\t Rincian Pembayaran\n";
cout<<" Nama Pelanggan : "<<nama<<endl;
cout<<" Harga Sambungan : Rp. "<<harga<<endl;
cout<<" Biaya PPN 10% : Rp. "<<ppnt<<endl;
cout<<" Biaya Adminitrasi 5% : Rp. "<<admint<<endl;
cout<<" Total Pembayaran : Rp. "<<total<<endl;
getch();
}
3. Buatlah program untuk menghitung gaji bersih dari seorang karyawan, dengan ketentuan
sebagai berikut:
Karyawan memperoleh tunjangan istri 10% dari gaji pokok apabila statusnya sudah
menikah.
Memperoleh tunjangan anak apabila mempunyai anak. Jumlah anak kecil dari 2 maka
tunjangan anak 5% dari gaji pokok, sedangkan jumlah anak lebih besar dari 2 maka
tunjangan anak 10% dari gaji pokok.
Gaji bersih diperoleh dari tunjangan istri + tunjangan anak + gaji pokok.
Berikut program untuk menghitung daftar gaji karyawan :
#include <iostream.h>
#include <conio.h>
main()
{
char nama[30];
int status,anak;
long int gaji_pokok, tunj_nikah, tunj_anak,gaji_bersih;
cout<<"\t Input Data\n";
cout<<" Nama Karyawan : ";
cin>>nama;
cout<<" Gaji Pokok : ";
cin>>gaji_pokok;
cout<<" Status Pernikahan\t\n";
cout<<" (1.Nikah, 2.Belum) [1/2] : ";
cin>>status;
if (status==1)
{
tunj_nikah=0.1*gaji_pokok;
cout<<" Jumlah Anak : ";
cin>>anak;
if (anak<2)
{
tunj_anak=0.05*gaji_pokok;
}
else
{
tunj_anak=0.1*gaji_pokok;
}
}
else if (status==2)
{
tunj_nikah=0;
}
else
{
cout<<" Anda Salah Memasukkan Kode\n";
}
gaji_bersih=gaji_pokok+tunj_nikah+tunj_anak;
Soal Pilihan ganda dan jawaban
Pemprograman Dasar ,Dasar Struktur
Algoritma,Struktur Kontrol & Perulangan,
Penerapan dari Algoritma ke
Program,Array,Fungsi
a. Deskripsi
b. Deklarasi
c. Header
d. Preparation
e. Prosedur
Bagian yang menjelaskan serangkaian instruksi untuk memproses inputan dan menghasilkan output
adalah bagian ....
a. Deskripsi
b. Deklarasi
c. Header
d. Preparation
e. Prosedur
a. Float nilai
b. Int a
d. Char alamat
e. Int usia
Berikut ini variabel yang pasti memiki tipe data integer yaitu ....
a. PanjangBalok
b. LuasPersegi
c. TotalGaji
d. JumlahAnak
e. NilaiTertinggi
a. 5
b. 5,5
c. 2
d. FALSE
e. TRUE
a. 0
b. 1
c. 2
d. 4
e. 9
a. Terminator
b. Input/output
c. Proses
d. Pemilihan
e. Preparasi
Simbol apakah flowchart diatas?
a. Terminator
b. Input/output
c. Proses
d. Pemilihan
e. Preparasi
Jika <kondisi> bernilai benar maka pernyataan dikerjakan, sedangkan jika tidak,
maka pernyataan tidak dikerjakan dan proses langsung keluar dari percabangan adalah penjelasan
dari percabangan ....
a. 1 kondisi
b. 2 kondisi
d. Percabangan bersarang
e. Perulangan
Jika <kondisi> bernilai benar maka pernyataan1 dikerjakan. Sedangkan jika tidak (<kondisi> bernilai
salah), maka pernyataan yang dikerjakan adalah pernyataan2. Hal tersebut adalah penjelasan dari
percabangan...
a. 1 kondisi
b. 2 kondisi
d. Percabangan bersarang
e. Perulangan
Jika <kondisi1> dicek nilai kebenarannya. Jika benar, maka dikerjakan pernyataan1. Jika salah, maka
dicek nilai kebenaran <kondisi2>. Jika <kondisi2> benar, maka dikerjakan pernyataan2. Jika tidak
algoritma akan mengecek ke kondisi berikutnya dengan cara yang sama dengan yang sebelumnya.
Terakhir, jika semua kondisi bernilai salah, maka pernyataan yang dikerjakan adalah Pernyataan(n+1).
Hal tersebut adalah penjelasan dari percabangan...
a. 1 kondisi
b. 2 kondisi
c. Lebih dari 2 kondisi
d. Percabangan bersarang
e. Perulangan
a. 1 kondisi
b. 2 kondisi
d. Percabangan bersarang
e. Perulangan
a. Kondisi di awal
b. Kondisi di akhir
c. 1 kondisi
d. 2 kondisi
a. Kondisi di awal
b. Kondisi di akhir
c. 1 kondisi
d. 2 kondisi
13. Siswa mampu Mendeskripsikan struktur perulangan dengan kondisi akhir diinputkan user
Berikut ini pernyataan yang benar mengenai perulangan dengan kondisi akhir
a. Dapat dihitung
c. Harus integer
d. Bilangan real
e. Karakter
1) READ nama
2) READ OmsetJual
3) READ GajiPokok
4) Bonus =0
5) IF (OmsetJual)>100 THEN
6) Bonus = 1% x OmsetJual
7) TotalGaji=GajiPokok + Bonus
8) WRITE TotalGaji
Array
Sekumpulan data yang bertipe sama dan antara data satu dengan data yang lain dibedakan dengan
indeksnya merupakan pengertian dari ....
a. Integer
b. Array
c. Variabel
d. Char
e. Booelan
Array yang terdiri dari m buah baris (row) dan n buah kolom (column) adalah ….
b. Variabel
c. Integer
e. Array multidimensi
Fungsi
a. fungsi
b. variabel
c. string
d. void
e. parameter
mempunyai nilai balik. Untuk melakukan hal ini di dalam C++, maka harus membuat
suatu fungsi dengan tipe void, yang berarti tidak memiliki nilai balik (return value) adalah...
a. #include <iostream>
int hasil;
hasil = X + 1;
return hasil;
Pernyataan_yang_akan_dilakukan;
……………
return nilai_kembali;
b. int main () {
cin>>Bilangan;
return 0;
}
Pernyataan_yang_akan_dilakukan;
……………
Pernyataan_yang_akan_dilakukan;
……………
Pernyataan_yang_akan_dilakukan;
……………
return nilai_kembali;
22. Siswa mampu Menentukan Logika dari penyelesaian masalah dengan struktur algoritma
p=4
q=7
if (p>q) then
p=p-q
write p
a. 4
b. 7
c. 3
d. -3
e. 11
23. Siswa mampu Menentukan karakteristik tipe data pada sebuah variabel
a. Integer
b. Char
c. Varchar
d. Float
e. Date
24. Siswa mampu Menentukan alur percabangan dari potongan baris kode program
Algoritma
1) READ nama
2) READ OmsetJual
3) READ GajiPokok
4) Bonus =0
5) IF (OmsetJual)>100 THEN
6) Bonus = 1% x OmsetJual
7) TotalGaji=GajiPokok + Bonus
8) WRITE TotalGaji
Jika OmsetJual adalah 100 maka ....
c. TotalGaji = GajiPokok
d. TotalGaji = 1%xOmsetJual
Algoritma UlangAlik
Variabel i, a n : integer
1) n = 10
2) a = 2
3) i = 1
4) WHILE a <= 3n DO
5) a = a+4
6) WRITE a
7) END
a. 28
b. 29
c. 30
d. 31
e. 32
Algoritma UlangAlik
Variabel i, a n : integer
1) n = 10
2) a = 2
3) i = 1
4) WHILE a <= 3n DO
5) a = a+4
6) WRITE a
7) END
Jika nilai n dan a diganti dengan nilai berturut-turut adalah 5 dan 20 maka output algoritma di atas
adalah ...
a. 20
b. 24
c. 28
d. 32
e. 36
Algoritma PerulanganAkhir
Variabel i, a, n : integer
1) i = 1
2) a = 5
3) n = 30
4) REPEAT
5) a = a+i*i
6) i=i+1
7) UNTIL a>n
8) WRITE a
9) END
a. 19
b. 26
c. 35
d. 36
e. 40
28. Siswa mampu Menerapkan Struktur perulangan dengan kondisi akhir diinputkan user
Algoritma ganjilGenap
Variabel n : integer
Pilihan : karakter
1) REPEAT
2) READ n
3) IF (n MOD 2 == 0) THEN
4) WRITE “Genap”
5) ELSE
6) WRITE “Ganjil”
8) READ pilihan
10) END
b. Pengguna dapat menentukan bilangan ganjil genap sebanyak yang dia mau
Algoritma HitungUlang
Varabel a, i : integer
1) a = 0
2) FOR i = 1 To 100
3) IF (i mod 5 == 0)THEN
4) WRITE i
5) a = a+1
6) WRITE a
7) END
a. 0
b. 10
c. 20
d. 25
e. 100
Algoritma HitungMundur
Variabel i, j : integer
1) FOR i = 10 DOWNTO 0 DO
2) WRITE “*”
3) END
a. 6
b. 7
c. 8
d. 9
e. 10
Array
a. 2
b. 5
c. 3
d. 7
e. 9
$ibukota = array;
Jika output adalah “Indonesia”, maka indeks array yang dipilih adalah
a. [0][0]
b. [0][1]
c. [1][0]
d. [1][1]
e. [1][2]
Fungsi
#include <iostream.h>
#include <conio.h>
void main()
Getch();
a. Hello My World !
b. void main()
d. #include <iostream.h>
Write “Lulus”
a. Tidak Lulus
b. Lulus
c. Nilai 80
d. Nilai >75
e. Nilai diatas 75
36 . Siswa mampu Menganalisis berbagai contoh penerapan algoritma dasar dalam kehidupan sehari-hari
Algoritma percabangan dapat digunakan untuk beberapa kasus permasalahan berikut, kecuali ....
WRITE “Hebat”
ELSE
WRITE “Good”
b. Nilai >70
c. Nilai <= 80
d. Nilai <=70
e. Nilai < 80
#include <iostream>
int x = 3.05;
return 0
Kode program yang digaris bawahi terjadi error, seharusnya tipe data yang digunakan adalah...
a. char
b. long int
c. short int
e. float
Array
39. Siswa mampu Menganalisis pengelompokkan data berdimensi dari kumpulan informasi
Nilai data kelas baris kedua kolom ketiga pada data berikut adalah....
1 50 48 64 44
2 54 51 66 44
3 53 51 64 43
a. 50
b. 51
c. 44
d. 66
e. 43
Fungsi
40. Siswa mampu Menyimpulkan tentang cara kerja fungsi pada kode program
#include <iostream>
Int main{
Int x, y, z = 20;
Return 0