Anda di halaman 1dari 21

LAPORAN PRAKTIKUM 5

PRAKTIKUM KONSEP PEMROGRAMAN


“Pengambilan Keputusan”

OLEH:

NAMA : PUTRI NURUL IZZA


NIM : 2020573010053
KELAS : TI 1-B

PROGRAM STUDI TEKNIK INFORMATIKA


JURUSAN TEKNOLOGI INFORMASI DAN KOMPUTER
POLITEKNIK NEGERI LHOKSEUMAWE
2020
LEMBAR PENILAIAN

Nama Mata Kuliah : Praktikum Konsep Pemrograman


Nomor Praktikum : 05/PKP/TI/1B/2020
Judul Praktikum : Pengambilan Keputusan (1/3)
Hari / Tanggal Praktikum : Selasa, 20 Oktober 2020
Nama Mahasiswa : Putri Nurul Izza
NIM : 2020573010053
Prodi / Kelas : TI-1B
Nilai :
PRAKTIKUM 5 (1/3)
PENGAMBILAN KEPUTUSAN

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

B. DASAR TEORI
Untuk keperluan pengambilan keputusan, C menyediakan beberapa
jenis pernyataan, berupa
▪ Pernyataan if
▪ Pernyataan if-else, dan
▪ Pernyataan switch
Pernyataan-pernyataan tersebut memerlukan suatu kondisi, sebagai
basis dalam pengambilan keputusan. Kondisi
umum yang dipakai berupa keadaan benar dan salah.

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 3-1
Tabel 3-1.
Operasi relasi

Operator Makna
> Lebih dari
>= Lebih dari atau sama dengan
< Kurang dari
<= Kurang dari atau sama dengan
== Sama dengan
!= Tidak sama dengan
Operator Logika.
Operator logika biasa dipakai untuk menghubungkan ekspresi relasi.
Keseluruhan operator logika ditunjukkan pada tabel 3-2.
Tabel 3-2. Operator logika

Operator Makna
&& dan (AND)
|| atau (OR)
! tidak (NOT)

Bentuk pemakaian operator && dan || adalah


operand1 operator operand2

Pernyataan if
Pernyataan if mempunyai bentuk umum :
if
(kondi
si )
perny
ataan;

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

salah
kondisi

benar
pernyataan

Gambar 3.1. Diagram alir if


Pernyataan if-else
Pernyataan if-else memiliki bentuk :
if
(ko
ndi
si)
per
ny
ata
an-
1;
else
pernyataan-2;

Diagram alir dapat dilihat seperti gambar 3.2.

salah
kondisi

benar
pernyataan-1 pernyataan-2

Gambar 3.2. Diagram alir 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 dengan nilai nol akan mendapatkan hasil tak berhingga. Jika
ditemui nilai pembaginya nol, maka proses pembagian tidak akan dilakukan.
C. TUGAS PENDAHULUAN
Desainlah algoritma dan flowchart untuk semua soal pada percobaan
1) Buat program untuk menginputkan sebuah bilangan, kemudian cetak ke
layar bilangan tersebut dan beri komentar apakah bilangan tersebut
ganjil atau genap.
Contoh : input = 15
Output = Bilangan yang diinputkan adalah 15.
Bilangan tersebut adalah bilangan ganjil.
 Algortima
1. Deklarasikan variabel nilai
2. Input nilai
3. Bagi nilai tersebut dengan 2
4. Jika sisa bagi = 0 maka tampilkan bilangan genap
5. Jika tidak maka tampilkan bilangan ganjil
6. Cetak hasil
 Flowchart

START

int nilai;

Input
nilai =

nilai / 2

Sisa bagi = 0?
Tidak

Tampilkan “Bilangan ganjil”


Ya

Tampilkan “Bilangan genap”

END
2) Buat program menggunaan pernyataan if adalah untuk menentukan
besarnya potongan harga yang diterima oleh seorang pembeli
Contoh : input = 50.000
Output = Total pembelian adalah Rp. 50.000
 Algoritma
1. Inisialisasi potongan_harga = 0
2. Input total_pembelian
3. Jika total_pembelian >= Rp. 100000 maka potongan_harga = 0.05 *
total_pembelian
4. Jika Tidak, ke langkah 6
5. total = total_pembelian – potongan_harga
6. Tampilkan hasil
 Flowchart
START

Inisialisasi potongan_harga = 0

Input
total_pembelian =

total_pembelian >=
Rp.100000?
Tidak

Ya

potongan_harga =
0.05 * total pembelian

total = total_pembelian –
potongan_harga

Tampilkan hasil

END
3) Ulangi soal no.2. Output diganti dengan:
Total pembelian adalah Rp. 50.000
Anda tidak mendapat diskon.
 Algoritma
