Anda di halaman 1dari 14

STRUKTUR PEMILIHAN DALAM ALGORITMA II

Mata Kuliah: Algoritma & Pemrograman


Disusun Oleh Kelompok 3
Verina Lutfiyah Dalimunthe ( 5213351031 )
Muhammad Fachrur Roji ( 5213351012 )
Dasminar Hutasoid (5213351036 )

Dosen Pengampu : Amirhud Dalimunthe,S.T., M.Kom

TEKNOLOGI INFORMATIKA DAN KOMPUTER


FAKULTAS TEKNIK
UNIVERSITAS NEGERI MEDAN
2021
KATA PENGANTAR

Puji syukur kehadirat Tuhan Yang Maha Kuasa atas segala limpahan Rahmat dan
karunia-Nya sehinggga kami dapat menyelesaikan penyusunan makalah ini untuk memenuhi
tugas rutin pada mata kuliah Pemrograman Komputer dengan judul “Struktur Pemilihan II
(Analisa Kasus)” dalam bentuk maupun isinya yang sangat sederhana. Semoga makalah ini
dapat dipergunakan sebagai salah satu acuan, petunjuk maupun pedoman bagi pembaca.
Harapan kami semoga makalah ini membantu menambah ilmu pengetahuan dan
pengalaman bagi para pembacanya, sehingga kami dapat memperbaiki bentuk maupun isi
makalah ini sehingga kedepanmya dapat menjadi lebih baik lagi.
Makalah ini kami akui masih banyak kekurangan karena pengalaman yang kami miliki
masih sangat kurang. Oleh karena itu kami harapkan kepada para pembaca untuk
memberikan masukan-masukan yang bersifat membangun untuk kesempurnaan makalah ini.

Medan, Oktober 2021

Kelompok 9

i
DAFTAR ISI

KATA PENGANTAR................................................................................................................i
DAFTAR ISI..............................................................................................................................ii
BAB I PENDAHULUAN..........................................................................................................1
1.1 Latar Belakang.............................................................................................................1
1.2 Rumusan Masalah.......................................................................................................1
1.3 Tujuan Penulisan.........................................................................................................1
BAB II PEMBAHASAN...........................................................................................................2
2.1 Analisa Tiga Kasus atau Lebih....................................................................................2
2.2 Penyelesaian Masalah dengan Tiga Kasus/Lebih Menggunakan Bahasa C...............4
2.3 Struktur Case...............................................................................................................4
2.4 Penyelesaian Masalah dengan Struktur Case Menggunakan Bahasa C......................5
BAB III PENUTUP..................................................................................................................10
3.1 Kesimpulan................................................................................................................10
3.2 Saran..........................................................................................................................10
DAFTAR PUSTAKA..............................................................................................................11
BAB I
PENDAHULUAN

1.1 Latar Belakang

Analisis kasus adalah konstruktor terpenting dalam algoritma pemrograman sehingga


membuat teks algoritma yang sama dapat menghasilkan eksekusi yang berbeda-beda. Setiap
statement dalam pascal normalnya dijalankan secara sekuensial ( beruntun ), dari atas
kebawah seperti yang tertulis pada source code programnya. Analisis kasus dapat merubah
urutan eksekusi.
Jika kita mendefinisikan analisis kasus berarti juga mendefinisikan :
 Kondisi : yang berupa suatu ekpresi Boolean yang menghasilkan true atau false.
 Aksi : yang akan dilaksanakan jika kondisi yang dipasangkan dengan aksi yang
bersangkutan dipenuhi.
Suatu aksi hanya akan dilaksanakan jika kondisi yang dipasangkan dengan aksi yang
bersangkutan terpenuhi (bernilai true). Penentuan kondisi Boolean dan aksi yang dilakukan
bergantung pada jumlah kasus yang terdapat pada masalah tersebut.
Ungkapan kondisi dapat dihasilkan dengan operator perbandingan dan operator logika.
ungkapan kondisi dapat dibentuk dengan mengkombinasikan operand yang bertipe sama
dengan salah satu operator.

1.2 Rumusan Masalah

1. Apa yang dimaksud dengan analisa tiga kasus atau lebih


2. Bagaimana menyelesaian masalah dengan tiga kasus atau lebih menggunakan bahasa
c?
3. Apa yang dimaksud dengan struktur case?
4. Bagaimana menyelesaian masalah dengan struktur case menggunakan bahasa c?

1.3 Tujuan Penulisan

1. Mampu memahami struktur pemilihan analisa tiga kasus.


2. Mampu menyelesaian masalah dengan tiga kasus atau lebih menggunakan bahasa c.
3. Mampu memahami sturktur case.
4. Mampu menyelesaian masalah dengan struktur case menggunakan bahasa c.

1
BAB II
PEMBAHASA
N

2.1 Analisa Tiga Kasus atau Lebih

