Laporan Praktikum Modul 2 Percabangan La

(1)

LAPORAN MODUL PRAKTIKUM

MODUL KE-2

PERCABANGAN

DOSEN PEMBIMBING :

ARIF SUSANTO S.Kom

NAMA :

ARIANSYAH PUTRA

201410370311194

1E

LABORATORIUM TEKNIK INFORMATIKA

FAKULTAS TEKNIK

UNIVERSITAS MUHAMMADIYAH MALANG

2014


(2)

I.

TUJUAN

Mampu memahami dan mampu memanfaatkan tipe data, variable, dan

konstanta di bahasa C

Mampu menggunakan macam- macam operator

Mampu memahami dan mampu menggunakan metode untuk menampilkan

berbagai format ke layar

Mampu memanfaatkan instruksi untuk memasukkan data dalam berbagai

tipe

II. ALAT YANG DIPERGUNAKAN

Computer / Laptop

Dev C++ 4.9.9.2

III.

DASAR TEORI

Pada tugas ini saya mengacu pada madul 2 tentang percabangan

IV.

TUGAS PRAKTIKUM

1. Buatlah program untuk menghitung total harga yang harus dibayar untuk

makanan yang

dipesan di suatu restoran, perhitungannya adalah:

- Inputnya adalah

- Pilihan Paket Menu : A , B, dan C.

- Pilihan Topping : keju, daging dan sosis

- Jumlah : angka

- Perhitungan

- Jika Paket A

- Harga dasar : 5000

- Toping keju : 2000

- Toping daging : 3000

- Toping sosis : 4000

- Discount 10% jika jumlahnya lebih dari 10

- Jika Paket B

- Harga dasar : 6000

- Toping keju : 3000

- Toping daging : 4000

- Toping sosis : 4000


(3)

- Discount 12% jika jumlahnya lebih dari 7

- Jika Paket C

- Harga dasar : 10000

- Toping keju : 4000

- Toping daging : 6000

- Toping sosis : 7000

- Discount 15% jika jumlahnya lebih dari 3

- Output : hasil perhitungan

2. Sebuah operator seluler mempunyai dua buah program NELPON

SUKA-SUKA dan NELPON HEMAT. Buatlah sebuah program yang menghitung

biaya percakapan sesuai dengan pilihan-pilihan tersebut. Berikut ini adalah

aturan masing- masing pilihan:

a. NELPON SUKA-SUKA

Untuk 60 detik pertama, tarif percakapan Rp. 15,-/detik

Setelah 60 detik berikutnya sampai 25 menit pertama, tarif percakapan Rp.

1,5-/ detik

Setelah 25 menit pertama sampai terakhir, tarif percakapan Rp, 3,-/detik

Input program ini berupa lama percakapan dalam satuan menit, sedangkan

outputnya berupa biaya percakapan total.

b. NELPON HEMAT

Untuk 90 detik pertama, tarif percakapan Rp. 10,-/detik

Setelah 90 detik berikutnya sampai 30 menit pertama, tarif percakapan Rp.

1,-/ detik

Setelah 30 menit pertama sampai terakhir, tarif percakapan Rp, 5,-/detik

Buatlah sebuah menu pilihan yang akan digunakan untuk memilih satu

diantara 2 jenis program “nelpon” tersebut. Yang menjadi input dari program

tersebut adalah pilihan menu dan total waktu percakapan (dalam satuan

detik)

Contoh Tampilan Menu :

PROGRAM NELPON SUPER MURAAAAHHHHH !!!

PILIH MENU BERIKUT

========================================

1. Nelpon SUKA_SUKA

2. Nelpon HEMAT

3. Keluar

Pilihan Anda Adalah = 1

Masukkan Total Waktu Percakapan (detik) = 71

Total Biaya Percakapan = Rp. 1065,-

3. Buatlah program untuk menampilkan pilihan , Gunakan Switch

-

Jika user menekan karakter „a‟ maka printf “ Nilai diatas 80”


(4)

-

Jika user menekan karakter „b‟ maka printf “ Nilai antara 70 s/d 79 ”

-

Jika user menekan karakter „c‟ maka printf “ Nilai antara 60 s/d 69”

-

Jika user menekan karakter „d‟ maka printf “Nilai antara 50 s/d 59”

V.

TUGAS PRAKTIKUM

1.

Alogaritma Program :

Input : Pilihan Paket Menu : A , B, atau C

- Pilihan Topping : keju, daging atau sosis

- Jumlah

Output : Harga Bayar

Proses :

Jika User

