SlideShare a Scribd company logo
Algoritma Pemrograman
Modul 5-1:
Instruksi Seleksi-Case
Instruksi Case / Algoritma
Instruksi case digunakan sebagai instruksi
pemilihan dimana aksi yang akan dilakukan
bergantung pada nilai dari satu macam variabel
saja, dengan kata lain variabel yang menentukan
pilihan aksi mungkin memiliki banyak macam
nilai dan setiap nilainya berkaitan dengan satu
macam aksi.
9/10/2014 Algoritma Pemrograman, @SUARGA 2
Bentuk case
case ( variable )
nilai-1 : aksi-1;
nilai-2 : aksi-2;
nilai-3 : aksi-3;
………..
default : aksi-n;
endcase.
9/10/2014 Algoritma Pemrograman, @SUARGA 3
• Bentuk case diatas dapat diterjemahkan sebagai
berikut:
• dimungkinkan ada n-buah aksi, mulai dari aksi-1
hingga aksi-n
• setiap aksi hanya dilakukan apabila suatu nilai
variabel dicapai sesuai dengan persyaratan,
misalnya: aksi-1 dilakukan hanya bila variabel
bernilai nilai-1, aksi-2 dilaksanakan apabila
variabel bernilai nilai-2, dan seterusnya.
• apabila tidak ada satupun nilai variabel yang
cocok maka aksi-n dikerjakan sebagai aksi
“default” (hanya dikerjakan apabila tidak ada
yang memenuhi syarat).
9/10/2014 Algoritma Pemrograman, @SUARGA 4
var=Nilai-1
var=Nilai-2
var=Nilai-3
Aksi-1
Aksi-2
Aksi-3
default:
aksi-N
dst
Y
N
Y
N
Y
N
Flowchart
9/10/2014 Algoritma Pemrograman, @SUARGA 5
Contoh Soal
Gaji karyawan pada sebuah perusahaan di-dasarkan pada jam-kerja
dalam satu bulan serta posisi atau golongannya dalam perusahaan itu.
Upah perjam menurut golongan adalah sbb:
Golongan Upah/jam (Rp)
A 5000
B 6000
C 7500
D 9000
Apabila karyawan bekerja lebih dari 150 jam perminggu, maka
kelebihan jam kerja tersebut dihitung sebagai lembur dengan
upah/jam 25% diatas upah reguler. Buat sebuah algoritma yang
menerima nama, golongan, serta jam-kerja karyawan, kemudian
menampilkan gaji total-nya dalam satu bulan.
9/10/2014 Algoritma Pemrograman, @SUARGA 6
Algoritma
Algoritma Gaji_Karyawan
{ algoritma yang menerima nama, golongan serta jam-kerja kemudian
menampilkan total gaji yang diterima karyawan }
Definisi Variabel
real gaji, total, jamkerja, lembur, upah;
string nama;
char golongan;
Rincian Langkah
write (“ masukkan nama karyawan : “);
read ( nama );
write (“ masukkan golongan-nya : “);
read ( golongan );
write (“ masukkan jam kerjanya : “);
read ( jamkerja );
9/10/2014 Algoritma Pemrograman, @SUARGA 7
case ( golongan )
‘ A ‘ : upah  5000;
‘ B ‘ : upah  6000;
‘ C ‘ : upah  7500;
‘ D ‘ : upah  9000;
default : write (“ golongannya salah ! “);
upah  0;
endcase.
if ( jamkerja > 150 )
then lembur  ( jamkerja – 150 ) * upah * 1.25;
gaji  150 * upah;
else lembur  0;
gaji  jamkerja * upah;
endif
total  gaji + lembur;
write (“ Gaji yang diterima sdr : “, nama, “ adalah = Rp. “, total);
9/10/2014 Algoritma Pemrograman, @SUARGA 8
Case = Switch-Case dalam C++
switch(var) {
case nilai-1: aksi-1; break;
case nilai-2: aksi-2; break;
case nilai-3: aksi-3; break;
…
default: aksi-N
}
9/10/2014 Algoritma Pemrograman, @SUARGA 9
9/10/2014 Algoritma Pemrograman, @SUARGA 10
Perhatian: bila case tidak diakhir break, maka otomatis case
berikutnya dikerjakan juga.
Contoh diatas menunjukkan bahwa cout << dikerjakan untuk
nilai x=1, 2 atau 3
9/10/2014 Algoritma Pemrograman, @SUARGA 11
Contoh Program
//GajiKaryawan.cpp
#include <iostream>
using namespace std;
int main()
{
float gaji, total, jamKerja, lembur, upah;
string nama;
char golongan;
int off;
cout << "Masukkan nama karyawan : ";
cin >> nama;
cout << "Masukkan golongan-nya : ";
cin >> golongan;
cout << "Masukkan jam kerjanya : ";
cin >> jamKerja;
9/10/2014 Algoritma Pemrograman, @SUARGA 12
switch(golongan) {
case 'A' : upah = 5000.0; break;
case 'B' : upah = 6000.0; break;
case 'C' : upah = 7500.0; break;
case 'D' : upah = 9000.0; break;
default : { cout << "Golongan-nya salah!";
upah = 0.0; }
}
if (jamKerja > 150) {
lembur = (jamKerja - 150)*upah*1.25;
gaji = 150*upah;
}
else {
lembur = 0.0;
gaji = jamKerja*upah;
}
9/10/2014 Algoritma Pemrograman, @SUARGA 13
cout.setf(ios::fixed);
cout.setf(ios::showpoint);
cout.precision(2) ;
total = gaji + lembur;
cout << "Gaji yang diterima saudara : " << nama;
cout << " adalah Rp. " << total << 'n';
cin >> off;
return 0;
}
9/10/2014 Algoritma Pemrograman, @SUARGA 14

