Modul Praktikum Progtur II

Embed Size (px)

DESCRIPTION

Pemrograman Terstruktur

Citation preview

PRAKTIKUM PEMROGRAMAN TERSTRUKTUR

MODUL KE - 2.

PERCABANGAN

Dosen Pembimbing :

Muhammad Tulodo Andarbeni

Nama Kelompok :

Rachmad Satria Yudha P

201010370311367

Ananda Citra Utama

201010370311363

LABORATORIUM DMAG DAN RPL

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS TEKNIK

UNIVERSITAS MUHAMMADIYAH MALANG

2010/2011

I. TUJUAN

Mahasiswa memahami berbagai struktur percabangan di C yaitu if & if-else

Mahasiswa memahami berbagai struktur percabangan di C yaitu switch

II. ALAT YANG DIGUNAKAN

Computer

Turbo C++ 45

III. DASAR TEORI

IV. PROSEDUR PELAKSANAAN

Tutorial

Memaparkan flowchart percabangan dengan if-else

Membuat program sederhana menggunakan keyword if dengan kasus bilangan ganjil

if(x%2==1){

printf(bilangan ganjil);}

Melanjutkan program sebelumnya dengan menambahkan keyword else untuk kasus bilangan genap

Membuat program yang mengandung nested if

Membuat program yang mengandung if bertingkat

if(x>1000){

printf(dapat 2 permen);}

else if(x>500){

printf(dapat 1 permen);}

else{

printf(dapat 1 permen);}

Membuat program menggunakan switch untuk kasus: jika user memasukkan huruf a maka akan keluar nilai kredit anda 4, jika user memasukkan huruf b maka akan keluar nilai kredit anda 3, jika user memasukkan huruf a maka akan keluar nilai kredit anda 2

Mahasiswa mengerjakan tugas praktikum

Mahasiswa mendemokan hasil praktikum kepada asisten dan menulis laporan

V. TUGAS PRAKTIKUM

1. Buat program perhitungan biaya rekening listrik dengan tarif progresif:

Menginputkan golongan kelompok pengguna berupa karakter A, B, atau C dan jumlah pemakaian listrik bulan ini.

Menghitung biaya:

1. Jika termasuk kelompok A maka perhitungan biaya meliputi :

Abonemen

: 50000

150 kwh pertama: 2250/kwh

Selanjutnya

: 4750/kwh

Pajak

: 10% dari total

2. Jika termasuk kelompok B maka perhitungan biaya meliputi :

Abonemen

: 35000

100 kwh pertama: 1750/kwh

Selanjutnya

: 3250/kwh

Pajak

: 10% dari total

3. Jika termasuk kelompok C maka perhitungan biaya meliputi :

Abonemen

: 20000

75 kwh pertama: 1500/kwh

Selanjutnya

: 2750/kwh

Pajak

: 5% dari total

Menampilkan biaya yang harus dibayar pelanggan

Contoh:

Input: kelompok A

Pemakaian 250 kwh

Perhitungan : biaya= 50000 + 2250*150+4750*100

pajak= 10/100* biaya

total= biaya + pajak

Output: total

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 yang akan meminta user memasukkan 3 angka dipisahkan :, seperti 07:15:15, angka2 ini adalah jam:menit:detik. Program akan memeriksa apakah jam, menit, detik yang diperiksa valid atau tidak. (Dalam format 24 jam)

Contoh valid 13:13:13

Contoh tidak valid 25:01:01

4.Buatlah program untuk menampilkan pilihan , Gunakan Switch

- 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

VI. Analisis

1. Source Code

#include

#include

void main ()

{

char Kel,nama;

float jp;

float abon1,Aper, A150,Aper21;

float abon2,Bper, B100,Bper22;

float abon3,Cper, C75,Cper23;

float tpkj1,pajak,Tot;

float tpkj12,pajak2,Tot2;

float tpkj13,pajak3,Tot3;

abon1=50000;

Aper=2250;

A150=Aper*150;

Aper21=4750;

abon2=35000;

Bper=1750;

B100=Bper*100;

Bper22=3250;

abon3=20000;

Cper=1500;

C75=Cper*75;

Cper23=2750;

printf("++++++++++++++++++++++++++++++++++++++++++++\n");

printf("+ PERUSAHAAN LISTRIK NEGARA +\n");

printf("+ Jl. Permata Putih 32 Malang +\n");

printf("+ (0341-464235) +\n");

printf("++++++++++++++++++++++++++++++++++++++++++++\n");

printf("MASUKKAN TIPE KELOMPOK ANDA : "); scanf("%c",&Kel);

if (Kel=='A'||Kel=='B'||Kel=='C')

{

printf("MASUKKAN TOTAL PENGGUNAAN (dalam Kwh) : ");scanf("%f",&jp);

clrscr();

printf("++++++++++++++++++++++++++++++++++++++++++++\n");

printf("+ PERINGATAN!!! +\n");

printf("+ TOTAL PEMBAYARAN BULAN INI +\n");

printf("+ Bukti Pembayaran Ini Harap Disimpan +\n");

printf("++++++++++++++++++++++++++++++++++++++++++++\n");

if (Kel=='A')

{

if (jp150)

{

tpkj1=abon1+ A150+((jp-150)*Aper21);

pajak=0.1*tpkj1;

Tot=tpkj1+pajak;

printf("TAGIHAN ANDA BULAN INI :Rp.%.2f\n",Tot);

}

}

else if (Kel=='B')

{

if (jp100)

{

tpkj12=abon2+ B100+((jp-100)*Bper22);

pajak2=0.1*tpkj12;

Tot2=tpkj12+pajak2;

printf("TAGIHAN ANDA BULAN INI :Rp.%.2f\n",Tot2);

}

}

else if (Kel=='C')

{

if (jp75)

{

tpkj13=abon3+ C75+((jp-75)*Cper23);

pajak3=0.1*tpkj13;

Tot3=tpkj13+pajak3;

printf("TAGIHAN ANDA BULAN INI :Rp.%.2f\n",Tot3);

}

}

}

printf("++++++++++++++++++++++++++++++++++++++++++++\n");

}

