Anda di halaman 1dari 21

LAPORAN RESMI PRAKTIKUM DASAR PEMROGRAMAN

LAPORAN RESMI PRAKTIKUM DASAR PEMROGRAMAN

KE-4 PENGULANGAN PROSES 1

AHMAD NAFI’ BUDIANTO

1 D3 TEKNIK TELEKOMUNIKASI B

2221500032

IDA ANISAH, S.ST, MT

26 SEPTEMBER 2021
PENGULANGAN PROSES 1

A. TUJUAN
1. Menjelaskan tentang operator kondisi (operator relasi dan logika)
2. Menjelaskan penggunaan pernyataan if
3. Menjelaskan penggunaan pernyataan if-else
4. Menjelaskan penggunaan pernyataan if dalam if
5. Menjelaskan penggunaan pernyataan else-if
6. Menjelaskan penggunaan pernyataan switch

B. DASAR TEORI
Untuk keperluan pengambilan keputusan, C menyediakan beberapa jenis
pernyataan, berupa :
 Pernyataan if
 Pernyataan if-else
 Pernyataan switch
Pernyataan-pernyataan tersebut memerlukan suatu kondisi, sebagai basis dalam
pengambilan keputusan. Kondisi umum yang dipakai berupa keadaan benar dan salah.
1. Operator relasi
Operator relasi biasa dipakai untuk membandingkan dua buah nilai. Hasil
pembandingan berupa keadaan benar atau salah. Keseluruhan operator relasi
pada C ditunjukkan pada Tabel 1-1
Tabel 1-1 Operator relasi
Operator Makna
> Lenih dari
>= Lebih dari atau sama dengan
< Kurang dari
<= Kurang dari atau sama dengan
== Sama dengan
!= Tidak sama dengan

2. Operator logika
Operator logika biasa dipakai untuk menghubungkan ekspresi relasi.
Keseluruhan operator logika ditunjukkan pada tabel 2-1.
Tabel 2-1 Operator logika
Operator Makna
&& Dan (AND)
|| Atau (OR)
! Tidak (NOT)

Bentuk pemakaian operator && dan || adalah


operand1 operator operand2

3. Pernyataan if
Pernyataan if mempunyai bentuk umum :
if (kondisi)
pernyataan

Bentuk ini menyatakan :


 jika kondisi yang diseleksi adalah benar (bernilai logika = 1), maka
pernyataan yang mengikutinya akan diproses.
 Sebaliknya, jika kondisi yang diseleksi adalah tidak benar (bernilai
logika = 0), maka pernyataan yang mengikutinya tidak akan diproses.
Mengenai kodisi harus ditulis diantara tanda kurung, sedangkan pernyataan
dapat berupa sebuah pernyataan tunggal, pernyataan majemuk atau pernyataan
kosong. Diagram alir dapat dilihat seperti gambar 3.1
Gambar 3.1 Diagram alir if

4. Pernyataan if-else
Pernyataan if-else memiliki bentuk
if (kondisi) pernyataan-1;
else pernyataan-2;
Diagram alir dapat dilihat seperti gambar 4.1.

Gambar 4.1 Diagram alur if-else


Arti dari pernyataan if-else :
 Jika kondisi benar, maka pernyataan-1 dijalankan.
 Sedangkan bila kondisi bernilai salah, maka pernyataaan-2 yang
dijalankan.
Masing-masing pernyataan-1 dan pernyataan-2 dapat berupa sebuah
pernyataan tunggal, pernyataan majemuk ataupun pernyataan kosong.
Contoh penggunaan pernyataan if-else adalah untuk menyeleksi nilai suatu
bilangan pembagi. Jika nilai bilangan pembagi adalah nol, maka hasil
pembagian dengannilai nol akan mendapatkan hasil tak berhingga. Jika ditemui
nilai pembaginya nol, maka proses pembagian tidak akan dilakukan.

5. Pernyataan if di dalam if
Di dalam suatu pernyataan if (atau if-else) bisa saja terdapat pernyataan if
(atau if-else) yang lain. Bentuk seperti ini dinamakan sebagai nested if. Secara
umum, bentuk dari pernyataan ini adalah sebagai berikut :
if (kondisi-1)
if (kondisi-2)
.
.
if(kondisi-n)
pernyataan;
else
pernyataan;
.
.
else
pernyataan;
else
pernyataan;

 Kondisi yang akan diseleksi pertama kali adalah kondisi yang terluar