More Related Content

PPTX
Materi pemrograman dasar 5 percabangan
DOCX
Aspek-Aspek Keamanan Jaringan
PPTX
Bab 2 model data
PPTX
Bab 2 Aljabar Relasional
PPTX
Bab 2 differensial sederhana
PPTX
Algoritma Greedy
PPTX
Menggunakan teknologi informasi dalam menjalankan e-commerce
DOCX
Project charter
Materi pemrograman dasar 5 percabangan
Aspek-Aspek Keamanan Jaringan
Bab 2 model data
Bab 2 Aljabar Relasional
Bab 2 differensial sederhana
Algoritma Greedy
Menggunakan teknologi informasi dalam menjalankan e-commerce
Project charter

What's hot (20)

PPTX
Algoritma pemrograman 7
PDF
Latihan 1 Kode Program Java Mengimpor Scanner ke Program.pdf
PPTX
2. proses bisnis dan software requirements
PPT
Diferensial fungsi-majemuk
PPT
Algoritma brute force
PPTX
Ppt aplikasi akuntansi
PDF
OpenSUSE-Kelompok 14
PDF
Bab1 c - Matematika Bisnis
PDF
Analisis Algoritma - Strategi Algoritma Dynamic Programming
PPTX
Algoritma pencarian lintasan jalur terpendek
DOC
Tugas bisnis kelompok 4 kelas E (SI)
DOCX
Contoh Deskrip Kasus Pasien Gangguan Jiwa
PDF
Algoritma greedy
PPT
MetNum2-Deret_Taylor+Analisis_Galat.ppt
PPTX
Normalisasi Basis Data
PPTX
01. manajemen umum bab i pengertian
PDF
Project Charter Sistem Informasi Posko Keamanan
PDF
Pedoman Petunjuk Teknis Skripsi Teknik Informatika
PPTX
Perkembangan erp (enterprise resource planning)
PPT
Pertemuan 10
Algoritma pemrograman 7
Latihan 1 Kode Program Java Mengimpor Scanner ke Program.pdf
2. proses bisnis dan software requirements
Diferensial fungsi-majemuk
Algoritma brute force
Ppt aplikasi akuntansi
OpenSUSE-Kelompok 14
Bab1 c - Matematika Bisnis
Analisis Algoritma - Strategi Algoritma Dynamic Programming
Algoritma pencarian lintasan jalur terpendek
Tugas bisnis kelompok 4 kelas E (SI)
Contoh Deskrip Kasus Pasien Gangguan Jiwa
Algoritma greedy
MetNum2-Deret_Taylor+Analisis_Galat.ppt
Normalisasi Basis Data
01. manajemen umum bab i pengertian
Project Charter Sistem Informasi Posko Keamanan
Pedoman Petunjuk Teknis Skripsi Teknik Informatika
Perkembangan erp (enterprise resource planning)
Pertemuan 10
Ad