Pemrograman dapat mengatur tindakan yang akan dilakukan kalau kondisi bernilai benar
ataupun tindakan yang akan dijalankan kalau kondisi salah dengan IF...THEN...ELSE
Bentuk umum IF...THEN...ELSE dibagi menjadi 2 kelompok :
1. IF...THEN...ELSE Satu baris
2. IF...THEN...ELSE Banyak baris

IF...THEN...ELSE Satu Baris


Di dalam program jika menjumpai dua kemungkinan atau pilihan pencabangan, dapat
menggunakan IF...THEN...ELSE satu baris.
Bentuk Umum :
IF kondisi THEN { statement1 │ nobar1 │ GOTO label1 }
[ ELSE { statement2 │ nobar2 │ GOTO label2 } ]

dengan parameter-parameternya :
Kondisi : syarat yang akan ditest
statement1,dan statement 2: statement yang akan dikerjakan
nobar1, nobar2 : nomor baris yang dituju
label1, label2 : label baris yang dituju
Bentuk umum diatas bisa dijelaskan sebagai berikut :
 Jika kondisi bernilai benar, maka salah satu dari tiga pilihan dibelakang statement
THEN akan dikerjakan.
 Jika kondisi salah, maka salah satu dari tiga pilihan dibelakang statement ELSE akan
dikejakan.
 Jika statement ELSE tidak ditulis maka proses eksekusi langsung akan melompat ke
baris dibawah statement IF.

IF...THEN...ELSE Banyak baris


Di dalam program jika kita menjumpai lebih dari dua kemungkinan atau lebih pilihan
pencabangan, kita bisa menggunakan IF...THEN...ELSE banyak baris.
4 aturan penggunaan blok IF...THEN...ELSE yaitu :
1. Di belakang statement THEN tidak boleh ada statement apapun selain baris
komentar. Jika anda menuliskan sesuatu statement, kompiler akan menganggapnya
sebagai statement IF...THEN...ELSE satu baris.
2. Kata ELSE, ELSEIF dan END IF hanya boleh diawali dengan nomor baris atau label
baris. Jika tidak, maka kata ini harus merupakan kata awal dari baris tersebut.
3. Blok IF harus terletak sebagai statement pertama dalam suatu baris.
4. Blok harus diakhiri dengan END IF.
Bentuk Umum :
IF kondisi1 THEN
Statement1
[ ELSEIF kondisi2 THEN
[ statement2 ] ]
.
.
[ ELSE
[ statementn ] ]
END IF
dengan parameter-parameternya :
kondisi1, kondisi2, … : syarat yang harus ditest
statement1, statement2, … : blok statement yang akan dikerjakan sesuai dengan kondisi
yang dipenuhi.
2.2 Penyelesaian Masalah dengan Tiga Kasus/Lebih Menggunakan Bahasa C

2.3 Struktur Case


Struktur case-of dapat menyederhanakan penulisan if-else yang bertingkat-tingkat pada
permasalahan dengan dua kasus atau lebih. Perbedaan dengan struktur If adalah bila
pernyataan If menyeleksi suatu kondisi yang terpenuhi, setelah memproses pernyataan dalam
lingkungan yang terpenuhi tersebut, proses penyeleksian masih dilakukan terhadap
pernyataan If berikutnya yang lain. Sedang pada struktur Case—Of bila salah satu kondisi
terpenuhi dan pernyataan tersebut telah diproses, selanjutnya pernyataan-pernyataan yang
lainnya dalam lingkungan Case tidak akan diseleksi lagi.
Bentuk dari struktor Case—Of adalah:
SELECT CASE ungkapan
CASE nilai1
[ statement1 ]
[ CASE nilai2
[ statement2 ] ]
.
.
[ CASE ELSE
[ statementn ] ]
END SELECT

dengan parameter-parameternya :
ungkapan : sembarang ungkapan (numeris atau untai)
nilai1, nilai2, … : nilai-nilai dari parameter ungkapan
statement1, statement2, …: statement-statement yang akan dikerjakan.

Daftar case label (label permasalahan) dapat berupa konstanta, atau range (himpunan) dari
konstanta yang bukan bertipe real.

Bagan alir statement SELECT CASE

2.4 Penyelesaian Masalah dengan Struktur Case Menggunakan Bahasa C


