
DAFTAR ISI
1. Uraian Materi
Bentuk dari struktur percabangan yang menggunakan kata kunci switch ini adalah sebagai berikut :Switch (ekspresi) {
case nilai_konstan1 : Statemen_statemen; break;
case nilai_konstan2 : Statemen_statemen; break;
........
case nilai_konstanN : Statemen_statemen; break;
default
Statemen-statemen_alternatif;
}
Tipe data dari ekspresi di atas haruslah bilangan bulat atau karakter. Dalam bahasa C standar kita diizinkan untuk menuliskan 257 buah statement case dalam sebuah struktur C++ mengizinkan 16.384 buah.
2. Contoh Program
Contoh ke-1
Nilai A jika nilai diatas 80,
Nilai B jika 70<= nilai <80,
Nilai C jika 50 <= nilai <70,
Nilai D jika 30 <= nilai <50,
Nilai E jika nilai <30
Source code :
#include <iostream>
using namespace std;
main(){
int nilai;
cout<<"Masukkan nilai test : ";cin>>nilai;
switch (nilai/10)
{
case 10 :
case 9 :
case 8 :cout<<'A'<<endl;break;
case 7 :cout<<'B'<<endl;break;
case 6 :
case 5 :cout<<'C'<<endl;break;
case 4 :
case 3 :cout<<'D'<<endl;break;
case 2 :
case 1 :
case 0 :cout<<'E'<<endl;break;
default :cout<<"Salah, nilai diluar jangkauan. \n";
}
}
Running program :

Contoh ke-2 Menghitung nilai UAS, UTS dan Tugas menggunakan Case (range)
#include <iostream>
#include <stdio.h>
using namespace std;
main(){
float uts,uas,tugas;
int nilaiakhir;
string nilaihuruf;
//Meminta user memasukkan nilai uts,uas dan tugas
cout<<"Masukkan nilai UTS : ";cin>>uts;
cout<<"Masukkan nilai UAS : ";cin>>uas;
cout<<"Masukkan nilai Tugas : ";cin>>tugas;
//Menghitung nilai akhir
nilaiakhir = ((0.35*uts)+(0.45*uas)+(0.2*tugas));
//Menentukan nilai huruf
switch (nilaiakhir)
{
case 85 ... 100: nilaihuruf="A"; break;
case 70 ... 84: nilaihuruf="B";break;
case 55 ... 69: nilaihuruf="C";break;
case 40 ... 54: nilaihuruf="D";break;
case 0 ... 39: nilaihuruf="E";break;
default :cout<<"Salah, nilai diluar jangkauan. \n";
}
//menampilkan nilai angka dan nilai huruf
cout<<"==================================="<endl;
cout<<"Nilai akhir angka : "<<nilaiakhir<<endl;
cout<<"Nilai akhir huruf : "<<nilaihuruf<<endl;
}
Running program :
⇛ Kondisi saat nilai antara 86 sampai 100

⇛ Kondisi saat nilai antara 70 sampai 84

⇛ Kondisi saat nilai antara 55 sampai 69

⇛ Kondisi saat nilai antara 40 sampai 54

⇛ Kondisi saat nilai antara 0 sampai 39

⇛ Kondisi jika nilai di luar jangkauan

Contoh ke-3
#include <iostream>
using namespace std;
main(){
char kode;
cout<<"Masukkan Kode Barang [A..C] : ";cin>>kode;
switch (kode)
{
case 'A' :
cout<<"Alat Olah Raga";break;
case 'B' :
cout<<"Alat Elektronik";break;
case 'C' :
cout<<"Alat Masak";break;
default :
cout<<"Anda Salah Memasukan kode\n";
}
}
Running program :
⇛ Kondisi saat meng-input "A"

⇛ Kondisi saat meng-input "B"

⇛ Kondisi saat meng-input "C"

⇛ Kondisi saat meng-input selain "A, B dan C"

Contoh ke-4 Menentuhan Jumlah hari dalam 1 bulan
#include <iostream>
using namespace std;
main(){
int AngkaBulan,tahun,JumlahHari;
cout<<"Angka Bulan : ";cin>>AngkaBulan;
cout<<"Tahun : ";cin>>tahun;
switch (AngkaBulan)
{
case 1 :
case 3 :
case 5 :
case 7 :
case 8 :
case 10 :
case 12 : JumlahHari=31; break;
case 4 :
case 6 :
case 9 :
case 11 : JumlahHari=30; break;
case 2 : if(tahun % 4 == 0)JumlahHari = 29;
else JumlahHari = 28;break;
default :cout<<"Salah, nilai diluar jangkauan. \n";
}
cout<<"============================="<<endl;
cout<<"Jumlah hari "<<JumlahHari;cout<<endl;
cout<<"============================="<<endl;
}
Running program :

3. Tugas
- Buatlah program untuk menentukan posisi suatu titik pada koordinat cartesius berada pada kuadran ke berapa. Masukan dari program ini adalah sumbu X dan sumbu Y. Untuk menentukan berada pada kuadran berapa didasarkan pada :
Jika sumbu x positif dan sumbu Y positif maka berada pada kuadrat I jika sumbu X negatif dan sumbu Y positif maka berada pada kuadtan II jika sumbu X negatif dan sumbu Y negatif maka berada pada kuadrat III jika sumbu X positif dan sumbu Y negatif maka berada pada kuadran IV. - Buatlah program untuk mengkonversi suatu angka numerik menjadi suatu bilangan. Misalnya jika dimasukan angka 1200 maka akan ditampilkan tulisan "seribu dua ratus".
- Buatlah program kalkulator sederhana, dengan keleuaran program sebagai berikut :
4. Jawaban
Pending