1. Inisialisasi potongan_harga = 0;
2. Input total_pembelian
3. Jika total_pembelian >= Rp. 100000 maka potongan_harga = 0.05 *
total_pembelian
4. Jika tidak maka tampilkan “Anda tidak mendapat diskon”
5. total = total_pembelian – potongan_harga
6. Tampilkan hasil
 Flowchart

START

Inisialisasi potongan_harga = 0

Input
total_pembelian =

total_pembelian >=
Rp.100000?
Tidak

Ya
potongan_harga =
0.05 * total pembelian Tampilkan “Anda tidak mendapat
diskon”

total = total_pembelian –
potongan_harga

Tampilkan hasil

END
4) Gunakan pernyaaan if…else untuk menentukan sebuah bilangan masukan
adalah bilangan prima atau bukan.
Input : x
Output : x adalah bilangan prima / bukan bilangan prima
 Algoritma
1. Masukkan bilangan
2. Bagi bilangan dengan 2
3. Jika hasilnya 0 maka bilangan tersebut adalah bilangan prima
4. Jika hasilnya selain 0 maka bilangan tersebut bukan bilangan prima

 Flowchart
Start

Input
Angka

Tidak
Bil%2=0
Tidak
Bil%3=0
Tidak
Bukan
Bil%5=0
bilangan
Ya
prima Bukan Bilangan
bilangan Bil%7=0
Prima
prima Bukan
bilangan
prima Bukan
bilangan
prima

Selesai

5) Gunakan pernyataan if…else untuk membuat program yang menerima 2


buah bilangan bulat masukan. Tampilkan hasil dari pembagian bilangan
pertama dengan bilangan kedua, dengan ketelitian 3 desimal.
Input : bil1 dan bil2
Output : hasil bagi bil1 dengan bil2

Nilai tambah : program bisa mengecek pembagian dengan nol, yaitu


jika bilangan kedua adalah nol, maka tidak dilakukan proses
pembagian, namun ditampilkan pesan kesalahannya (division by zero).
 Algoritma
1. Deklarasikan variabel a, b, hasil
2. Masukkan bilangan pertama (a) dan bilangan kedua (b)
3. Apalah bilangan kedua bernilai 0?
4. Jika Ya cetak “division by zero”
5. Jika Tidak maka hasil = a / b
6. Cetak hasil
 Flowchart
START

float a, b, hasil;

Input
a=
b=

b = 0? Tidak

Ya hasil = a / b

Tampilkan “Division by zero”

Cetak hasil

END

D. PERCOBAAN
1. Buat program untuk menginputkan sebuah bilangan, kemudian cetak ke
layar bilangan tersebut dan beri komentar apakah bilangan tersebut ganjil
atau genap.
Contoh: Input = 15
Output = Bilangan yang diinputkan adalah 15.
Bilangan tersebut adalah bilangan ganjil.
 #include<stdio.h>
