Dokumen Laboratorium Teknik Informatika UMM 2014
Modul Praktikum Pemrograman Terstruktur
By Team Informatika UMM
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
Dokumen Laboratorium Teknik Informatika UMM 2014
Modul Praktikum Pemrograman Terstruktur
By Team Informatika UMM
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
Dokumen Laboratorium Teknik Informatika UMM 2014
Modul Praktikum Pemrograman Terstruktur
By Team Informatika UMM
- 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”
Dokumen Laboratorium Teknik Informatika UMM 2014
Modul Praktikum Pemrograman Terstruktur
By Team Informatika UMM
- 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
- Harga bayar = Harga total – Diskon
Dokumen Laboratorium Teknik Informatika UMM 2014
Modul Praktikum Pemrograman Terstruktur
By Team Informatika UMM
FlowChart Program :
Source Code :
Dokumen Laboratorium Teknik Informatika UMM 2014
Modul Praktikum Pemrograman Terstruktur
By Team Informatika UMM
#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");
Dokumen Laboratorium Teknik Informatika UMM 2014
Modul Praktikum Pemrograman Terstruktur
By Team Informatika UMM
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);}
if(jumlah>3)//diskon sebesar 15 % jika membeli sebanyak > 3
Dokumen Laboratorium Teknik Informatika UMM 2014
Modul Praktikum Pemrograman Terstruktur
By Team Informatika UMM
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 menekan karakter „D‟ maka printf “Nilai antara 50 s/d 59”
Dokumen Laboratorium Teknik Informatika UMM 2014
Modul Praktikum Pemrograman Terstruktur
By Team Informatika UMM
FlowChart Program :
Source Code :
#include <stdio.h>
main ()
{
char nilai_huruf;//
puts("Inputkan nilai huruf A...D : \n");
scanf("%c",&nilai_huruf);
switch (nilai_huruf)
Dokumen Laboratorium Teknik Informatika UMM 2014
Modul Praktikum Pemrograman Terstruktur
By Team Informatika UMM
{
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.