Anda di halaman 1dari 11

TUGAS DASAR KOMPUTER

DAN
PEMROGRAMAN
“STRUKTUR PEMILIHAN II (ANALISA KASUS)”

Kelompok 9
Nama / Nim :
Arjun Korintian Purba / 5183230005
Reza Hermawan / 5183230006
Dosen : Amirhud Dalimunthe,S.T.,M.Kom
Nama Mata Kuliah : Dasar Komputer dan Pemrograman
Program Studi : Teknik Elektro (S-1)
Semester/TA : 1 / 2018-2019
KATA PENGANTAR

Puji syukur kehadirat Tuhan Yang Maha Esa atas segala rahmatNYA sehingga tugas ini dapat tersusun
hingga selesai

Dalam makalah yang berjudul STRUKTUR PEMILIHAN II (ANALISA KASUS).


   Dan harapan kami semoga makalah ini dapat menambah pengetahuan dan pengalaman bagi para pembaca,
Untuk ke depannya dapat memperbaiki bentuk maupun menambah isi makalah agar menjadi lebih baik lagi.

    Karena keterbatasan pengetahuan maupun pengalaman kami, Kami yakin masih banyak kekurangan
dalam makalah ini, Oleh karena itu kami sangat mengharapkan saran dan kritik yang membangun dari
pembaca demi kesempurnaan makalah ini.

PENYUSUN MAKALAH

ARJUN KORINTIAN PURBA


DAFTAR ISI

 HALAMAN

JUDUL…………………………………………………………………………….........i

KATA PENGANTAR………………………………………………………………………... ii

DAFTAR ISI………………………………………………………………………………...…..…iii

BAB 1PENDAHULUAN………………………………………………………….........1

1.1.LATAR BELAKANG…………………………………………………………........1

1.2.RUMUSAN MASALAH…………………………………………………………………………….. 1

1.3TUJUAN.......................................................................................................................2

BAB 2     PEMBAHASAN


2.1.ANALISA 3 KASUS ATAU LEBIH .................................………...... 2

2.2 PENYELESAIAN MASALAH 3 KASUS ATAU LEBIH MENGGUNAKAN BAHASA C………..


……………………………..……………..2

2.3 STRUKTUR CASE……………..…………………………………………….................2

2.4 PENYELESAIAN MASALAH DENGAN STRUKTUR CASE MENGGUNAKAN BAHASA


C………………………………4

BAB 3     PENUTUP


3.1.KESIMPULAN………………………………………………………………….. 9

3.2.KESIMPULAN.......…………………………………………………………….. 9

DAFTAR PUSTAKA…………………………………………………………………………....11
BAB I

PENDAHULUAN

I.I LATAR BELAKANG

Mengetahui lebih lanjut tentang STRUKTUR PEMILIHAN dalam Algoritma. Bagaimana


menganalisa tiga kasus atau lebih beserta penyelesaian masalah dengan menggunakan Bahasa
C.Mengenal apa itu definisi Struktur Case serta penyelesaian masalah di dalam struktur case
dengan menggunakan Bahasa C.

I.II RUMUSAN MASALAH

Sehubungan dengan adanya masalah yang timbul maka penulis merumuskan masalah sebagai berikut :

1.      Bagaimana menganalisa tiga kasus atau lebih di dalam Struktur Pemilihan Algoritma?
2.       Apa itu Struktur Case?
3. Bagaimana penyelesaian masalah kasus dalam struktur pemilihan menggunakan Bahasa C?

I.III TUJUAN

Adapun tujuan penulis melakukan penulisan ini adalah untuk mengetahui bagaimana cara menganalisa tiga
kasus atau lebih di dalam STRUKTUR PEMILIHAN ALGORITMA serta penyelesaian masalah dengan
menggunakan Bahasa C. Juga mengetahui tentang apa itu Struktur Case dan penyelesaian masalah dalam
struktur case dengan Bahasa C.

BAB II

PEMBAHASAN MATERI

2.1    Analisa 3 kasus atau lebih


Tiga Kasus atau Lebih
Masalah yang mempunyai tiga buah kasus atau lebih dapat dianalisis dengan konstruksi if – then – else
bertingkat – tingkat
                                    If kondisi1 then
                                                Pernyataan 1
                                    Else
                                    If kondisi 2 then
                                                Pernyataan 2
                                    Else
                                    If kondisi 3 then
                                                Pernyataan 3
                                                End if
                                    End if
                        End if