main()
{
int nilai;
printf("Masukkan bilangan : ");
scanf("%d", &nilai);
if(nilai%2==0)
{
printf("\nBilangan yang diinputkan adalah %d",
nilai);
printf("\nBilangan tersebut adalah bilangan
genap");
}
else
{
printf("\nBilangan yang diinputkan adalah %d",
nilai);
printf("\nBilangan tersebut adalah bilangan
ganjil");
}
}

2. Buat program menggunaan pernyataan if adalah untuk menentukan


besarnya potongan harga yang diterima oleh seorang pembeli,
berdasarkan kriteria :
i. tidak ada potongan harga jika total pembelian kurang dari Rp.
100.000 (dalam hal ini potongan harga diinisialisasi dengan
nol).
ii. bila total pembelian lebih dari atau sama dengan Rp. 100.000,
potongan harga yang diterima dirubah menjadi sebesar 5% dari
total pembelian.
Contoh : Input = 50.000
Output = Total pembelian adalah Rp. 50.000

 #include<stdio.h>
main()
{
int total_pembelian, potongan_harga=0, total;
printf("Masukkan total pembelian : Rp ");
scanf("%d", &total_pembelian);
if(total_pembelian>=100000)
{
potongan_harga = 0.05 * total_pembelian;
printf("\nBesarnya potongan harga = Rp %d\n",
potongan_harga);
total = total_pembelian - potongan_harga;
printf("Total pembelian setelah diskon = Rp %d",
total);
}
else
printf("\nTotal pembelian adalah = Rp %d",
total_pembelian);
}

3. Ulangi soal no.2. Output diganti dengan:


Total pembelian adalah Rp. 50.000
Anda tidak mendapat diskon.
 #include<stdio.h>
main()
{
int total_pembelian, potongan_harga=0, total;
printf("Masukkan total pembelian : Rp ");
scanf("%d", &total_pembelian);
if(total_pembelian>=100000)
{
potongan_harga = 0.05 * total_pembelian;
printf("\nBesarnya potongan harga = Rp %d\n",
potongan_harga);
total = total_pembelian - potongan_harga;
printf("Total pembelian setelah diskon = Rp %d",
total);
}
else
{
printf("\nTotal pembelian adalah = Rp %d",
total_pembelian);
printf("\nAnda Tidak Mendapat Diskon.");
}
}

4. Gunakan pernyaaan if…else untuk menentukan sebuah bilangan masukan


adalah bilangan prima atau bukan.
Input : x
Output : x adalah bilangan prima / bukan bilangan prima

 #include<stdio.h>
main()
{
int x, a=0;
printf("Masukkan sebuah bilangan : ");
scanf("%d", &x);
if(x>=2 && x<=10)
{
if(x%2 == 0)
a++;
if(x%3 == 0)
a++;
if(x%4 == 0)
a++;
if(x%5 == 0)
a++;
if(x%6 == 0)
a++;
if(x%7 == 0)
a++;
if(x%8 == 0)
a++;
if(x%9 == 0)
a++;
if(x%10 == 0)
a++;
if(a==1)
printf("\n%d adalah bilangan prima", x);
else
printf("\n%d bukan bilangan prima", x);
}
}

5. Gunakan pernyataan if…else untuk membuat program yang menerima 2


buah bilangan bulat masukan. Tampilkan hasil dari pembagian bilangan
pertama dengan bilangan kedua, dengan ketelitian 3 desimal.
Input : bil1 dan bil2
Output : hasil bagi bil1 dengan bil2

Nilai tambah : program bisa mengecek pembagian dengan nol,


yaitu jika bilangan kedua adalah nol, maka tidak dilakukan
proses pembagian, namun ditampilkan pesan kesalahannya
(division by zero).

 #include<stdio.h>
main()
{
float a, b, hasil;
printf("Masukkan bilangan pertama : ");
scanf("%f", &a);
printf("Masukkan bilangan kedua : ");
scanf("%f", &b);
if(b==0)
printf("\nDivision by zero");
else
{
hasil = a / b;
printf("\nHasil bagi = %.3f", hasil);
}
}
E. LAPORAN RESMI
1. Listing program beserta contoh eksekusinya
 Listing Percobaan No. 1
Input

Output
 Listing Percobaan No. 2
Input

Output
 Listing Percobaan No. 3
Input

Output
 Listing Percobaan No. 4
Input

Output
 Listing Percobaan No. 5
Input

Output

2. Berikan ilustrasi tentang perbedaan pernyataan if dan if….else


 if berfungsi untuk menentukan perintah yang benar maka akan dijalankan
perintahnya namun jika salah maka tidak dijalankan
 if...else berfungsi untuk menentukan perintah mana yang akan dijalankan
jika mempunyai dua kondisi. Jika kondisi pertama benar maka akan
dijalankan dan jika kondisi pertama salah maka dijalankan kondisi kedua
3. Untuk 3 flow chart di bawah ini lakukan tracing flow chart untuk
menemukan outputnya, jika input yang diberikan adalah :
(1) Num = 10
(2) Num = -10
(3) Num = 0
a) b)

c)
a) (1) Num = 10 c) (1) Num = 10
1. Mulai 1. Mulai
2. Input Num, Num = 10 2. Input Num, Num = 10
3. 10 > 0? Ya 3. 10 > 0? Ya
4. Output “Category A” 4. Output “Category A”
5. Selesai 5. Selesai

(2) Num = -10 (2) Num = -10


1. Mulai 1. Mulai
2. Input Num, Num = -10 2. Input Num, Num = -10
3. -10 > 0? Tidak 3. -10 > 0? Tidak
4. Program berhenti 4. Output “Category B”
5. Selesai 5. Output “Category A”
6. Selesai
(3) Num = 0
1. Mulai (3) Num = 0
2. Input num, Num = 0 1. Mulai
3. 0 > 0? Tidak 2. Input Num, Num = 0
4. Program berhenti 3. 0 > 0? Tidak
5. Selesai 4. Output “Category B”
5. Output “Category A”
b) (1) Num = 10 6. Selesai
1. Mulai
2. Input Num, Num = 10
3. 10 > 0? Ya
4. Output “Category A”
5. Selesai

(2) Num = -10


1. Mulai
2. Input Num, Num = -10
3. -10 > 0? Tidak
4. Output “Category B”
5. Selesai

(3) Num = 0
1. Mulai
2. Input Num, Num = 0
3. 0 > 0? Tidak
4. Output “Category B”
5. Selesai

Anda mungkin juga menyukai