Minggu, 27 November 2016

Operasi Penyeleksian Kondisi

Tags

Merupakan suatu struktur dasar algoritma yang memiliki satu atau lebih kondisi tertentu dimana sebuah instruksi dilaksanakan jika sebuah kondisi/persyaratan terpenuhi.

Beberapa bentuk struktur dasar pemilihan:

1.Pernyataan IF

2.Pernyataan SWITCH

Pernyataan IF

Jika kondisi bernilai benar, maka perintah akan dikerjakan dan jika tidak memenuhi syarat maka akan diabaikan.

Diagram alir:


Penulisan kondisi harus di dalam tanda kurung dan berupa ekspresi relasi dan penulisan pernyataan dapat berupa pernyataan tunggal, pernyataan majemuk, atau pernyataan kosong.






Contoh Program 1 :

#include <iostream>
using namespace std;
int main ()
{
    int usia;
    cout << "Berapa usia Anda? : ";
    cin >> usia;
    if (usia < 17)
    {
        cout << endl;
        cout << "Anda tidak boleh menonton bioskop";
    }
    return 0;
}

Contoh Program 2 :


#include <iostream>
using namespace std;
int main ()
{
    float total_beli, diskon, jum_bayar;
    diskon = 0;
    cout << "Total Pembelian Rp. = ";
    cin >> total_beli;
    if (total_beli > 50000)
        diskon = 0.25 * total_beli;
    cout << "Besarnya Diskon Rp. = " << diskon << endl;
    jum_bayar = total_beli - diskon;
    cout << "-------------------------------------------------------" << endl;
    cout << "Jumlah yang harus dibayarkan Rp. " << jum_bayar;
    cout << endl;
    return 0;
}

Pernyataan IF-ELSE

Jika kondisi bernilai benar, maka perintah-1 akan dikerjakan dan jika tidak memenuhi syarat maka akan mengerjakan perintah-2.





Contoh Program 1 :

#include <iostream>
using namespace std;
int main ()
{
    int usia;
    cout << "Berapa usia Anda? : ";
    cin >> usia;
    if (usia < 17)
    {
        cout << endl;
        cout << "Anda tidak boleh menonton bioskop";
    }
    else
    {
        cout << "Anda boleh nonton bioskop, belikan teman 1 tiket";
        cout << endl;
    }
    return 0;
}

Contoh Program 2 : 

#include <iostream>
using namespace std;
int main ()
{
    float total_beli, diskon, jum_bayar;
    diskon = 0;
    cout << "Total Pembelian Rp. = ";
    cin >> total_beli;
    if (total_beli > 50000)
    {
        diskon = 0.25 * total_beli;
    }
    else
    {
        diskon = 0.05 * total_beli;
    }
    cout << "Besarnya Diskon Rp. = " << diskon << endl;
    jum_bayar = total_beli - diskon;
    cout << "-------------------------------------------------------" << endl;
    cout << "Jumlah yang harus dibayarkan Rp. " << jum_bayar;
    cout << endl;
    return 0;
}

Pernyataan NESTED IF

Nested If merupakan pernyataan If berada di dalam pernyataan If yang lainnya.

Bentuk penulisannya:

Contoh program:
#include <iostream>
using namespace std;
int main ()
{
    float pendapatan, jasa, komisi, total;
    cout << "Pendapatan hari ini = ";
    cin >> pendapatan;
    if (pendapatan >= 0 && pendapatan <= 20000)
    {
        jasa=10000;
        komisi=0.1*pendapatan;
    }
    else
    {
        if (pendapatan <= 50000)
        {
            jasa=20000;
            komisi=0.15*pendapatan;
        }
        else
        {
            jasa=30000;
            komisi=0.2*pendapatan;
        }
    }
    total=jasa+komisi;
    cout <<"================================="<<endl;
    cout <<"Uang Jasa       Rp. " << jasa << endl;
    cout <<"Uang Komisi     Rp. " << komisi << endl;
    cout <<"================================="<<endl;
    cout <<"TOTAL           Rp. " << total << endl;
    return 0;
}

Pernyataan IF – ELSE Majemuk

Bentuk dari If-Else bertingkat sebenarnya serupa dengan nested if. Keuntungan penggunaan If-Else bertingkat dibanding dengan nested if adalah penggunaan bentuk penulisan yang lebih sederhana.

Bentuk penulisannya:

Contoh program :

#include <iostream>
using namespace std;
int main ()
{
    float pendapatan, jasa, komisi, total;
    cout << "Pendapatan hari ini = ";
    cin >> pendapatan;
    if (pendapatan >= 0 && pendapatan <= 20000)
    {
        jasa=10000;
        komisi=0.1*pendapatan;
    }
    else if (pendapatan <= 50000)
    {
        jasa=20000;
        komisi=0.15*pendapatan;
    }
    else
    {
        jasa=30000;
        komisi=0.2*pendapatan;
    }
    }
    total=jasa+komisi;
    cout <<"================================="<<endl;
    cout <<"Uang Jasa       Rp. " << jasa << endl;
    cout <<"Uang Komisi     Rp. " << komisi << endl;
    cout <<"================================="<<endl;
    cout <<"TOTAL           Rp. " << total << endl;
    return 0;
}

