Flow Control ( IF Dan Switch)
Flow control (struktur kendali) dapat dibagi menjadi dua jenis yaitu , Struktur percabangan dan pengulangan (looping). Namun kali ini akan membahas struktur percabangan.
Percabangan adalah
perintah yang memungkinkan pemilihan atas perintah yang akan dijalankan sesuai dengan kondisi tertentu yang menentukan alur perjalanan program. Percabangan bertujuan untuk memilih atau mengkondisikan apakah statement tersebut akan dijalankan atau tidak. Percabangan seperti operasi logika, jika diberi sebuah pernyataan, dan pernyataan tersebut benar, maka program akan menjalankan statement-statement yang telah ditentukan.
Ada tiga macam perintah percabangan, yaitu if, if … else, dan switch.
1. IF
If digunakan untuk satu kondisi saja. Jika pernyataan benar (terpenuhi) maka akan dijalankan, jika salah (tidak terpenuhi) maka diabaikan.
2. IF … ELSE
Perintah ini digunakan untuk lebih dari satu kondisi. Seperti biasa, perintah1 dan perintah2 bisa berbentuk blok yang terdiri dari beberapa perintah. Pernyataan if merupakan bentuk percabangan 2 arah, jika kondisi yang diuji tersebut terpenuhi, maka program akan menjalankan pernyataan-pernyataan tertentu. Jika kondisi yang diuji salah, program akan menjalankan pernyataan yang lain.
3. SWITCH
Perintah ini digunakan sebagai alternatif pengganti dari sintaks if … else dengan else lebih dari satu. Switch, kondisi hanya dinyatakan dengan bilangan bulat atau karakter/string. Dengan perintah ini program percabangan akan semakin mudah dibuat dan dipelajari. Perintah switch akan menyeleksi kondisi yang diberikan dan kemudian membandingkan hasilnya dengan konstanta-konstanta yang berada di case. Pembandingan akan dimulai dari konstanta 1 sampai konstanta terakhir. Jika hasil dari kondisi terpenuhi dengan nilai konstanta tertentu, misalnya konstanta 1 , maka pernyataan 1 akan dijalankan sampai ditemukan break. Pernyataan break akan membawa proses keluar dari perintah switch, agar eksekusi dilakukan pada kondisi yang terpenuhi saja, jika telah terpenuhi maka dihentikan. Jika hasil dari kondisi tidak terpenuhi dengan konstanta-konstanta yang diberikan, maka pernyataan pada default akan dijalankan.
“ IF Vs SWITCH “
- Apa perbedaan if dengan switch ?
Jawab :
Perbedaan if-else dan switch case :
- Switch, kondisi hanya dinyatakan dengan bilangan bulat atau karakter/string sedangkan if-else yang dapat menggunakan operasi seperti <, >, <= dan >=.
- Tidak ada konstanta yang sama dalam sebuah switch.
- Angka yang digunakan harus berkisar diantara 0 – 255.
- Harus menggunakan break, Gunanya untuk mengakhiri statement.
- Ada default, ini bisa dibilang sebagai ‘Else’nya Switch Case.
- Kapan Menggunakan If ? Kapan Menggunakan Switch ?
Jawab :
IF digunakan apabila seleksi memiliki lebih dari 1 kondisi dan nilai.
SWITCH digunakan apabila hanya ada 1 kondisi dengan nilai yang bervariasi.
Dalam bahasa pemrograman C++, if
dan switch
adalah dua jenis pernyataan pengendalian alur program yang berbeda, meskipun keduanya digunakan untuk mengambil keputusan berdasarkan kondisi tertentu. Berikut ini adalah perbedaan antara if
dan switch
dalam C++:
Penggunaan kondisi:
if
digunakan untuk menguji ekspresi boolean tunggal atau kondisi yang menghasilkan nilaitrue
ataufalse
. Kondisi ini bisa lebih kompleks dengan menggunakan operator logika dan perbandingan. Di sisi lain,switch
digunakan untuk memeriksa nilai dari ekspresi tunggal yang hanya mengizinkan nilai konstan atau literal, seperti bilangan bulat atau karakter.Eksekusi: Dalam
if
, setiap pernyataan kondisional diperiksa satu per satu dan hanya pernyataan yang terkait dengan kondisi yang bernilaitrue
yang akan dieksekusi.switch
memilih pernyataan yang sesuai dengan nilai ekspresi, dan eksekusi dimulai dari pernyataan yang sesuai tersebut hingga akhir blokswitch
. Jika tidak ada nilai yang sesuai, maka blok default akan dieksekusi (jika ada).Kondisi:
if
dapat mengevaluasi kondisi yang kompleks dan bersarang, memungkinkan pengujian yang lebih fleksibel dengan menggunakan operator logika seperti&&
(dan) dan||
(atau).switch
hanya memeriksa kesesuaian nilai ekspresi dengan kasus-kasus yang sudah ditentukan.Kasus: Dalam
if
, Anda dapat menggunakan berbagai kondisi dan pernyataan untuk menguji berbagai kemungkinan. Dalamswitch
, Anda menentukan beberapa kasus yang mungkin sesuai dengan nilai ekspresi yang diberikan.Performa: Dalam beberapa kasus,
switch
dapat lebih efisien daripadaif
jika terdapat banyak kondisi yang mungkin. Hal ini disebabkan oleh mekanisme jump table yang digunakan olehswitch
, yang dapat menghindari perbandingan yang berlebihan dalam beberapa situasi.
Meskipun ada perbedaan ini, pada dasarnya baik if
maupun switch
digunakan untuk pengambilan keputusan di C++. Pilihan antara keduanya tergantung pada kompleksitas logika yang ingin Anda terapkan dan jenis kondisi yang ingin Anda uji.
Berikut contoh Program If dan Switch Dalam :
A. BAHASA C#
using System;
namespace Ifswitch
{
public class biodata
{
public int pilih;
public void tampilkan()
{
switch (pilih)
{
case 1:
Console.WriteLine(“Ini Satu”); break;
case 2:
Console.WriteLine(“Ini Dua”); break;
default:
Console.WriteLine(“Selain Satu atau Dua”); break;
}
}
public void tampilkan_if ()
{
if (pilih == 1)
Console.WriteLine(“Ini Satu”);
else if (pilih == 2)
Console.WriteLine(“Ini Dua”);
else
Console.WriteLine(“Selain Satu atau Dua”);
}
}
}
//Pemanggilan Pada Program Utama
using System;
namespace Ifswitch
{
class Program
{
public static void Main(string[] args)
{
biodata b = new biodata();
b.pilih = 1;
b.tampilkan();
b.tampilkan_if();
Console.ReadKey(true);
}
}
}
B. BAHASA C++
#include <iostream>
using namespace std;
class kondisi_switch
{
public:
int pilih;
void tampilkan()
{
switch (pilih)
{
case 1:
cout << “Ini Satu” << endl; break;
case 2:
cout << “Ini Dua” << endl; break;
default:
cout << “Selain Satu atau Dua” << endl; break;
}
}
void tampilkan_if ()
{
if (pilih == 1)
cout << “Ini Satu” << endl;
else if (pilih == 2)
cout << “Ini Dua” << endl;
else
cout << “Selain Satu atau Dua” << endl;
}
};
//Pemanggilan Pada Program Utama
int main()
{
kondisi_switch k;
k.pilih = 1;
k.tampilkan();
k.tampilkan_if();
cin.get();
return 0;
}
C. BAHASA JAVA
package dua.satu;
import java.util.Scanner;
public class biodata
{
public int pilih;
public void tampilkan()
{
switch (pilih)
{
case 1:
System.out.println(“Ini Satu”); break;
case 2:
System.out.println(“Ini Dua”); break;
default:
System.out.println(“Selain Satu atau Dua”); break;
}
}
public void tampilkan_if ()
{
if (pilih == 1)
{
System.out.println(“Ini Satu”);
}
else if (pilih == 2)
{
System.out.println(“Ini Dua”);
}
else
{
System.out.println(“Selain Satu atau Dua”);
}
}
}
//Pemanggilan Pada Program Utama
package dua.satu;
public class DuaSatu
{
public static void main(String[] args)
{
biodata b = new biodata();
b.pilih = 1;
b.tampilkan();
b.tampilkan_if();
}
}
0 Response to "PERBEDAAN IF DAN SWITCH - PEMROGRAMAN TERSTRUKTUR"
Posting Komentar