memilih paket „A‟ (Harga dasar : 5

.000) maka akan ada pilihan

toping lagi:

- Toping keju : 2.000

- Toping daging : 3.000

- Toping sosis : 4.000

- Diskon 10% jika lebih dari 10

Jika User memilih paket „B‟ (Harga dasar : 6.000 maka

akan ada pilihan

toping lagi:

- Toping keju : 3.000

- Toping daging : 4.000

- Toping sosis : 4.000

- Diskon 12% jika jumlahnya lebih dari 7

Jika user meilih paket „C‟ (Harga dasar : 10

.000) maka akan ada pilihan

toping lagi:

- Toping keju : 4.000

- Toping daging : 6.000

- Toping sosis : 7.000

- Diskon 15% jika jumlahnya lebih dari 3

- Harga satuan = Harga dasar + Harga toping

- Harga total = Harga satuan * Jumlah

- diskon = harga_total * diskon


(5)

FlowChart Program :


(6)

#include <stdio.h>//preprosessor Directive main()//fungsi main

{//input data

char menu, topping;

int jumlah, total_harga, harga_dasar, harga_topping, total_bayar, diskon;

float jumlah_diskon;

puts("Pilihan Menu : A, B, C ");//menggunakan puts karena tidak menampilkan nilai string

puts("\nPilih Menu : \n"); scanf("%s",&menu);//pr

//process if(menu=='A'){

harga_dasar = 5000;

puts("Harga : 5.000\n");//menggunakan puts karena tidak

menampilkan nilai string

puts("\nTopping Yang Tersedia"); puts("\na.Keju : 2.000"); puts("\nb.Daging : 3.000"); puts("\nc.Sosis : 4.000"); puts("\nPilih Topping : "); scanf("%s",&topping);

if(topping=='a'){//if bersarang karena terdapat if di dalam if harga_topping = 2000;

puts("\nJumlah Yang Anda Inginkan : "); scanf("%i",&jumlah);//pr

total_harga = (harga_dasar + harga_topping) * jumlah; printf("\nTotal Harga : %i",total_harga);}//:

if(topping=='b'){

harga_topping = 3000;

puts("\nJumlah Yang Anda Inginkan : ");// scanf("%i",&jumlah);

total_harga = (harga_dasar + harga_topping) * jumlah; printf("\nTotal Harga : %i",total_harga);}

if(topping=='c'){

harga_topping = 4000;

puts("\nJumlah Yang Anda Inginkan : "); scanf("%i",&jumlah);

total_harga = (harga_dasar + harga_topping) * jumlah; printf("\nTotal Harga : %i",total_harga);}

if(jumlah>10)

jumlah_diskon = 0.1;//diskon sebesar 10 % jika membeli sebanyak > 10

diskon = total_harga * jumlah_diskon;

printf("\nAnda mendapatkan diskon sebesar : %i",diskon); }

if(menu=='B'){

harga_dasar = 6000;

puts("Harga : 6.000\n");//menggunakan puts karena tidak

menampilkan nilai string

puts("\nTopping Yang Tersedia"); puts("\na.Keju : 3.000"); puts("\nb.Daging : 4.000");


(7)

puts("\nc.Sosis : 4.000"); puts("\nPilih Topping : "); scanf("%s",&topping);

if(topping=='a'){

harga_topping = 3000;

puts("\nJumlah Yang Anda Inginkan : "); scanf("%i",&jumlah);

total_harga = (harga_dasar + harga_topping) * jumlah; printf("\nTotal Harga : %i",total_harga);}

if(topping=='b'){

harga_topping = 4000;

puts("\nJumlah Yang Anda Inginkan : "); scanf("%i",&jumlah);

total_harga = (harga_dasar + harga_topping) * jumlah; printf("\nTotal Harga : %i",total_harga);}

if(topping=='c'){

harga_topping = 4000;

puts("\nJumlah Yang Anda Inginkan : "); scanf("%i",&jumlah);

total_harga = (harga_dasar + harga_topping) * jumlah; printf("\nTotal Harga : %i",total_harga);}

if(jumlah>7)//diskon sebesar 12 % jika membeli sebanyak > 7 jumlah_diskon = 0.12;

diskon = total_harga * jumlah_diskon;

printf("\nAnda mendapatkan diskon sebesar : %i",diskon); }

if(menu=='C'){

harga_dasar = 10000;

puts("Harga : 10.000\n");//menggunakan puts karena tidak

menampilkan nilai string

puts("\nTopping Yang Tersedia"); puts("\na.Keju : 4.000"); puts("\nb.Daging : 6.000"); puts("\nc.Sosis : 7.000"); puts("\nPilih Topping : "); scanf("%s",&topping);

if(topping=='a'){

harga_topping = 4000;

puts("\nJumlah Yang Anda Inginkan : "); scanf("%i",&jumlah);

total_harga = (harga_dasar + harga_topping) * jumlah; printf("\nTotal Harga : %i",total_harga);}

if(topping=='b'){

harga_topping = 6000;

puts("\nJumlah Yang Anda Inginkan : "); scanf("%i",&jumlah);

total_harga = (harga_dasar + harga_topping) * jumlah; printf("\nTotal Harga : %i",total_harga);}

if(topping=='c'){

harga_topping = 7000;

puts("\nJumlah Yang Anda Inginkan : "); scanf("%i",&jumlah);

total_harga = (harga_dasar + harga_topping) * jumlah; printf("\nTotal Harga : %i",total_harga);}


(8)

jumlah_diskon = 0.15;

diskon = total_harga * jumlah_diskon;

printf("\nAnda mendapatkan diskon sebesar : %i",diskon); }

total_bayar = total_harga - diskon;

printf("\n\nTotal yang harus anda bayar : %i",total_bayar);//output }

Tabel 1. Source Code Program

Print Screen Hasil :

3.

Alogaritma Program :

Input :

Pilih Nilai : A , B, C, dan D

Output : Rentang Nilai dari karakter.

Proses :

-

Jika user menekan karakter „A‟ maka printf

“ Nilai diatas 80”

-

Jika user menekan karakter „B‟ maka printf

“ Nilai antara 70 s/d 79 ”

-

Jika user menekan karakter „C‟ maka printf

“ Nilai antara 60 s/d 69”

- Jika user m

enekan karakter „D‟ maka printf

“Nilai antara 50 s/d 59”


(9)

FlowChart Program :

Source Code :

#include <stdio.h> main ()

{

char nilai_huruf;//

puts("Inputkan nilai huruf A...D : \n"); scanf("%c",&nilai_huruf);


(10)

{

case 'A' :

puts ("nilai angka >=80\n");

break; case 'B' :

puts ("nilai angka >=70 && <=79\n");

break;

case 'C' :

puts ("nilai angka >=60 && <=69\n"); break;

case 'D' :

puts ("nilai angka >=50 && <=59\n"); break;

default :

puts ("permintaan salah"); break;

} }

Tabel 2. Source Code Program

Print Screen Hasil :

KESIMPULAN :

Pada modul kali ini saya diajarkan materi percabangan, percabangan adalah pemilihan 2

pilihan atau banyak pilihan yang akan dieksekusi selanjutnya dimanan pemilihan

tersebut didasarkan atas kondisi tertentu.


(1)

FlowChart Program :


(2)

#include <stdio.h>//preprosessor Directive main()//fungsi main

{//input data

char menu, topping;

int jumlah, total_harga, harga_dasar, harga_topping, total_bayar, diskon;

float jumlah_diskon;

puts("Pilihan Menu : A, B, C ");//menggunakan puts karena tidak menampilkan nilai string

puts("\nPilih Menu : \n"); scanf("%s",&menu);//pr

//process if(menu=='A'){

harga_dasar = 5000;

puts("Harga : 5.000\n");//menggunakan puts karena tidak menampilkan nilai string

puts("\nTopping Yang Tersedia"); puts("\na.Keju : 2.000"); puts("\nb.Daging : 3.000"); puts("\nc.Sosis : 4.000"); puts("\nPilih Topping : "); scanf("%s",&topping);

if(topping=='a'){//if bersarang karena terdapat if di dalam if harga_topping = 2000;

puts("\nJumlah Yang Anda Inginkan : "); scanf("%i",&jumlah);//pr

total_harga = (harga_dasar + harga_topping) * jumlah; printf("\nTotal Harga : %i",total_harga);}//:

if(topping=='b'){

harga_topping = 3000;

puts("\nJumlah Yang Anda Inginkan : ");// scanf("%i",&jumlah);

total_harga = (harga_dasar + harga_topping) * jumlah; printf("\nTotal Harga : %i",total_harga);}

if(topping=='c'){

harga_topping = 4000;

puts("\nJumlah Yang Anda Inginkan : "); scanf("%i",&jumlah);

total_harga = (harga_dasar + harga_topping) * jumlah; printf("\nTotal Harga : %i",total_harga);}

if(jumlah>10)

jumlah_diskon = 0.1;//diskon sebesar 10 % jika membeli sebanyak > 10

diskon = total_harga * jumlah_diskon;

printf("\nAnda mendapatkan diskon sebesar : %i",diskon);

}

if(menu=='B'){

harga_dasar = 6000;

puts("Harga : 6.000\n");//menggunakan puts karena tidak menampilkan nilai string

puts("\nTopping Yang Tersedia"); puts("\na.Keju : 3.000"); puts("\nb.Daging : 4.000");


(3)

puts("\nc.Sosis : 4.000"); puts("\nPilih Topping : "); scanf("%s",&topping);

if(topping=='a'){

harga_topping = 3000;

puts("\nJumlah Yang Anda Inginkan : "); scanf("%i",&jumlah);

total_harga = (harga_dasar + harga_topping) * jumlah; printf("\nTotal Harga : %i",total_harga);}

if(topping=='b'){

harga_topping = 4000;

puts("\nJumlah Yang Anda Inginkan : "); scanf("%i",&jumlah);

total_harga = (harga_dasar + harga_topping) * jumlah; printf("\nTotal Harga : %i",total_harga);}

if(topping=='c'){

harga_topping = 4000;

puts("\nJumlah Yang Anda Inginkan : "); scanf("%i",&jumlah);

total_harga = (harga_dasar + harga_topping) * jumlah; printf("\nTotal Harga : %i",total_harga);}

if(jumlah>7)//diskon sebesar 12 % jika membeli sebanyak > 7 jumlah_diskon = 0.12;

diskon = total_harga * jumlah_diskon;

printf("\nAnda mendapatkan diskon sebesar : %i",diskon); }

if(menu=='C'){

harga_dasar = 10000;

puts("Harga : 10.000\n");//menggunakan puts karena tidak menampilkan nilai string

puts("\nTopping Yang Tersedia"); puts("\na.Keju : 4.000"); puts("\nb.Daging : 6.000"); puts("\nc.Sosis : 7.000"); puts("\nPilih Topping : "); scanf("%s",&topping);

if(topping=='a'){

harga_topping = 4000;

puts("\nJumlah Yang Anda Inginkan : "); scanf("%i",&jumlah);

total_harga = (harga_dasar + harga_topping) * jumlah; printf("\nTotal Harga : %i",total_harga);}

if(topping=='b'){

harga_topping = 6000;

puts("\nJumlah Yang Anda Inginkan : "); scanf("%i",&jumlah);

total_harga = (harga_dasar + harga_topping) * jumlah; printf("\nTotal Harga : %i",total_harga);}

if(topping=='c'){

harga_topping = 7000;

puts("\nJumlah Yang Anda Inginkan : "); scanf("%i",&jumlah);

total_harga = (harga_dasar + harga_topping) * jumlah; printf("\nTotal Harga : %i",total_harga);}


(4)

jumlah_diskon = 0.15;

diskon = total_harga * jumlah_diskon;

printf("\nAnda mendapatkan diskon sebesar : %i",diskon); }

total_bayar = total_harga - diskon;

printf("\n\nTotal yang harus anda bayar : %i",total_bayar);//output }

Tabel 1. Source Code Program

Print Screen Hasil :

3.

Alogaritma Program :

Input :

Pilih Nilai : A , B, C, dan D

Output : Rentang Nilai dari karakter.

Proses :

-

Jika user menekan karakter „A‟ maka printf

“ Nilai diatas 80”

-

Jika user menekan karakter „B‟ maka printf

“ Nilai antara 70 s/d 79 ”

-

Jika user menekan karakter „C‟ maka printf

“ Nilai antara 60 s/d 69”


(5)

FlowChart Program :

Source Code :

#include <stdio.h> main ()

{

char nilai_huruf;//

puts("Inputkan nilai huruf A...D : \n"); scanf("%c",&nilai_huruf);


(6)

{

case 'A' :

puts ("nilai angka >=80\n"); break;

case 'B' :

puts ("nilai angka >=70 && <=79\n"); break;

case 'C' :

puts ("nilai angka >=60 && <=69\n"); break;

case 'D' :

puts ("nilai angka >=50 && <=59\n"); break;

default :

puts ("permintaan salah"); break;

} }

Tabel 2. Source Code Program

Print Screen Hasil :

KESIMPULAN :

Pada modul kali ini saya diajarkan materi percabangan, percabangan adalah pemilihan 2

pilihan atau banyak pilihan yang akan dieksekusi selanjutnya dimanan pemilihan

tersebut didasarkan atas kondisi tertentu.