(kondisi-1). Jika kondisi-1 bernilai salah, maka statemen else yang
terluar (pasangan if yang bersangkutan) yang akan diproses. Jika else
(pasangannya tsb) tidak ditulis, maka penyeleksian kondisi akan
dihentikan.
 Jika kondisi-1 bernilai benar, maka kondisi berikutnya yang lebih dalam
(kondisi-2) akan diseleksi. Jika kondisi-2 bernilai salah, maka statemen
else pasangan dari if yang bersangkutan yang akan diproses. Jika else
(untuk kondisi-2) tidak ditulis, maka penyeleksian kondisi akan
dihentikan.
 Dengan cara yang sama, penyeleksian kondisi akan dilakukan sampai
dengan kondisi-n, jika kondisi-kondisi sebelumnya bernilai benar
6. Pernyataan else-if
Contoh implementasi nested if ini misalnya pembuatan sebuah program
kalkulator sederhana. User memberikan masukan dengan format :
operand1 operator operand2

Jenis operasi yang dikenakan bergantung pada jenis operator ang


dimasukkan oleh user. Oleh karena itu program akan mengecek apakah
operator berupa tanda ‘*’, ‘/’, ‘+’, ataukah tanda ‘-‘ .
 Jika operator berupa tanda ‘*’ maka operand1 akan dikalikan dengan
operand2.
 Jika operator berupa tanda ‘/’ maka operand1 akan dibagi dengan
operand2.
 Jika operator berupa tanda ‘+’ maka operand1 akan dijumlahkan dengan
operand2.
 Jika operator berupa tanda ‘-’ maka operand1 akan dikurangi dengan
operand2.
 Kalau operator yang dimasukkan bukan merupakan salah satu dari jenis
operator di
atas, maka ekspresi tersebut tidak akan diproses, dan user akan
mendapatkan pesan berupa : “Invalid operator !”

7. Pernyataan switch
Pernyataan switch merupakan pernyataan yang dirancang khusus untuk
menangani pengambilan keputusan yang melibatkan sejumlah alternatif,
misalnya untuk menggantikan pernyataan if bertingkat. Bentuk umum
pernyataan switch adalah :
switch (ekspresi)
{
case konstanta-1:
pernyataan-1;
......
break;
case konstanta-2:
.
.
.
case konstanta-n:
pernyataan-n;
.......
break;
default:
.......
.......
break;
}

dengan ekspresi dapat berupa ekspresi bertipe integer atau bertipe karakter.
Demikian juga konstanta-1, konstanta-2, …, konstanta-n dapat berupa
konstanta integer ataukarakter. Setiap pernyataan-i (pernyataan-1, … ,
pernyataan-n) dapat berupapernyataan tunggal ataupun pernyataan jamak.
Dalam hal ini urutan penulisan pernyataan case tidak berpengaruh. Proses
penyeleksian berlangsung sebagai berikut :
 pengujian pada switch akan dimulai dari konstanta-1. Kalau nilai
konstanta-1 cocok dengan ekspresi maka pernyataan-1 dijalankan.
Kata kunci break harus disertakan di bagian akhir setiap pernyataan
case, yang akan mengarahkan eksekusi ke akhir switch.
 Kalau ternyata pernyataan-1 tidak sama dengan nilai ekspresi,
pengujian dilanjutkan pada konstanta-2, dan berikutnya serupa dengan
pengujian pada konstanta-1
 Jika sampai pada pengujian case yang terakhir ternyata tidak ada
kecocokan, maka pernyataan yang mengikuti kata kunci default yang
akan dieksekusi. Kata kunci default ini bersifat opsional.
 Tanda kurung kurawal tutup (}) menandakan akhir dari proses
penyeleksian kondisi case.
C. TUGAS PENDAHULUAN
1. Buatlah program dengan menggunakan pernyataan if-else untuk menentukan
kelulusan mahasiswa yang ditentukan berdasarkan nilai ujian yang didapatkan.
Jika nilai ujian lebih dari atau sama dengan 70 mahasiswa dinyatakan lulus dan
jika kurang dari 70 maka dinyatakan tidak lulus.
Tampilan:
Masukkan nilai ujian:65 Tampilan 1
Anda tidak lulus

Masukkan nilai ujian:80


Tampilan 2
Anda lulus

