Anda di halaman 1dari 10

Praktikum 4

Percabangan

NIM/Nama : 3311901057/Rido Dwi Mareta

Setelah mengikuti praktikum ini, mahasiswa diharapkan dapat:


1. Membedakan kasus yang memerlukan penyelesaian dengan satu kondisi, dua kondisi, atau lebih
2. Menerapkan jenis percabangan yang tepat untuk penyelesaian masalah yang diberikan
3. Menulis kode percabangan secara benar dalam bahasa C

Pengumpulan tugas praktikum:


Simpan laporan praktikum ini dengan nama P04_NIM.docx di folder yang sama dengan folder tempat kode
program. Namai folder dengan P04_NIM, kemudian zip. File EXE tidak perlu diikutkan dalam zip. Upload ke
http://learning-if.polibatam.ac.id.

Bagian 1: Program Cek Lulus *)


Buatlah program yang meminta sebuah nilai ujian dimasukkan dari keyboard. Hasilnya berupa keterangan “lulus”
kalau nilainya lebih besar atau sama dengan 60 dan “tidak lulus” kalau nilainya kurang dari 60. Simpan dengan
nama 1_ceklulus.c.

Apa masukan program tersebut? Apa keluarannya? Proses apa yang diperlukan untuk mengubah masukan menjadi
keluaran program ini?

Masukan: nilai

Keluaran: lulus / tidak lulus

Proses: jika nilai diatas 60 maka lulus, jika nilai dibawah 60 maka tidak lulus

Tuliskan algoritma (notasi bebas) di sini.

Program lulus atau tidak lulus

{program untuk menyatakan kelulusan}

Deklarasi

Nil = integer

Lulus = Boolean

Algoritma

Input (nil)

if nilai > 60 then

lulus  true
else

lulus  false

endif

output (lulus, tidak lulus)

Salin kode program di sini.

//Program Lulus dan tidak lulus

#include <stdio.h>

int main()

//Deklarasi variabel

int nil,lulus;

//Masukkan nilai

printf("Masukkan nilai anda : ");

scanf("%d",&nil);

//Proses menghitung nilai

if(nil>60)

//Keluaran dari proses

lulus=printf("Selamat anda lulus ");

else

lulus=printf("Maaf anda tidak lulus ");

return 0;

Jelaskan hasil running program!


Hasil running akan menampilkan lulus jika nilai > 60 dan tidak lulus jika nilai <60

Bagian 2: Program Cek Bilangan


Buatlah algoritma dan program yang meminta sebuah bilangan bulat dimasukkan dari keyboard, kemudian
menghasilkan informasi sebagai berikut.

- “bilangan genap” kalau nilainya genap

- “bilangan ganjil” kalau nilainya ganjil

- “nol” kalau nilainya sama dengan nol

Simpan dengan nama 2_cekbilangan.c.

Apa masukan program tersebut? Apa keluarannya? Proses apa yang diperlukan untuk mengubah masukan menjadi
keluaran program ini?

Masukan: angka

Keluaran: ganjil / genap

Proses: hasil bagi bilangan jika 0 maka genap jika tidak maka ganjil, jika 0 maka 0

Tuliskan algoritma (notasi bebas) di sini.

Program bilangan ganjil genap

{program untuk menentukan bilangan ganjil atau genap}

Deklarasi

Angka,jenis = integer

Algoritma

Input (angka)

if nilai a = 0

bilanga  o

else if jenis = 0

bilangan  genap

else if jenis > 0

bilangan  ganjil

endif

endif
output (nol / ganjil / genap)

Salin kode program di sini.

//Program menentukan bilangan ganjil dan genap

#include <stdio.h>

int main()

//deklarasi variabel

int a,jenis;

//Input

printf ("Masukkan angka : ");

scanf ("%d",&a);

//Proses

jenis=a%2;

//output

if (a==0)

{printf("%d bilangan nol",a);

else if (jenis==0)

{printf("%d adalah bilangan genap",a);

else if (jenis>0)

printf("%d adalah bilangan ganjil",a);

}
return 0;

Jelaskan hasil running program!

Hasil running akan menampilkan bilangan nol jika input 0. Jika angka yang diinputkan 1 maka akan menampilkan
bilangan ganjil dan jika inputnya 2 maka akan menampilkan bilangan genap

Bagian 3: Program Kasir Fast Food dengan Diskon *)


Berikut adalah daftar menu sebuah kedai cepat saji:

Burger Rp 5000

Pizza Rp 4500

Soft Drink Rp 2500

Buatlah sebuah program yang menerima data banyaknya pesanan pelanggan untuk masing-masing menu tersebut,
kemudian hitung dan tampilkan harga total makanan yang harus dibayar. Program kemudian menanyakan apakah
pembeli memiliki kartu member. Jika member, maka mendapatkan diskon 10%. Contoh jalannya program sebagai
berikut.