Contoh tiga kasus :
#include
#include
main()
{
int Nilai;
printf("Nilai : ");scanf("%i",&Nilai);
if((Nilai>=81) && (Nilai<=100)){
printf("A.");
}
else
if ((Nilai >=61) &&(Nilai<81 span="">
printf("B.");
}else{
            printf("C");
}
getch();
return 0;
}

2.2 Penyelesaian masalah 3 kasus atau lebih menggunakan bahasa C


Suatu rental VCD memberlakukan ketentuan sebagai berikut:
Bila menyewa lebih dari atau sama dengan 10 dan menjadi anggota tetap maka
mendapat diskon 0.10 tapi bila bukan member dia mendapatkan diskon 0.05.
Bila menyewa lebih dari atau sama dengan 5 dan menjadi anggota tetap maka
mendapat diskon 0.05 dan bila bukan member tidak mendapatkan diskon, selainnya
itu  maka tidak mendapatkan diskon.
Petunjuk:
Bila menjadi Anggota kode yang dimasukkan 1
Bila bukan Anggota kode yang dimasukkan 2

Algoritma untuk masalah tersebut adalah:


Masukan kode_anggota
Masukan jumlah_CD
IF jumlah_cd >= 10 THEN
      IF kode_anggota = 1 THEN
           Diskon = 0.1
      ELSE
           Diskon = 0.05
      END IF
ELSE IF jumlah_cd>=5 THEN
      IF kode_anggota = 1 THEN
           Diskon = 0.05
      ELSE
           Diskon = 0
       END IF
 ELSE
        Diskon =0

Kasus tersebut dapat dipecahkan dengan menggunakan operator logika “AND”,


algoritmanya menjadi
IF jumlah_cd >= 10 AND IF kode_anggota = 1 THEN
           Diskon = 0.1
ELSE IF jumlah_cd >= 10 AND IF kode_anggota = 2 THEN
           Diskon = 0.05
ELSE IF jumlah_cd>=5 AND  IF kode_anggota = 1 THEN
           Diskon = 0.05
ELSE
        Diskon =0

Untuk kasus di atas bila dipecahkan dalam c adalah:

#include <iostream.h>
#include <conio.h>
void main()
{
int jml_sewa, kd_anggota;
float harga,disk,bayar, tot;
harga = 3000;
disk = 0;
cout<<"Masukan Jumlah Kaset yang Disewa:";
cin>>jml_sewa;
cout<<"Masukan Kode Anggota:";
cin>>kd_anggota;
bayar = jml_sewa * harga;
if (jml_sewa >= 10)
    if (kd_anggota == 1)
     {
     cout<<"Anda diskon 10 %";
     disk = bayar * 0.1;
     }
    else
     {
     cout<<"Anda diskon 5 %";
     disk = bayar * 0.05;
     }
else if (jml_sewa >= 5)
    if (kd_anggota == 1)
     {
     cout<<"Anda diskon 5 %";
     disk = bayar * 0.05;
     }
    else
     cout<<"Anda Tidak Diskon";
else
    cout<<"Anda Tidak Diskon";
tot = bayar - disk;
cout<<"\nHarga Sewa sebelum didiskon;"<<bayar;
cout<<"\nHarga Sewa setelah didiskon;"<<tot;
}

2.3 STRUKTUR CASE


Semua bentuk pemilihan dapat ditulis dengan struktur IF, namun dalam banyak
pilihan penulisan IF kurang praktis. Maka kita dapat menggunakan bentuk pilihan
CASE. Bentuk CASE adalah cara lain penulisan yang lebih sederhana, namun
bentuk ini hanya dapat menggantikan IF apabila memenuhi syarat :
 kondisi berupa perbandingan kesamaan (dengan tanda “=”)
 nilai yang dibandingkan bertipe ordinal (integer,char, dan
boolean)
Bentuk CASE juga dikenal dengan istilah CASE statement, memiliki bentuk
umum sebagai berikut :

Ekspresi Ordinal, berupa :

 sebuah nilai ordinal : boolean, integer, dan char (bukan string atau
real)
 sebuah variabel bertipe ordinal
 operasi data (nilai atau variabel) yang menghasilkan sebuah nilai
ordinal.
Nilai harus berupa ordinal (tidak bileh variabel)

Aksi berupa satu statement atau beberapa statement dimana setiap statement
dapat berupa statement pengisian nilai, seperti a<–5.

[otherwise : Aksi-x] tanda [ ] menyatakan opsional (boleh ada/tidak), dimana


kalau tidak ada berarti setelah Aksi-2 program selesai.

Variasi bentuk CASE :

 CASE tanpa otherwise


 CASE dengan otherwise
 CASE dengan Aksi yang sama untuk beberapa nilai
 CASE bersarang dimana di dalam CASE ada CASE lagi, atau
statement lain.
Contoh Variasi CASE :

 CASE tanpa otherwise

 CASE dengan otherwise


 CASE dengan Aksi yang sama untuk beberapa nilai

 CASE bersarang dimana di dalam CASE ada CASE lagi, atau


statement lain.

2.4 . PENYELESAIAN MASALAH DENGAN STRUKTUR CASE MENGGUNAKAN BAHASA C


Berikut ini diberikan pedoman konversi dari algoritma ke dalam bahasa C
untuk struktur IF dan CASE:

Algoritma Bahasa C
If kondisi if (kondisi) {
then Aksi;
Aksi }
End if
If kondisi If (kondisi) {
then Aksi1;
Aksi1 }
Else else {
Aksi2 Aksi2;
}
If kondisi1 if (kondisi1) {
then Aksi1;
Aksi1 }
Else if else if (kondisi2)
kondisi2 {
Aksi2 Aksi2;
Else }
Aksi3 else {
End if Aksi3;
}

Case switch (ekspresi)


ekspresi {
Nilai1: Aksi1 case Nilai1:
Nilai2: Aksi2 Aksi1;
Nilai3: Aksi3 Break;
End case case Nilai2:
Aksi2;
Break;
case Nilai3:
Aksi3;
}
Case switch (ekspresi)
ekspresi {
Nilai1: Aksi1 case Nilai1:
Nilai2: Aksi2 Aksi1;
Nilai3: Aksi3 Break;
Otherwise: case Nilai2:
Aksi4 Aksi2;
End case Break;
case Nilai3:
Aksi3;
Break;
default: Aksi4;
}
Case switch (ekspresi)
ekspresi {
Nilai-1,Nilai- case Nilai1:
2,Nilai-3: case Nilai2:
Aksi1 case Nilai3:
Nilai-4,Nilai- Aksi1;
5: Aksi2 Break;
Nilai-6..Nilai- case Nilai4:
8: Aksi3 case Nilai5:
Otherwise: Aksi2;
Aksi4 Break;
End Case case Nilai6:
case Nilai7:
case Nilai8:
Aksi3;
Break;
default: Aksi4;
}

Catatan:
  - penulisan kondisi pada IF dan ekspresi pada CASE dalam bahasa C harus
    digunakan tanda kurung ( ).
  - aksi berupa satu perintah atau lebih, masing-masing diakhiri titik koma.
  - apabila aksi hanya berupa satu perintah, penggunaan { } dapat dihilangkan.
  - kata “if”, “else”, “switch”, “case” dan “default” dalam bahasa C, harus
    ditulis dengan huruf kecil semua.
  - dalam bahasa C tidak ada kata “then”, “end if” dan “end case” tetapi
    digantikan pasangan kurung kurawal { dan }
  - hati-hati dengan penggunaan kesamaan, yaitu dengan “==” bukan “=”.
  - string digunakan kutip dua ( seperti “test” ) bukan kutip satu (‘test’).

Algoritma Bahasa C
Algoritma PDAM #include <stdio.h>
/* menghitung biaya pemakaian #include <conio.h>
air*/
Kamus Data /* menghitung biaya pemakaian
pakai,a,b,c,d : integer air*/
biaya : integer int main() {
Begin //Kamus Data
|Input(pakai) int pakai,a,b,c,d;
|a⟵ 10 int biaya;
|b⟵  0 //Begin
|c⟵  0 printf(“Masukkan pemakaian air: ”);
|d⟵  0 scanf(“%d”,&pakai);
|If (pakai>30) then a=10;
| |b⟵ 10 b=0;
| |c⟵  10 c=0;
| |d⟵  pakai - 30 d=0;
|Else If (pakai>20) then if (pakai>30) {
| |b⟵  10 b=10;
| |c⟵  pakai - 20 c=10;
|Else If (pakai>10) then d=pakai – 30;
| |b⟵  pakai - 10 }
|End if else if (pakai>20) {
|biaya⟵ a * 2000 + b * 3000 + b=10;
| c * 4000 + d * 5000 + c=pakai – 20;
| 5000 }
|Output(‘biaya =’,biaya) else if (pakai>10) {
End b=pakai – 10;
}
biaya = a * 2000 + b * 3000 +
c * 4000 + d * 5000 +
10000;
printf(“biaya = %d”,biaya);
getche();
return 0;
//End
}

BAB III

PENUTUP

Tentu saja masalah menentukan bilangan terbesar untuk empat bilangan atau lebih mempunyai struktur
pemilihan bersarang yang makin rumit.

Kelebihan struktur pemilihan terletak pada kemampuannya yang memungkinkan pemroses mengikuti jalur
aksi yang berbeda berdasarkan kondisi yang ada. Tanpa struktur pemilihan, kita tidak mungkin menulis
algoritma untuk permaslahan praktis yang demikian kompleks.

Kita dapat menggunakan struktur kontrol pilihan dalam pseudocode untuk


menggambarkan sebuah pilihan diantara dua atau lebih tindakan, tergantung
kepada sebuah kondisi adalah benar atau salah. Kondisi ini berdasarkan pada
sebuah perbandingan 2 hal, dan biasanya diekspresikan dengan salah
satu operator hubungan/relational
DAFTAR PUSTAKA
https://lintasmateri.blogspot.com/2016/04/struktur-dasar-pemilihan-selection.html

http://algoritmapemrograman55.blogspot.com/

http://dedyindrasetiawan.blogspot.com/2016/11/ringkasan-tentang-struktur-pemilihan-if.html

https://bayubayyz.blogspot.com/2013/10/struktur-pemilihan-selection.html

https://medium.com/codelabs-unikom/algoritma-pemilihan-selection-apa-itu-697b25ac26a5

http://ipank05018240.blogspot.com/2011/03/struktur-pemilihan.html

Anda mungkin juga menyukai