Output

2. Source Code

#include

#include

void main()

{

int pilih;

float wb,biaya;

printf("++++++++++++++++++++++++++++++++++++++++++++\n");

printf("+ PROMO MURAH KARTU GSM IM4 +\n");

printf("+ NIKMATI NELPON SEHARIAN SEPUASNYA +\n");

printf("++++++++++++++++++++++++++++++++++++++++++++\n");

printf("+ PILIHLAH PAKET YANG ANDA INGIN PAKAI +\n");

printf("+ 1. NELPON SEPUASNYA +\n");

printf("+ 2. NELPON IRIT +\n");

printf("+ 3. EXIT +\n");

printf("++++++++++++++++++++++++++++++++++++++++++++\n");

printf("\nPILIH NOMER PAKET YANG ANDA INGINKAN :");

scanf("%d",&pilih);

clrscr();

printf("++++++++++++++++++++++++++++++++++++++++++++\n");

printf("+ PROMO MURAH KARTU GSM IM4 +\n");

printf("+ NIKMATI NELPON SEHARIAN SEPUASNYA +\n");

printf("++++++++++++++++++++++++++++++++++++++++++++\n");

switch(pilih)

{

case 1:

printf("\nKAMU MEMILIH NOMER 1 (NELPON SEPUASNYA)\n");

printf("TOTAL WAKTU NGOBROL KAMU (Detik) :");scanf("%f",&wb);

if (wb>0)

{

if (wb60) && (wb1500)

{

biaya=(15*60)+(1.5*(1500-60))+(3*(wb-1500));

printf("\nTOTAL BIAYA Rp. %.2f",biaya);

}

}

else

{

printf("\nINPUTAN ANDA SALAH!!!");

}

break;

case 2:

printf("KAMU MEMILIH NOMER 2 (NELPON IRIT)\n");

printf("TOTAL WAKTU NGOBROL KAMU (Detik) :");scanf("%f",&wb);

if (wb>0)

{

if (wb90) && (wb1800)

{

biaya=(10*90)+(1*(1800-90))+(5*(wb-1800));

printf("\nTOTAL BIAYA Rp. %.2f",biaya);

}

}

else

{

printf("\nTINPUTAN ANDA SALAH!!!");

}

break;

case 3:

default :

printf("\nCOBA LAGI");

break;

}

printf("\n++++++++++++++++++++++++++++++++++++++++++++");

printf("\n+TERIMA KASIH KARENA ANDA TELAH MEMILIH IM4+");

printf("\n++++++++++++++++++++++++++++++++++++++++++++");

}

Output

3. Source Code

#include

#include

void main()

{

float JAM,MENIT,DETIK;

printf("++++++++++++++++++++++++++++++++++++++++++++\n");

printf("+ TESTER WAKTU +\n");

printf("+ Learning By Doing +\n");

printf("++++++++++++++++++++++++++++++++++++++++++++\n");

printf(" MASUKKAN JAM = ");scanf("%f",&JAM);

printf(" MASUKKAN MENIT = ");scanf("%f",&MENIT);

printf(" MASUKKAN DETIK = ");scanf("%f",&DETIK);

clrscr();

printf("++++++++++++++++++++++++++++++++++++++++++++\n");

printf("+ TESTER WAKTU +\n");

printf("+ Learning By Doing +\n");

printf("++++++++++++++++++++++++++++++++++++++++++++\n");

printf("WAKTU INPUTAN %.0f JAM: %.0f MENIT: %.0fDETIK\n",JAM,MENIT,DETIK);

printf("++++++++++++++++++++++++++++++++++++++++++++\n");

if (JAM 60)

printf("JAM KURANG TEPAT, MENIT KURANG TEPAT, DETIK KURANG TEPAT");

else if (JAM >24 && MENIT60)

printf("JAM KURANG TEPAT, MENIT BETUL, DETIK KURANG TEPAT");

else if (JAM >24 && MENIT60 && DETIK