JAWAB :
Script :
#include <stdio.h>
main()
{
int nilai_ujian;
printf("Masukan nilai ujian : ");
scanf("%d", &nilai_ujian);
if (nilai_ujian <=70)
printf("Anda dinyatakan tidak lulus");
else printf("Anda lulus");

Output : 65

Output : 80
Analisa : Dalam program tersebut menggunakan pernyataan if-else dan juga
menggunakan operator kurang dari sama dengan (<=) sehingga
apabila mahasiswa menmasukkan nilai kurang dari 70, maka output
akan menampilkan “Anda tidak lulus”. Sebaliknya, apabila
mahasiswa memasukan nilai lebih dari 70, maka output akan
menampilkan “Anda lulus”.

2. Buatlah program yang membaca sebuah integer dari 1 sampai dengan 7, dan
menuliskan nama hari yang bersesuaian dengannya di layar. Integer 1
bersesuaian dengan hari minggu , integer 2 dengan hari senin, dan
seterusnya.Gunakan perintah if bertingkat (else-if) Dimana tampilan yang
dihasilkan sebagai berikut:
Hari ke..:1
Tampilan 1
Minggu

Hari ke..:6
Tampilan 2
Jum’at

JAWAB :
Script :
#include <stdio.h>
main()
{
int urutan;
printf("Hari ke : ");
scanf("%d", &urutan);
if (urutan==1)
printf("Minggu");
else if(urutan==2)
printf("Senin");
else if(urutan==3)
printf("Selasa");
else if(urutan==4)
printf("Rabu");
else if(urutan==5)
printf("Kamis");
else if(urutan==6)
printf("Jumat");
else if(urutan==7)
printf("Sabtu");
else
printf("hari tidak ditemukan");
}
Output : 1

Output : 6

D. PERCOBAAN
1. Dengan menggunakan pernyataan if-else bertingkat, buatlah program untuk
memilih penghitungan luas segitiga, persegi panjang atau bujur sangkar.
Tampilan :
Masukkan pilihan anda :1
Masukkan alas dan tinggi : 10 20
Jadi luasnya adalah 100

Masukkan pilihan anda : 2


Masukkan panjang dan lebar : 10 20
Jadi luasnya adalah 200

JAWAB :
Script :
#include <stdio.h>
main()
{
int pilihan, a, t, ls, p, l, lp, s, lb;
printf("Masukkan pilihan anda : ");
scanf("%d", &pilihan);
if (pilihan==1)
{
printf("Masukan alas dan tinggi : ");
scanf("%d %d", &a, &t);
ls=0.5*a*t;
printf("Jadi luasnya adalah : %d", ls);
}
else if (pilihan==2)
{
printf("Masukan panjang dan lebar : ");
scanf("%d %d", &p, &l);
lp=p*l;
printf("Jadi luasnya adalah : %d", lp);
}
else if (pilihan==3)
{
printf("Masukan sisi : ");
scanf("%d", &s);
lb=s*s;
printf("Jadi luasnya adalah : %d", lb);
}

Output : pilihan = 1, alas = 10, tinggi = 20

Output : Pilihan = 2, panjang = 10, lebar = 20

2. Dengan menggunakan pernyataan switch-case, buatlah program untuk


mengkonversikan nilai huruf ke nilai angka. Huruf A memiliki nilai angka 4,
huruf B memiliki nilai angka 3, huruf C memiliki nilai angka 2, huruf D
memiliki nilai angka 1, sedangkan huruf E memiliki nilai angka 0.
Tampilan:
Masukkan nilai huruf:A
Nilai angka 4 Tampilan 1
.
.

Masukkan nilai huruf:E


Tampilan 2
Nilai angka 0
JAWAB :

Script :

#include <stdio.h>
main()
{
char nilai;
printf("Masukkan nilai huruf : ");
scanf("%s", &nilai);
switch (nilai)
{
case 'A':
printf("Nilai angka : 4\n");
break;
case 'B':
printf("Nilai angka : 3\n");
break;
case 'C':
printf("Nilai angka : 2\n");
break;
case 'D':
printf("Nilai angka : 1\n");
break;
case 'E':
printf("Nilai angka : 0\n");
break;
default:
printf("Maaf, pilihan tidak ada, masukan huruf
kapital A sampai E");

Output : huruf = A

Output : huruf = E
3. Dengan menggunakan nested if, buatlah program untuk mencari nilai terkecil
dari 3 angka yang diinputkan. Adapun potongan programnya adalah.
if(a<b)
if(a<c)
result=a;
else
result=c;
else if(b<c)
result=b;
else
result=c;

Tampilan:
Masukkan 3 angka:4 5 7
Angka yang terkecil adalah 4

JAWAB :
Script :
#include <stdio.h>
main()
{
int a, b, c, result;
printf("Masukkan 3 angka : ");
scanf("%d %d %d", &a, &b, &c);
if (a<b)
if(a<c)
result=a;
else
result=c;
else if(b<c)
result=b;
else
result=c;
printf("Angka yang terkecil adalah : %d", result);
}

Output :
4. Kerjakan soal no 2 dengan menggunakan pernyataan if else.

JAWAB :
Script:
#include <stdio.h>
main()
{
char nilai;
printf("Masukkan nilai huruf : ");
scanf("%c", &nilai);
if (nilai=='A')
printf("Nilai angka : 4");
else if(nilai=='B')
printf("Nilai angka : 3");
else if(nilai=='C')
printf("Nilai angka : 2");
else if(nilai=='D')
printf("Nilai angka : 1");
else if(nilai=='E')
printf("Nilai angka : 0");
else
printf("Maaf, huruf yang anda masukkan salah\n"
"Pilih salah satu huruf kapital antara A sampai
E");
}

Output : huruf = A

Output : huruf = E
E. LAPORAN RESMI
1. kerjakan program pada percobaan 1 dengan perintah switch-case
JAWAB :
Script :
#include <stdio.h>
main()
{
int pil, a, t, p, l, s, luas;
printf("Masukkan pilihan anda : ");
scanf("%d", &pil);
switch (pil){
case 1:
{
printf("Masukkan alas dan tinggi : ");
scanf("%d %d", &a, &t);
luas=0.5*a*t;
printf("Jadi luasnya adalah : %d", luas);
}
break;
case 2:
{
printf("Masukkan panjang dan lebar : ");
scanf("%d %d", &p, &l);
luas=p*l;
printf("Jadi luasnya adalah : %d", luas);
}
break;
case 3:
{
printf("Masukkan sisi : ");
scanf("%d", &s);
luas=s*s;
printf("Jadi luasnya adalah : %d", luas);
}
break;
default:
printf("Pilihan anda tidak tersedia, silahkan pilih
antara pilihan 1 sampai 3");
break;
}
}
Output : Pilihan 1

Output : Pilihan 2

Output : Pilihan 3

2. Buatlah flowchart dari percobaan 1 sampai percobaan 4


JAWAB :
 Prcobaan 1
 Percobaan 2

 Percobaan 3
 Percobaan 4

F. ANALISA
Dari beberapa percobaan daitas, dapat dianalisis sebagai berikut
1. Pada percobaan pertama, diminta untuk membuat program untuk menghitung 3
jenis bangun datar yaitu segitiga, persegi panjang, dan bujur sangkar. Pilihan 1
adalah menghitung luas segitiga dengan menggunakan rumus ½*alas*tinggi,
pilihan 2 adalah menghitung luas persegi panjang dengan menggunakan rumus
panjang*lebar, pilihan ketiga adalah menghitung luas bujur sangkar dengan
menghitung sisi*sisi. Untuk memilih diantara ketiga pilihan tersebut, maka
digunakan fungsi if-else.
2. Pada percobaan kedua, diminta untuk membuat program mengkonversi nilai
huruf ke nilai angka. Pada program ini, huruf A menjadi nilai 4, hurf B menjadi
nilai 3, huruf C memiliki nilai 2, huruf D memiliki nilai 1, dan huruf E memiliki
nilai 0. Pada program ini menggunaka fungsi switch case .
3. Pada percobaan ketiga, diminta untuk membuat program menghitung nilai
terkecil diantara 3 angka. Pada program ini akan menggunakan 3 variabel scanf
untuk menginput angka-angkanya. Program ini menggunakan fungsi nested-if
(if didalam if).
4. Pada percobaan keempat, diminta untuk membuat program seperti pada
percobaan kedua, tetapi menggunakan fungsi if-else.
G. KESIMPULAN
Pada keempat percobaan diatas dapat disimpulkan bahwa percobaan tersebut
menggunakan beberapa operator yaitu operator relasi (untuk membandingkan),
operator logika (untuk menghubungkan) dan operator aritmatika (untuk menghitung).
Selain itu juga menggunakan beberapa fungsi seperti fungsi if, if-else, nested-if (if
dalam if), else-if, switch.

Anda mungkin juga menyukai