program determinan;
uses crt;
var
a,b,c,d : real;
hasil_determinan : string;
begin
clrscr;
writeln(‘Ini adalah program mencari determinan’);
write('a : '); readln(a); write('b : '); readln(b);
write('c : '); readln(c); D := b*b -4.0*a*c;
if (D<0) then
hasil_determinan := 'negatif'
else if (D=0) then
hasil_determinan := 'nol'
else hasil_determinan := 'positif' ;
writeln; writeln;
write('Determinannya bernilai ', hasil_determinan);
readln;
end.
Analisa:
Logika program : program akan terlebih dahulu menampilkan kata “Ini adalah program
mencari determinan”. Kemudian user diminta menginput a, b dan c. Kemudian determinan
dicari dengan rumus D = b2 – 4ac. Jika determinan < 0, hasil_determinan akan menjadi
“negatif”, jika determinan = 0, hasil_determinan akan menjadi “nol” dan jika determinan > 0,
hasil_determinan akan menjadi “positif”. Program akan mengeluarkan output
“Determinannya bernilai = hasil_determinan”.
Proses pemilihan ada pada penentuan hasil_determinan. Program terlebih dahulu akan
mengecek kondisi yang disyaratkan pada if (D<0) then jika terpenuhi maka akan dieksekusi
kode hasil_determinan := ‘negatif’ dan pada contoh diatas kondisi tidak terpenuhi, maka
program akan mengeksekusi blok else. Pada blok else pun program akan kembali
menemukan percabangan dimana program akan mengecek kondisi else if (D=0) then jika
terpenuhi akan mengeksekusi blok hasil_determinan := ‘nol’ dan jika tidak, akan
mengeksekusi blok else. Pada contoh diatas pengecekan kondisi else if (D=0) then terpenuhi.
Program indeks_nilai_ujian;
uses crt;
var
nama, nim :string;
nilai:real;
indeks:char;
begin

clrscr;
write('masukan nama:');readln(nama);
write('nim:');readln(nim);
write('nilai:');readln(nilai);
writeln;
if nilai>=80 then
indeks:='A'
else
if(nilai>=70) and (nilai=55) and (nilai=40) and (nilai<55) then
indeks:='D'
else
indeks:='E';
writeln ('Mahasiswa bernama ',nama,' dengan nim ',nim,' memperoleh
',indeks);
nilai readln;
end.

program luas ;
uses crt;
var p,pj,lb,s : integer; l : real ;
begin
clrscr;
writeln('******MENU*****');
writeln('1.luas bujursangakar');
writeln('2.luas persegi panjang');
writeln('3.luas lingkaran ');
writeln;
write('masukan pilihan :');
readln(p);
writeln;
case p of
1:
begin
writeln('#anda memilih menu luas bujur sangkar #');
write('input sisi bujursangkar : ');
readln(s);
l :=s*s;
writeln;
writeln('luas bujur sangkar = ',l:0:2);
end;
2:
begin
writeln ('#anda memilih menu luas persegi panjang#');
write('input panjang persegi panjang :');
readln(pj);
write('input luas persegi panjang :');
readln(lb);
l :=pj*lb;
writeln;
writeln('luas persegi panjang = ',l:0:2);
end;
3:
begin
writeln('#anda memilih menu lingkaran#');
write('input jari jari lingkaran :');
readln(l);
l :=3.14*l*l;
writeln;
writeln('luas lingkaran = ',l:0:2);
end;
else
writeln ('tidak ada pilihan');
end;
readln;
end.

Program indeks_nilai_ujian;
uses crt;
var nama, nim :string; nilai:integer; indeks:char;
begin
clrscr;
write('masukan nama : ');
readln(nama);
write('nim : ');
readln(nim);
write('nilai : ');
readln(nilai);
writeln;
case nilai of
80..100: indeks := 'A'; 70..79 : indeks := 'B';
55..69 : indeks := 'C'; 40..54 : indeks := 'D';
0..39 : indeks := 'E';
else
writeln('Nilai yang anda masukkan tidaklah benar');
end;
writeln;
writeln ('Mahasiswa bernama ',nama,' dengan nim ',nim,' memperoleh
',indeks);
nilai readln;
end.
BAB III
PENUTUP

3.1 Kesimpulan

Kegunaan struktur pemilihan yaitu:


1. Membuat struktur menu
2. Memvalidasi inputan
3. Mencegah error

Perbedaan SELECT CASE dan IF…THEN…ELSE :


• SELECT CASE kondisi yang ditest hanya sebuah, jika memenuhi proses eksekusi akan
diteruskan ke bagian tertentu dari suatu program berdasarkan nilai kondisi yang ditest. Jika
tidak akan berlanjut ke kondisi berikutnya.
• IF…THEN…ELSE banyak baris dapat mentest lebih dari sebuah kondisi yang satu
sama lain saling berbeda.

3.2 Saran

Dari pembahasan makalah tentang sistem transmisi ini kami sadar bahwa makalah ini
masih jauh dari kesempurnaan. Oleh karena itu segala kritik dan saran yang bersifat
membangun sangat diharapkan demi kesempurnaan makalah ini.
DAFTAR PUSTAKA

Jogianto H.M, Konsep Dasar Pemrograman Bahasa C, Penerbit Andi, 2000

Antonie Pranata, Algoritma dan Pemrograman, J&J Learning Yogyakarta,

2000

http://student.blog.dinus.ac.id/yolandatania1/2017/12/28/dasar-pemrogramananalisis-kasus/

http://cornerit-blog.blogspot.com/2016/04/struktur-pemilihan.html

https://bagusnugraha27.blogspot.com/2014/04/contoh-pemrograman-dengan-bahasa-c.html

https://www.kodedasar.com/percabangan-cpp/

https://www.nusinau.com/struktur-case-of.html

Anda mungkin juga menyukai