# FAST FOOD POLIBATAM #


Daftar pesanan:
Burger :3
Pizza :1
Soft Drink :4
------------------------
Member? (y/n) : y

Total : Rp 29500
Diskon : Rp 2950
Bayar : Rp 26550

# FAST FOOD POLIBATAM #


Daftar pesanan:
Burger :3
Pizza :1
Soft Drink :4
------------------------
Member? (y/n) : n

Total : Rp 29500
Diskon : Rp 0
Bayar : Rp 29500
Catatan: tulisan warna merah merupakan masukan dari pengguna, sedangkan warna biru adalah keluaran dari
program. Simpan dengan nama 3_kasirdiskon.c.

Apa masukan program tersebut? Apa keluarannya? Proses apa yang diperlukan untuk mengubah masukan menjadi
keluaran program ini?

Masukan: total pesanan

Keluaran: total bayar setelah diskon

Proses: total pesanan dikali harga dan jika termasuk member maka total bayar dikurangi diskon 10%

Tuliskan algoritma (notasi bebas) di sini.

Program diskon

{program untuk menentukan diskon jika member}

Deklarasi

Total,diskon,harga = integer

Burger,pizza,soft = float

Member = char

Algoritma

Input (burger,pizza,diskon)

If member = “y” then

Diskon 10%

Else if member = “n” then

Diskon0

Endif

Output (total,diskon,bayar)

Salin kode program di sini.

//Program diskon

#include<stdio.h>

#include<math.h>

int main()
{

//deklarasi variabel

int total, diskon, harga;

float burger, pizza, soft;

char member;

//input

printf("Daftar Menu\n");

printf("============\n");

printf("Burger :");

scanf("%f", &burger);

printf("Pizza :");

scanf("%f", &pizza);

printf("Soft :");

scanf("%f", &soft);

printf("============\n");

printf("Kartu member (y/n):");

scanf("%s", &member);

printf("============\n");

//proses dan output

if(member == 'y' || member == 'Y') {

total = (burger*5000)+(pizza*4500)+(soft*2500);

diskon = total*10/100;

harga = total - diskon;

printf("Total :");

printf("%d \n", total);

printf("Diskon :");
printf("%d \n", diskon);

printf("Bayar :");

printf("%d \n", harga);

else if (member == 'n' || member == 'N'){

total=(burger*5000)+(pizza*4500)+(soft*2500);

printf("Total :");

printf("%d \n", total);

return 0;

Jelaskan hasil running program!

Hasil running akan menampilkan total, diskon dan harga setelah diskon

Jika masih ada waktu tersisa, kerjakan soal berikut. Jika tidak sempat, kerjakan sebagai latihan di rumah.

Ekstra: Program Cek Segitiga


Buatlah algoritma program yang menerima masukan panjang ketiga sisi suatu segitiga. Hasilnya berupa keterangan:

- “sama sisi” jika ketiga sisi sama

- “sama kaki” jika kedua sisi sama

- “semua sisi berbeda” jika tidak ada sisi yang sama

Simpan dengan nama 4_ceksegitiga.c.

Apa masukan program tersebut? Apa keluarannya? Proses apa yang diperlukan untuk mengubah masukan menjadi
keluaran program ini?

Masukan: sisi1, sisi2, dan sisi3

Keluaran: sama sisi, sama kaki, semua sisi berbeda

Proses: sama sisi jika semua sisi sama, sama kaki jika hanya kedua sisi sama dan sembarang jika semua sisi berbeda

Tuliskan algoritma (notasi bebas) di sini.


Program menentukan segitiga

{program untuk menentukan jenis segitiga}

Deklarasi

S1,s2,s3 = integer

Algoritma

Input (s1,s2,s3)

If s1 == s2 && s2 == s3 && s1 == s3 then

Segitiga sama sisi

else if s1 == s2 || s2 == s3 || s1 == s3 then

Segitiga sama kaki

Else

Segitiga semua sisi berbeda

Salin kode program di sini.

//Program masukkan panjang sisi segitiga

#include<stdio.h>

#include<math.h>

int main()

//deklarasi variabel

int s1, s2, s3;

//input

printf("Masukkan sisi 1: ");

scanf("%d", &s1);

printf("Masukkan sisi 2: ");

scanf("%d", &s2);

printf("Masukkan sisi 3: ");


scanf("%d", &s3);

//proses dan output

if(s1 == s2 && s2 == s3 && s1 == s3)

printf("sama sisi \n");

else if(s1 == s2 || s2 == s3 || s1 == s3)

printf("sama kaki \n");

else

printf("semua sisi berbeda \n");

return 0;

Jelaskan hasil running program!

Hasil running program akan menampilkan sama sisi jika semua sisi sama, sama kaki jika hanya kedua sisi sama dan
sembarang jika semua sisi berbeda

Anda mungkin juga menyukai