Similar to Algoritma pemrograman 8 (10)

PPTX
Algoritma pemrograman 11
DOCX
Java (Netbeans) - Looping - Object Oriented Programming
PDF
2. teknik pemilihan dalam_pemrograman
PPTX
Algoritma pemrograman 14
PPTX
modul-2 Programming Fundamentals PHP and jS.pptx
PDF
PPTX
Algoritma pemrograman 10
PDF
Mod 4 pengambilan keputusan
PPTX
Algoritma Pemrograman (Flowchart) - Logika dan Algoritma
PDF
Menerapkan struktur kontrol percabangan dalam bahasa pemrograman
Algoritma pemrograman 11
Java (Netbeans) - Looping - Object Oriented Programming
2. teknik pemilihan dalam_pemrograman
Algoritma pemrograman 14
modul-2 Programming Fundamentals PHP and jS.pptx
Algoritma pemrograman 10
Mod 4 pengambilan keputusan
Algoritma Pemrograman (Flowchart) - Logika dan Algoritma
Menerapkan struktur kontrol percabangan dalam bahasa pemrograman
Ad

More from ZainalAbidin909479 (10)

PPTX
Algoritma pemrograman 15
PPTX
Algoritma pemrograman 13
PPTX
Algoritma pemrograman 12
PPTX
Algoritma pemrograman 1
PPTX
Algoritma pemrograman 2
PPTX
Algoritma pemrograman 3
PPTX
Algoritma pemrograman 4
PPTX
Algoritma pemrograman 5
PPTX
Algoritma pemrograman 6
PPTX
Algoritma pemrograman 9
Algoritma pemrograman 15
Algoritma pemrograman 13
Algoritma pemrograman 12
Algoritma pemrograman 1
Algoritma pemrograman 2
Algoritma pemrograman 3
Algoritma pemrograman 4
Algoritma pemrograman 5
Algoritma pemrograman 6
Algoritma pemrograman 9

Recently uploaded (20)