Pernyataan Switch-Case

Bentuk dari switch-case merupakan pernyataan yang dirancang khusus untuk menangani pengambilan keputusan yang melibatkan sejumlah atau banyak alternatif. Switch-Case memiliki kegunaan sama seperti if-else bertingkat, tetapi penggunaannya untuk memeriksa data yang bertipe karakter atau integer.

Bentuk penulisan perintahnya sebagai berikut:



#include <iostream>
using namespace std;
int main ()
{
    cout << "Mata Kuliah" << endl;
    bool repeat = true;
    while (repeat)
    {
        char kode;
        cout << "Pilih Mata Kuliah Anda! [A/B/C/a/b/c/1/2/3]" << endl;
        cout << "Pilih = ";
        cin >> kode;
        switch (kode)
        {
            case 'A': case 'a': case '1':
                cout << "Algoritma dan Pemrograman" << endl;
                break;
            case 'B': case 'b': case '2':
                cout << "Konsep Teknologi Informatika" << endl;
                break;
            case 'C': case 'c': case '3':
                cout << "Bahasa Inggris" << endl;
                break;
                default:
                cout << "Maaf anda salah memasukkan kode!" << endl;
        }
         cout << "Ingin mengulang [y/n]" << endl;
         char ulangi;
         cin >> ulangi;
         repeat = ulangi == 'y' || ulangi == 'y';
    }
    cout << "Terima Kasih!" << endl;
    return 0;
}
Contoh Program Switch Case Kalkulator Bangun Datar
#include <iostream> //preprocessor atau header//
#include <windows.h>
using namespace std;
int main()
{
    bool ulang = true;
    while (ulang)
    {
        int kode, panjang, lebar, sisi, sisi1, sisi2, sisi3, alas, tinggi, keliling, luas;
        float luas_ling, keliling_ling, jari_jari;
        cout << "=========================================" << endl;
        cout << "SELAMAT DATANG DI KALKULATOR BANGUN DATAR" << endl;
        cout << "=========================================" << endl;
        cout << "Kode kalkulator" << endl;
        cout << "Persegi [1]" << endl;
        cout << "Persegi Panjang [2]" << endl;
        cout << "Segitiga [3]" << endl;
        cout << "Lingkaran [4]" << endl;
        cout << "Silahkan masukkan kode bangun datar = " ;
        cin >> kode;
        switch (kode)
        {
            case 1:
                cout << "Kalkulator Persegi" << endl;
                cout << "Masukkan sisi = " ;
                cin >> sisi;
                luas = sisi*sisi;
                keliling = sisi*4;
                cout << "Luas = " << luas << endl;
                cout << "Keliling = " << keliling << endl;
                break;
            case 2:
                cout << "Kalkulator Persegi Panjang" << endl;
                cout << "Masukkan Panjang = " ;
                cin >> panjang;
                cout << "Masukkan Lebar = " ;
                cin >> lebar;
                luas = panjang * lebar;
                keliling = 2 * (panjang + lebar);
                cout << "Luas = " << luas << endl;
                cout << "Luas = " << keliling << endl;
                break;
            case 3:
                cout << "Kalkulator Segitiga" << endl;
                cout << "Masukkan Sisi 1 = " ;
                cin >> sisi1;
                cout << "Masukkan Sisi 2 = " ;
                cin >> sisi2;
                cout << "Masukkan Sisi 3 = " ;
                cin >> sisi3;
                cout << "Masukkan Alas = " ;
                cin >> alas;
                cout << "Masukkan Tinggi = " ;
                cin >> tinggi;
                luas = 0.5 * alas * tinggi;
                keliling = sisi1 + sisi2 + sisi3;
                cout << "Luas = " << luas << endl;
                cout << "Keliling = " << keliling << endl;
                break;
            case 4:
                cout << "Kalkulator Lingkaran" << endl;
                cout << "Masukkan Jari-jari = " ;
                cin >> jari_jari;
                luas_ling = 3.14 * (jari_jari * jari_jari);
                keliling_ling = 2 * 3.14 * jari_jari;
                cout << "Luas = " << luas_ling << endl;
                cout << "Keliling = " << keliling_ling << endl;
                break;
            default:
                cout << "Maaf kode yang Anda masukkan salah" << endl;
        }
        cout << "Ingin Mengulang Program ? [y/n] = " ;
        char ulg;
        cin >> ulg;
        ulang = ulg == 'y' || ulg == 'y';
        system ("cls");
    }
    system ("cls");
    cout << "Terima kasih sudah menggunakan program saya" << endl;
    return 0;
}


Demikian penjelasan tentang Operasi Penyeleksian Kondisi. Semoga dapat bermanfaat untuk kita semua. Untuk lebih jelasnya silahkan download file power pointnya disini


EmoticonEmoticon