DOCX
Modul Ajar Deep Learning PAI & BP Kelas 12 SMA Terbaru 2025
PDF
Deck Rumah Pendidikan untuk Mendukung Program Prioritas Kemendikdasmen.pdf
PDF
lembar kerja LMS tugas pembelajaran mendalam
PPTX
Bahan Tayang OJT Pembelajaran Mendalam KS
DOCX
Modul Ajar Deep Learning Bahasa Inggris Kelas 12 SMA Terbaru 2025
DOCX
Modul Ajar Deep Learning PAI & BP Kelas 11 SMA Terbaru 2025
DOCX
Lembar Kerja Mahasiswa Information System
PPTX
5. Bahan Bacaan Asinkronus Modul 5_ Perencanaan Pembelajaran.pptx
PPTX
Modul 2. Berpikir Komputasional sebagai Dasar Koding untuk Kecerdasan Artifis...
DOCX
Modul Ajar Pembelajaran Mendalam Senbud Seni Tari Kelas XII Terbaru 2025
DOCX
Modul Ajar Pembelajaran Mendalam Senbud Seni Rupa Kelas XII Terbaru 2025
PPTX
Bahan Presentasi Persamaan Elips .pptx
PPTX
Pancasila: fondasi peradaban dan kebudayaan berkelanjutan
PDF
PPT IPS Geografi SMA Kelas X_Bab 1 Pengantar Geografi_May.pdf
PDF
883668952-KP-4-Modul-2-Kerangka-Pembelajaran-Mendalam.pdf
PPTX
PENGIMBASAN PEMBELAJARAN MENDALAM (DEEP LEARNING)
PPTX
9ICP - Hubungan antara Pancasila dengan UUD 1945Bhinneka Tunggal Ika.pptx
PDF
Gangguan Penglihatan Mata - presentasi biologi
DOCX
Modul Ajar Deep Learning PAI & BP Kelas 10 SMA Terbaru 2025
PDF
BAHASA INDONESIA KELAS 6 SD TEKS INFORMATIF
Modul Ajar Deep Learning PAI & BP Kelas 12 SMA Terbaru 2025
Deck Rumah Pendidikan untuk Mendukung Program Prioritas Kemendikdasmen.pdf
lembar kerja LMS tugas pembelajaran mendalam
Bahan Tayang OJT Pembelajaran Mendalam KS
Modul Ajar Deep Learning Bahasa Inggris Kelas 12 SMA Terbaru 2025
Modul Ajar Deep Learning PAI & BP Kelas 11 SMA Terbaru 2025
Lembar Kerja Mahasiswa Information System
5. Bahan Bacaan Asinkronus Modul 5_ Perencanaan Pembelajaran.pptx
Modul 2. Berpikir Komputasional sebagai Dasar Koding untuk Kecerdasan Artifis...
Modul Ajar Pembelajaran Mendalam Senbud Seni Tari Kelas XII Terbaru 2025
Modul Ajar Pembelajaran Mendalam Senbud Seni Rupa Kelas XII Terbaru 2025
Bahan Presentasi Persamaan Elips .pptx
Pancasila: fondasi peradaban dan kebudayaan berkelanjutan
PPT IPS Geografi SMA Kelas X_Bab 1 Pengantar Geografi_May.pdf
883668952-KP-4-Modul-2-Kerangka-Pembelajaran-Mendalam.pdf
PENGIMBASAN PEMBELAJARAN MENDALAM (DEEP LEARNING)
9ICP - Hubungan antara Pancasila dengan UUD 1945Bhinneka Tunggal Ika.pptx
Gangguan Penglihatan Mata - presentasi biologi
Modul Ajar Deep Learning PAI & BP Kelas 10 SMA Terbaru 2025
BAHASA INDONESIA KELAS 6 SD TEKS INFORMATIF

Algoritma pemrograman 8

  • 2. Instruksi Case / Algoritma Instruksi case digunakan sebagai instruksi pemilihan dimana aksi yang akan dilakukan bergantung pada nilai dari satu macam variabel saja, dengan kata lain variabel yang menentukan pilihan aksi mungkin memiliki banyak macam nilai dan setiap nilainya berkaitan dengan satu macam aksi. 9/10/2014 Algoritma Pemrograman, @SUARGA 2
  • 3. Bentuk case case ( variable ) nilai-1 : aksi-1; nilai-2 : aksi-2; nilai-3 : aksi-3; ……….. default : aksi-n; endcase. 9/10/2014 Algoritma Pemrograman, @SUARGA 3
  • 4. • Bentuk case diatas dapat diterjemahkan sebagai berikut: • dimungkinkan ada n-buah aksi, mulai dari aksi-1 hingga aksi-n • setiap aksi hanya dilakukan apabila suatu nilai variabel dicapai sesuai dengan persyaratan, misalnya: aksi-1 dilakukan hanya bila variabel bernilai nilai-1, aksi-2 dilaksanakan apabila variabel bernilai nilai-2, dan seterusnya. • apabila tidak ada satupun nilai variabel yang cocok maka aksi-n dikerjakan sebagai aksi “default” (hanya dikerjakan apabila tidak ada yang memenuhi syarat). 9/10/2014 Algoritma Pemrograman, @SUARGA 4
  • 6. Contoh Soal Gaji karyawan pada sebuah perusahaan di-dasarkan pada jam-kerja dalam satu bulan serta posisi atau golongannya dalam perusahaan itu. Upah perjam menurut golongan adalah sbb: Golongan Upah/jam (Rp) A 5000 B 6000 C 7500 D 9000 Apabila karyawan bekerja lebih dari 150 jam perminggu, maka kelebihan jam kerja tersebut dihitung sebagai lembur dengan upah/jam 25% diatas upah reguler. Buat sebuah algoritma yang menerima nama, golongan, serta jam-kerja karyawan, kemudian menampilkan gaji total-nya dalam satu bulan. 9/10/2014 Algoritma Pemrograman, @SUARGA 6
  • 7. Algoritma Algoritma Gaji_Karyawan { algoritma yang menerima nama, golongan serta jam-kerja kemudian menampilkan total gaji yang diterima karyawan } Definisi Variabel real gaji, total, jamkerja, lembur, upah; string nama; char golongan; Rincian Langkah write (“ masukkan nama karyawan : “); read ( nama ); write (“ masukkan golongan-nya : “); read ( golongan ); write (“ masukkan jam kerjanya : “); read ( jamkerja ); 9/10/2014 Algoritma Pemrograman, @SUARGA 7
  • 8. case ( golongan ) ‘ A ‘ : upah  5000; ‘ B ‘ : upah  6000; ‘ C ‘ : upah  7500; ‘ D ‘ : upah  9000; default : write (“ golongannya salah ! “); upah  0; endcase. if ( jamkerja > 150 ) then lembur  ( jamkerja – 150 ) * upah * 1.25; gaji  150 * upah; else lembur  0; gaji  jamkerja * upah; endif total  gaji + lembur; write (“ Gaji yang diterima sdr : “, nama, “ adalah = Rp. “, total); 9/10/2014 Algoritma Pemrograman, @SUARGA 8
  • 9. Case = Switch-Case dalam C++ switch(var) { case nilai-1: aksi-1; break; case nilai-2: aksi-2; break; case nilai-3: aksi-3; break; … default: aksi-N } 9/10/2014 Algoritma Pemrograman, @SUARGA 9
  • 11. Perhatian: bila case tidak diakhir break, maka otomatis case berikutnya dikerjakan juga. Contoh diatas menunjukkan bahwa cout << dikerjakan untuk nilai x=1, 2 atau 3 9/10/2014 Algoritma Pemrograman, @SUARGA 11
  • 12. Contoh Program //GajiKaryawan.cpp #include <iostream> using namespace std; int main() { float gaji, total, jamKerja, lembur, upah; string nama; char golongan; int off; cout << "Masukkan nama karyawan : "; cin >> nama; cout << "Masukkan golongan-nya : "; cin >> golongan; cout << "Masukkan jam kerjanya : "; cin >> jamKerja; 9/10/2014 Algoritma Pemrograman, @SUARGA 12
  • 13. switch(golongan) { case 'A' : upah = 5000.0; break; case 'B' : upah = 6000.0; break; case 'C' : upah = 7500.0; break; case 'D' : upah = 9000.0; break; default : { cout << "Golongan-nya salah!"; upah = 0.0; } } if (jamKerja > 150) { lembur = (jamKerja - 150)*upah*1.25; gaji = 150*upah; } else { lembur = 0.0; gaji = jamKerja*upah; } 9/10/2014 Algoritma Pemrograman, @SUARGA 13
  • 14. cout.setf(ios::fixed); cout.setf(ios::showpoint); cout.precision(2) ; total = gaji + lembur; cout << "Gaji yang diterima saudara : " << nama; cout << " adalah Rp. " << total << 'n'; cin >> off; return 0; } 9/10/2014 Algoritma Pemrograman, @SUARGA 14