Kumpulan Soal Dan Jawaban Algoritma Dan Pemrograman
Kumpulan Soal Dasar-Dasar
Algoritma Dan Pemrograman
Last update: 04 November 2010
51 soal
http://awanrimbawan.wordpress.com
DISCLAIMER
http://awanrimbawan.wordpress.com
Page 1
04Nov2010
- For educational purpose only
- Compiler menggunakan Dev C++ 4.9.9.2
- Mari berbagi,jika menemukan kesalahan tentang
algoritma atau source code, silahkan hubungi
awanrmb@gmail.com.
- Semoga bisa membantu kita untuk belajar algoritma dan
pemrograman
1. Soal: Lama Bekerja
http://awanrimbawan.wordpress.com
Page 2
04Nov2010
Tulis program untuk menentukan lama bekerja seorang pegawai, jika jam
masuk dan jam pulang diinput. Catatan: jam berupa angka 1-12, dan
seorang pegawai bekerja kurang dari 12 jam.
Contoh Masukan dan keluaran:
Jam
mas
uk
Jam
keluar
Keluaran/
tampilan
10
11
Lama bekerja 1
jam
10
2
Lama bekerja 4
jam
10
7
Lama bekerja 9
jam
Algoritma:
Algoritma Lama_Bekerja
{jam berupa angka 1-12, dan seorang pegawai bekerja kurang
dari 12 jam}
KAMUS DATA
iMasuk, iKeluar, iLama: Integer
BEGIN
Input(iMasuk)
Input(iKeluar)
If (iKeluar >= iMasuk) Then
iLama iKeluar - iMasuk
Else
iLama (12-iMasuk) + iKeluar
end if
Output(iLama)
END
http://awanrimbawan.wordpress.com
Page 3
04Nov2010
Program:
#include
#include
/*Tulis procgram untuk menentukan lama bekerja seorang
pegawai, jika jam masuk dan jam pulang diinput.
Catatan: jam berupa angka 1-12, dan seorang pegawai bekerja
kurang dari 12 jam.
asumsi jam yang dimasukkan adalah tepat (tidak memasukkan
menit)
*/
int main()
{ int iMasuk, iKeluar, iLama;
printf("Menentukan lama bekerja\n\n");
printf(" Jam Masuk : ");
scanf("%d",&iMasuk);
printf(" \nJam Keluar : ");
scanf("%d",&iKeluar);
if (iKeluar >= iMasuk)
iLama = iKeluar - iMasuk;
else
iLama = (12-iMasuk) + iKeluar;
printf("\n\n Lama bekerja adalah : %d Jam\n", iLama);
system("PAUSE");
return 0;
}
2. Soal: Biaya Parkir
Tulis program untuk menentukan biaya parkir yang dihitung berdasarkan
lama parkir. Lama parkir dihitung dari selisih jam masuk dan jam keluar
diinput. Biaya parkir 2 jam pertama 2000, perjam berikutnya 500.
Contoh Masukan dan keluaran:
Jam
masuk
Jam keluar
Lama
keluaran/
tampilan
10
11
1
Biaya = 2000
10
2
4
Biaya = 3000
http://awanrimbawan.wordpress.com
Page 4
04Nov2010
Algoritma:
Algoritma Biaya_Parkir
{menghitung biaya parkir}
KAMUS DATA
iMasuk, iKeluar, iLama, iBiaya: Integer
BEGIN
Input(iMasuk)
Input(iKeluar)
If (iKeluar >= iMasuk) Then
iLama iKeluar - iMasuk
Else
iLama (12-iMasuk) + iKeluar
End If
If (iLama > 2) Then
iBiaya 2000 + ((iLama - 2)*500)
else
iBiaya 2000
Output(iBiaya)
END
#include
#include
int main()
{ int iMasuk, iKeluar, iLama;
long int iBiaya;
printf("Menghitung Biaya Parkir\n\n");
printf(" Jam Masuk : ");
scanf("%d",&iMasuk);
printf(" \nJam Keluar : ");
scanf("%d",&iKeluar);
if (iKeluar >= iMasuk)
iLama = iKeluar - iMasuk;
else
iLama = (12-iMasuk) + iKeluar;
if (iLama > 2)
iBiaya = 2000 + ((iLama - 2)*500);
else
iBiaya = 2000;
printf("\n\n Biaya parkir adalah : Rp %d \n", iBiaya);
Program:
system("PAUSE");
return 0;
http://awanrimbawan.wordpress.com
P a g e 5}
04Nov2010
3. Soal: Penggabungan Resistor
Algoritma
Menghitung_Resistor
Tulis
program
untuk menghitung resistor pengganti dari 3 buah resistor
yang disusun secara seri atau paralel. Rumus untuk resistor pengganti
KAMUS DATA
sbb:
iPilihan: Integer
Seri:
Rgab
= R1 + R2 + R3
fR1, fR2, fR3,
fResPengganti:
Float
Paralel:
1/Rgab = 1/R1 + 1/R2 + 1/R3
BEGIN
Besar
R1, R2 dan R3 serta jenis penyusunan (seri/paralel) diinput oleh
user.Input(fR1,fR2,fR3)
Input(iPilihan)
Case iPilihan
1: fResPengganti fR1+ fR2+ fR3
2: fResPengganti (1.0/fR1)+ (1.0/fR2)+ (1.0/fR3)
fResPengganti 1.0/fResPengganti
Otherwise: output(“pilihan salah”)
End Case
Algoritma:
http://awanrimbawan.wordpress.com
Output(fResPengganti)
Page 6
END
04Nov2010
#include
#include
/*Resistor Pengganti. Modul Praktikum Poltek. hal 27*/
int main()
{ int iPilihan;
float fR1, fR2, fR3;
float fResPengganti;
printf("Menghitung Resistor Pengganti");
printf("\n\nMasukkan Nilai R1: ");
scanf("%f",&fR1);
printf("\nMasukkan Nilai R2: ");
scanf("%f",&fR2);
printf("\nMasukkan Nilai R3: ");
scanf("%f",&fR3);
printf(" \n\nPenyusunan Resistor: ");
printf("\n 1.Seri");
printf("\n 2.Paralel");
printf("\nMasukkan pilihan penyusunan (1 atau 2): ");
scanf("%d",&iPilihan);
switch (iPilihan)
{ case 1:
fResPengganti = fR1+ fR2+ fR3;
break;
case 2:
fResPengganti = (1.0/fR1)+ (1.0/fR2)+ (1.0/fR3);
fResPengganti = 1.0/fResPengganti;
break;
default:
printf("inputan salah");
}
printf("\n\nBesar resistor pengganti adalah : %.2f \n",
Program:
fResPengganti);
system("PAUSE");
return 0;
http://awanrimbawan.wordpress.com
}
Page 7
04Nov2010
4. Soal: Harga barang
Buatlah program untuk menyelesaikan masalah berikut :
Program akan menerima masukan berupa kode, jenis dan harga, dengan
jenis adalah "A", "B", dan "C". Untuk setiap jenis, masing-masing akan
diberikan diskon sebesar 10% untuk A, 15% untuk B, dan 20% untuk C.
http://awanrimbawan.wordpress.com
Page 8
04Nov2010
Program akan menghitung berapa harga setelah didiskon.
Contoh masukan :
Jenis = B
kode = 10
harga = 10000
Contoh keluaran :
Jenis barang B mendapat diskon = 15%, Harga setelah didiskon = 8500
Algoritma:
Algoritma Menghitung_Barang
#include
KAMUS DATA
#include
iKode,iHarga:integer
#include
cJenis: character
int main()
BEGIN
{ int iKode,iDiskon;
Input(cJenis)
char cJenis;
Input(iKode)
long int iHarga, iHDiskon;
Input(iHarga)
printf(" Jenis : ");
Case(cJenis)
scanf("%c",&cJenis);
'A': iHDiskon 0,9 * iHarga
'B': iHDiskon 0,85 * iHarga
printf(" Kode : ");
'C': iHDiskon 0,8 * iHarga
scanf("%d",&iKode);
End Case
printf(" Harga : ");
output(iHDiskon)
scanf("%d",&iHarga);
END
switch (cJenis)
{ case 'A':
iDiskon=10;
iHDiskon = 0.9 * iHarga;
break;
case 'B':
iDiskon=15;
iHDiskon = 0.85 * iHarga;
break;
case 'C':
iDiskon=20;
iHDiskon = 0.8 * iHarga;
break;
default:
printf("inputan salah");
}
Program:
printf("\n\n Jenis barang %c mendapat diskon %d %%, Harga
setelah didiskon : Rp %d \n", cJenis, iDiskon, iHDiskon);
system("PAUSE");
return 0;
}
http://awanrimbawan.wordpress.com
Page 9
04Nov2010
5. Soal: Gaji karyawan mingguan
Sebuah perusahaan swasta menggaji karyawannya secara mingguan
dengan hitungan sebagai berikut :
golongan 1 dengan upah per jam 3.000 rupiah
http://awanrimbawan.wordpress.com
P a g e 10
04Nov2010
golongan 2 dengan upah per jam 3.500 rupiah
golongan 3 dengan upah per jam 4.000 rupiah
golongan 4 dengan upah per jam 5.000 rupiah
Bila seorang karyawan bekerja kurang atau sama dengan 40 jam per
minggu, akan dihitung dengan upah per jam seperti di atas, tetapi apabila
bekerja lebih dari 40 jam, maka lebihnya akan dihitung sebagai lembur
dengan upah per jam 1½ kali upah biasa.
Tulis algoritma untuk menghitung gaji mingguan karyawan, bila golongan
dan jam kerja diinput dari keyboard.
Algoritma:
#include
Algoritma
Menghitung_Gaji
#include
#include
KAMUS DATA
iGol, iJam, iUpah, iGaji : Integer
int main()
{
int iGol,iJam, iUpah;
BEGIN
int iGaji;
Input(iGol)
iUpah=0;
Input(iJam)
printf("
Jam Kerja : ");
iUpah Jumlah
0
scanf("%d",&iJam);
Case(iGol)
printf("
Golongan(1,2,3,4)
: ");
1: iUpah
3000
scanf("%d",&iGol);
2: iUpah 3500
3: iUpah 4000
switch
(iGol) 5000
4: iUpah
{
case
1:
End case
iUpah=3000;
break;
If (iJam
> 40) Then
case
2: 40 * iUpah + ((iJam - 40) * 1.5 * iUpah)
iGaji
Else iUpah=3500;
break;
iGaji
iJam * iUpah
case
End if 3:
iUpah=4000;
break;
Output(iGaji)
case 4:
iUpah=5000;
END
break;
default:
printf("inputan golongan salah");
}
if (iJam > 40)
iGaji = 40 * iUpah + ((iJam - 40) * 1.5 * iUpah);
else
Program:
iGaji = iJam * iUpah;
printf("\n\n Gaji : Rp %d \n", iGaji);
system("PAUSE");
return 0;
http://awanrimbawan.wordpress.com
}
P a g e 11
04Nov2010
6. Soal: Menghitung selisih waktu dalam jam dan
menit
Buat program menghitung selisih waktu (dalam jam dan menit)
berdasarkan jam mulai (jam,menit) dengan jam selesai (jam,menit). Data
yang diinput adalah jam dan menit mulai, jam dan menit selesai.
http://awanrimbawan.wordpress.com
P a g e 12
04Nov2010
Contoh Masukan dan Keluaran:
Mulai
(jam,menit)
Selesai
(jam,menit)
Lama
(menit)
Lama
(jam,menit
)
10:30
12:10
100
1 jam 40
menit
10:30
1:40
130
3 jam 10
menit
Algoritma:
ALGORITMA MENGHITUNG_JAM_MENIT
KAMUS DATA
iJamStart,iMenitStart,iMenitStop,iJamStop: integer
iTotMenit1,iTotMenit2,iSelangMenit,iJamDurasi,iMenitDurasi:
integer
BEGIN
Input(iJamStart)
#include
Input(iMenitStart)
#include
#include
Input(iJamStop)
Input(iMenitStop)
int main()
{ int iJamStart,iMenitStart,iJamStop,iMenitStop,iSelangMenit,
iTotMenit1 iJamStart * 60 + iMenitStart
iJamDurasi, iMenitDurasi ;
iTotMenit2 iJamStop * 60 + iMenitStop
long int iTotMenit1, iTotMenit2;
If (iTotMenit2 >= iTotMenit1) Then
iSelangMenit iTotMenit2 - iTotMenit1
printf(" Masukkan Waktu Mulai (contoh 10:05) : ");
Else
scanf("%d:%d",&iJamStart,&iMenitStart);
iSelangMenit ((12*60)-iTotMenit1) + iTotMenit2
End if
printf(" Masukkan Waktu Berhenti (contoh 11:04) : ");
scanf("%d:%d",&iJamStop,&iMenitStop);
iJamDurasi iSelangMenit div 60
iMenitDurasi iSelangMenit mod 60;
iTotMenit1 = iJamStart * 60 + iMenitStart;
iTotMenit2 = iJamStop * 60 + iMenitStop;
Output(iJamDurasi)
Output(iMenitDurasi)
if (iTotMenit2 >= iTotMenit1)
iSelangMenit = iTotMenit2 - iTotMenit1;
END
else
iSelangMenit = ((12*60)-iTotMenit1)+iTotMenit2;
Program:
iJamDurasi = iSelangMenit / 60;
iMenitDurasi = iSelangMenit % 60;
printf("\n\n Durasi adalah %d Jam %d Menit\n", iJamDurasi,
iMenitDurasi);
system("PAUSE");
http://awanrimbawan.wordpress.com
return 0;
P a g e 13
}
04Nov2010
7. Soal: Kuadran dari koordinat titik
Buat program dengan masukan koordinat sebuah titik (x,y) dalam sebuah
system koordinat kartesian, kemudian ditentukan di kuadran mana titik
tersebut.
Contoh Masukan :
ALGORITMA Menghitung_Kuadran
Koordinat titik (x,y) : 10 -20
KAMUS DATA
Contoh keluaran:
ix, iy: Integer
Titik 10,-20 berada pada kuadran 4
BEGIN
Input(ix,iy)
If (ix >= 0)
Algoritma:
If (iy >=0)
Output(“Kuadran I”)
else
Output(“Kuadran IV”)
else
if (iy >=0)
Output(“Kuadran II”)
http://awanrimbawan.wordpress.com
else
P a g e 14
Output(“Kuadran III”)
END
04Nov2010
Program:
#include
#include
int main()
{ int ix, iy;
printf(" Masukkan koordinat x,y : ");
scanf("%d,%d",&ix,&iy);
if (ix >= 0)
if (iy >=0)
printf("\nKuadran
else
printf("\nKuadran
else
if (iy >=0)
printf("\nKuadran
else
printf("\nKuadran
I\n");
IV\n");
II\n");
III\n");
system("PAUSE");
return 0;
}
8. Soal: Tunjangan Anak
Pemerintah hanya memberikan tunjangan anak dari PNS maksimal sampai
3 anak saja. Setiap anak diberikan tunjangan sebesar 10% dari gaji pokok.
Tulis program untuk menghitung total tunjangan anak, bila gaji pokok dan
jumlah anak diinput oleh user.
http://awanrimbawan.wordpress.com
P a g e 15
04Nov2010
Contoh Masukan dan Keluaran:
Jumla
h
anak
Gaji Pokok
Tunjangan Anak
0
1.000.000
0
1
1.000.000
100.000
3
1.000.000
300.000
5
1.000.000
300.000
Algoritma:
ALGORITMA Menghitung_Tunjangan
KAMUS DATA
iGajiPokok, iTunjangan, iJmlAnak: Integer
BEGIN
Input(iGajiPokok)
Input(iJmlAnak)
If (iJmlAnak 0) Then
iTunjangan iJmlAnak * 0.1 * iGajiPokok
Else If (iJmlAnak > 3)
iTunjangan 3 * 0.1 * iGajiPokok
Else
iTunjangan 0
End
if
#include
#include
Output ( iTunjangan)
int main()
END
{ int iGajiPokok, iTunjangan, iJmlAnak;
printf(" Masukkan Gaji Pokok : ");
scanf("%d",&iGajiPokok);
printf(" Masukkan JmlAnak : ");
scanf("%d",&iJmlAnak);
Program:
if (iJmlAnak0)
iTunjangan = iJmlAnak * 0.1 * iGajiPokok;
else if (iJmlAnak>3)
iTunjangan = 3 * 0.1 * iGajiPokok;
else
iTunjangan =0;
printf("\nTunjangan Anak adalah sebesar Rp.%d \n",
iTunjangan);
http://awanrimbawan.wordpress.com
system("PAUSE");
P a g e 16 return 0;
}
04Nov2010
9. Soal: Minibus pariwisata
Sebuah acara wisata digunakan minibus kapasitas 7 penumpang per
mobil. Apabila terjadi kelebihan penumpang (walaupun cuma 1), maka
minibus yang digunakan ditambah 1. Tulis program untuk menghitung
jumlah minibus yang diperlukan, bila jumlah pesertanya diinput.
Contoh Masukan dan Keluaran:
Jumlah
Peserta
Jumlah Minibus
5
1
7
1
ALGORITMA Menghitung_Tunjangan
8
2
KAMUS DATA
iPeserta,iMinibus : Integer
BEGIN
Output(iPeserta)
iMinibus0
Algoritma:
If (iPeserta > 7) Then
iMinibus iPeserta / 7
If (iPeserta % 7 != 0) Then
iMinibus iMinibus + 1
End If
Else if (iPeserta > 0) Then
iMinibus 1
End if
http://awanrimbawan.wordpress.com
Output(iMinibus)
P a g e 17
END
04Nov2010
Program:
#include
#include
int main()
{ int iPeserta,iMinibus;
printf(" Masukkan jml peserta : ");
scanf("%d",&iPeserta);
iMinibus=0;
if (iPeserta > 7){
iMinibus = iPeserta / 7;
if (iPeserta % 7 != 0)
iMinibus++;
}else if (iPeserta > 0)
iMinibus=1;
printf("Minibus yg diperlukan: %d\n",iMinibus);
system("PAUSE");
return 0;
10. }
Soal: Menentukan N hari yang lalu tanpa
menginputkan Hari Ini
Diinput jumlah berapa hari yang lalu, kemudian ditentukan nama harinya.
Tulis program untuk menentukan nama hari dari sekian hari yang lalu
yang diinput. (Catatan, gunakan Hari ini = ‘Senin’)
Contoh Masukan dan Keluaran:
N hari yang lalu
Nama Hari
http://awanrimbawan.wordpress.com
P a g e 18
04Nov2010
0
Senin
1
Minggu
10
Jumat
20
Selasa
#include
Algoritma:
#include
#include
ALGORITMA
Menentukan_Nama_Hari_1
int
main()
KAMUS
DATA
{ iNHari,iBelakang
int iNHari,iBelakang;
: Integer
char
cNamaHari[15];
cNamaHari[15]:
String
printf("Masukkan N Hari yg lalu : ");
BEGIN
scanf("%d",&iNHari);
Input(iNHari)
iBelakang =
;
(iNHari+1)
( iNHari + 1)
switch
(iBelakang){
Case (iBelakang)
case
1:
1: cNamaHari
"Senin"
strcpy(cNamaHari,"Senin");
2: cNamaHari
"Selasa"
break;
3: cNamaHari
"Rabu"
case
2:
4: cNamaHari "Kamis"
strcpy(cNamaHari,"minggu");
5: cNamaHari
"Jumat"
break;
6: cNamaHari
"Sabtu"
case
3:
7: cNamaHari
"Minggu"
strcpy(cNamaHari,"sabtu");
Otherwise:
cNamaHari "Inputan salah"
break;
End Case
case 4:
strcpy(cNamaHari,"jumat");
Output(cNamaHari)
break;
END case 5:
strcpy(cNamaHari,"kamis");
break;
case 6:
strcpy(cNamaHari,"rabu");
break;
case 7:
strcpy(cNamaHari,"selasa");
break;
default:
Program:strcpy(cNamaHari,"Inputan salah");
}
printf("\n Sekarang Hari Senin. %d Hari yang lalu adalah hari
%s \n",iNHari,cNamaHari);
system("PAUSE");
return 0;
}
http://awanrimbawan.wordpress.com
P a g e 19
04Nov2010
11.
Soal: Menentukan N hari yang lalu dengan
menginputkan Hari Ini
Diinput jumlah berapa hari yang lalu, kemudian ditentukan nama harinya.
Tulis program untuk menentukan nama hari dari sekian hari yang lalu dan
nomor hari ini yang diinput.
Contoh Masukan dan Keluaran:
N hari yang
Hari ini
Nama Hari
http://awanrimbawan.wordpress.com
P a g e 20
04Nov2010
lalu
0
1
Senin
3
3
Minggu
5
4
Sabtu
Algoritma:
#include
#include
ALGORITMA Menghitung_Hari
#include
KAMUS DATA
int main()
iNHari,iHariIni,iBelakang : Integer
{ int iNHari,iHariIni,iBelakang;
cNamaHari[15] : String
char cNamaHari[15],cNamaHariLalu;
cNamaHariLalu: Char
printf("Masukkan Kode Hari ini : ");
BEGIN
scanf("%d",&iHariIni);
Input(iHariIni)
printf("Masukkan N Hari yg lalu : ");
Input(iNHari)
scanf("%d",&iNHari);
If (iHariIni>iNHari) Then
if (iHariIni>iNHari)
iBelakang iHariIni - iNHari
iBelakang = iHariIni - iNHari;
Else
else
iBelakang 7 - (iNHari - iHariIni)
iBelakang= 7 - (iNHari - iHariIni);
End If
switch (iBelakang){
Case (iBelakang)
case 1: strcpy(cNamaHari,"Senin");
1: cNamaHari "Senin"
break;
2: cNamaHari "Selasa"
case 2:strcpy(cNamaHari,"Selasa");
3: cNamaHari "Rabu"
break;
4: cNamaHari "Kamis"
case 3:strcpy(cNamaHari,"Rabu");
5: cNamaHari "Jumat"
break;
6: cNamaHari "Sabtu"
case 4:
strcpy(cNamaHari,"Kamis");
7: cNamaHari "Minggu"
break;
End Case
case 5:
strcpy(cNamaHari,"Jumat");
Output(cNamaHari)
break;
END
case 6:
strcpy(cNamaHari,"Sabtu");
break;
case 7:
strcpy(cNamaHari,"Minggu");
Program:
break;
default:
strcpy(cNamaHari,"Inputan salah");
}
printf("\n %d Hari yang lalu adalah hari %s \
n",iNHari,cNamaHari);
system("PAUSE");
return 0;
http://awanrimbawan.wordpress.com
}
P a g e 21
04Nov2010
12.
Soal: Penghitungan Pembayaran Listrik
PLN menerapkan pembayaran listrik perumahan dengan cara perhitungan
sebagai berikut :
- Untuk golongan 1 tarif : Rp 1000/kWh
- Untuk golongan 2 tarif : Rp 2000/kWh
Dengan syarat penghitungan:
http://awanrimbawan.wordpress.com
P a g e 22
04Nov2010
Minimum pembayaran adalah 100 kWh sedangkan untuk pemakaian 1000
kWh dan seterusnya tarifnya ditambah 10% dari total pembayaran.
Golongan
1
2
1
Pemakai
an
50
150
1000
Bayar
100.000
300.000
1.100.000
ALGORITMA Menghitung_Pembayaran_Listrik
KAMUS DATA
iGol,iPakai,iTarif,iBayar : Integer
BEGIN
Input(iGol)
Input(iPakai)
If ( iGol = 1) Then
iTarif 1000
Else
iTarif 2000
End If
If (iPakai < 100) Then
iBayar 100 * iTarif
Else If ( iPakai >= 1000)
iBayar iPakai * iTarif * 1.1
Else
iBayar iPakai * iTarif
End If
Output(iBayar)
END
SOURCE CODE:
#include
#include
int main()
{ int iGol,iPakai,iTarif,iBayar;
printf("masukkan golongan: ");scanf("%d",&iGol);
http://awanrimbawan.wordpress.com
P a g e 23
04Nov2010
printf("masukkan jam pemakaian: ");scanf("%d",&iPakai);
if (iGol == 1 )
{iTarif=1000;}
else
{iTarif=2000;}
if (iPakai < 100)
{iBayar=100*iTarif;}
else if (iPakai >= 1000)
{iBayar=iPakai*iTarif*1.1;}
else
{iBayar=iPakai * iTarif;}
printf("\n yg harus dibayarkan %d\n",iBayar);
system("PAUSE");
return 0;
}
13.
Soal: Penghitungan Bulan
Buatlah algoritma untuk menghitung bulan pernikahan dengan menginputkan
bulan saat ini dan berapa bulan kedepan. Misal data:
Bulan Saat Ini
N Bulan Kedepan
1
12
10
2
1
5
Bulan
Pernikahan
3
1
3
ALGORITMA Menghitung_Bulan_Pernikahan
KAMUS DATA
iBlnSekarang, iNbulan, iBlnPernikahan : Integer
BEGIN
Input (iBlnSekarang)
Input (iNBulan)
http://awanrimbawan.wordpress.com
P a g e 24
04Nov2010
If ( (iBlnSekarang + iNbulan)
Algoritma Dan Pemrograman
Last update: 04 November 2010
51 soal
http://awanrimbawan.wordpress.com
DISCLAIMER
http://awanrimbawan.wordpress.com
Page 1
04Nov2010
- For educational purpose only
- Compiler menggunakan Dev C++ 4.9.9.2
- Mari berbagi,jika menemukan kesalahan tentang
algoritma atau source code, silahkan hubungi
awanrmb@gmail.com.
- Semoga bisa membantu kita untuk belajar algoritma dan
pemrograman
1. Soal: Lama Bekerja
http://awanrimbawan.wordpress.com
Page 2
04Nov2010
Tulis program untuk menentukan lama bekerja seorang pegawai, jika jam
masuk dan jam pulang diinput. Catatan: jam berupa angka 1-12, dan
seorang pegawai bekerja kurang dari 12 jam.
Contoh Masukan dan keluaran:
Jam
mas
uk
Jam
keluar
Keluaran/
tampilan
10
11
Lama bekerja 1
jam
10
2
Lama bekerja 4
jam
10
7
Lama bekerja 9
jam
Algoritma:
Algoritma Lama_Bekerja
{jam berupa angka 1-12, dan seorang pegawai bekerja kurang
dari 12 jam}
KAMUS DATA
iMasuk, iKeluar, iLama: Integer
BEGIN
Input(iMasuk)
Input(iKeluar)
If (iKeluar >= iMasuk) Then
iLama iKeluar - iMasuk
Else
iLama (12-iMasuk) + iKeluar
end if
Output(iLama)
END
http://awanrimbawan.wordpress.com
Page 3
04Nov2010
Program:
#include
#include
/*Tulis procgram untuk menentukan lama bekerja seorang
pegawai, jika jam masuk dan jam pulang diinput.
Catatan: jam berupa angka 1-12, dan seorang pegawai bekerja
kurang dari 12 jam.
asumsi jam yang dimasukkan adalah tepat (tidak memasukkan
menit)
*/
int main()
{ int iMasuk, iKeluar, iLama;
printf("Menentukan lama bekerja\n\n");
printf(" Jam Masuk : ");
scanf("%d",&iMasuk);
printf(" \nJam Keluar : ");
scanf("%d",&iKeluar);
if (iKeluar >= iMasuk)
iLama = iKeluar - iMasuk;
else
iLama = (12-iMasuk) + iKeluar;
printf("\n\n Lama bekerja adalah : %d Jam\n", iLama);
system("PAUSE");
return 0;
}
2. Soal: Biaya Parkir
Tulis program untuk menentukan biaya parkir yang dihitung berdasarkan
lama parkir. Lama parkir dihitung dari selisih jam masuk dan jam keluar
diinput. Biaya parkir 2 jam pertama 2000, perjam berikutnya 500.
Contoh Masukan dan keluaran:
Jam
masuk
Jam keluar
Lama
keluaran/
tampilan
10
11
1
Biaya = 2000
10
2
4
Biaya = 3000
http://awanrimbawan.wordpress.com
Page 4
04Nov2010
Algoritma:
Algoritma Biaya_Parkir
{menghitung biaya parkir}
KAMUS DATA
iMasuk, iKeluar, iLama, iBiaya: Integer
BEGIN
Input(iMasuk)
Input(iKeluar)
If (iKeluar >= iMasuk) Then
iLama iKeluar - iMasuk
Else
iLama (12-iMasuk) + iKeluar
End If
If (iLama > 2) Then
iBiaya 2000 + ((iLama - 2)*500)
else
iBiaya 2000
Output(iBiaya)
END
#include
#include
int main()
{ int iMasuk, iKeluar, iLama;
long int iBiaya;
printf("Menghitung Biaya Parkir\n\n");
printf(" Jam Masuk : ");
scanf("%d",&iMasuk);
printf(" \nJam Keluar : ");
scanf("%d",&iKeluar);
if (iKeluar >= iMasuk)
iLama = iKeluar - iMasuk;
else
iLama = (12-iMasuk) + iKeluar;
if (iLama > 2)
iBiaya = 2000 + ((iLama - 2)*500);
else
iBiaya = 2000;
printf("\n\n Biaya parkir adalah : Rp %d \n", iBiaya);
Program:
system("PAUSE");
return 0;
http://awanrimbawan.wordpress.com
P a g e 5}
04Nov2010
3. Soal: Penggabungan Resistor
Algoritma
Menghitung_Resistor
Tulis
program
untuk menghitung resistor pengganti dari 3 buah resistor
yang disusun secara seri atau paralel. Rumus untuk resistor pengganti
KAMUS DATA
sbb:
iPilihan: Integer
Seri:
Rgab
= R1 + R2 + R3
fR1, fR2, fR3,
fResPengganti:
Float
Paralel:
1/Rgab = 1/R1 + 1/R2 + 1/R3
BEGIN
Besar
R1, R2 dan R3 serta jenis penyusunan (seri/paralel) diinput oleh
user.Input(fR1,fR2,fR3)
Input(iPilihan)
Case iPilihan
1: fResPengganti fR1+ fR2+ fR3
2: fResPengganti (1.0/fR1)+ (1.0/fR2)+ (1.0/fR3)
fResPengganti 1.0/fResPengganti
Otherwise: output(“pilihan salah”)
End Case
Algoritma:
http://awanrimbawan.wordpress.com
Output(fResPengganti)
Page 6
END
04Nov2010
#include
#include
/*Resistor Pengganti. Modul Praktikum Poltek. hal 27*/
int main()
{ int iPilihan;
float fR1, fR2, fR3;
float fResPengganti;
printf("Menghitung Resistor Pengganti");
printf("\n\nMasukkan Nilai R1: ");
scanf("%f",&fR1);
printf("\nMasukkan Nilai R2: ");
scanf("%f",&fR2);
printf("\nMasukkan Nilai R3: ");
scanf("%f",&fR3);
printf(" \n\nPenyusunan Resistor: ");
printf("\n 1.Seri");
printf("\n 2.Paralel");
printf("\nMasukkan pilihan penyusunan (1 atau 2): ");
scanf("%d",&iPilihan);
switch (iPilihan)
{ case 1:
fResPengganti = fR1+ fR2+ fR3;
break;
case 2:
fResPengganti = (1.0/fR1)+ (1.0/fR2)+ (1.0/fR3);
fResPengganti = 1.0/fResPengganti;
break;
default:
printf("inputan salah");
}
printf("\n\nBesar resistor pengganti adalah : %.2f \n",
Program:
fResPengganti);
system("PAUSE");
return 0;
http://awanrimbawan.wordpress.com
}
Page 7
04Nov2010
4. Soal: Harga barang
Buatlah program untuk menyelesaikan masalah berikut :
Program akan menerima masukan berupa kode, jenis dan harga, dengan
jenis adalah "A", "B", dan "C". Untuk setiap jenis, masing-masing akan
diberikan diskon sebesar 10% untuk A, 15% untuk B, dan 20% untuk C.
http://awanrimbawan.wordpress.com
Page 8
04Nov2010
Program akan menghitung berapa harga setelah didiskon.
Contoh masukan :
Jenis = B
kode = 10
harga = 10000
Contoh keluaran :
Jenis barang B mendapat diskon = 15%, Harga setelah didiskon = 8500
Algoritma:
Algoritma Menghitung_Barang
#include
KAMUS DATA
#include
iKode,iHarga:integer
#include
cJenis: character
int main()
BEGIN
{ int iKode,iDiskon;
Input(cJenis)
char cJenis;
Input(iKode)
long int iHarga, iHDiskon;
Input(iHarga)
printf(" Jenis : ");
Case(cJenis)
scanf("%c",&cJenis);
'A': iHDiskon 0,9 * iHarga
'B': iHDiskon 0,85 * iHarga
printf(" Kode : ");
'C': iHDiskon 0,8 * iHarga
scanf("%d",&iKode);
End Case
printf(" Harga : ");
output(iHDiskon)
scanf("%d",&iHarga);
END
switch (cJenis)
{ case 'A':
iDiskon=10;
iHDiskon = 0.9 * iHarga;
break;
case 'B':
iDiskon=15;
iHDiskon = 0.85 * iHarga;
break;
case 'C':
iDiskon=20;
iHDiskon = 0.8 * iHarga;
break;
default:
printf("inputan salah");
}
Program:
printf("\n\n Jenis barang %c mendapat diskon %d %%, Harga
setelah didiskon : Rp %d \n", cJenis, iDiskon, iHDiskon);
system("PAUSE");
return 0;
}
http://awanrimbawan.wordpress.com
Page 9
04Nov2010
5. Soal: Gaji karyawan mingguan
Sebuah perusahaan swasta menggaji karyawannya secara mingguan
dengan hitungan sebagai berikut :
golongan 1 dengan upah per jam 3.000 rupiah
http://awanrimbawan.wordpress.com
P a g e 10
04Nov2010
golongan 2 dengan upah per jam 3.500 rupiah
golongan 3 dengan upah per jam 4.000 rupiah
golongan 4 dengan upah per jam 5.000 rupiah
Bila seorang karyawan bekerja kurang atau sama dengan 40 jam per
minggu, akan dihitung dengan upah per jam seperti di atas, tetapi apabila
bekerja lebih dari 40 jam, maka lebihnya akan dihitung sebagai lembur
dengan upah per jam 1½ kali upah biasa.
Tulis algoritma untuk menghitung gaji mingguan karyawan, bila golongan
dan jam kerja diinput dari keyboard.
Algoritma:
#include
Algoritma
Menghitung_Gaji
#include
#include
KAMUS DATA
iGol, iJam, iUpah, iGaji : Integer
int main()
{
int iGol,iJam, iUpah;
BEGIN
int iGaji;
Input(iGol)
iUpah=0;
Input(iJam)
printf("
Jam Kerja : ");
iUpah Jumlah
0
scanf("%d",&iJam);
Case(iGol)
printf("
Golongan(1,2,3,4)
: ");
1: iUpah
3000
scanf("%d",&iGol);
2: iUpah 3500
3: iUpah 4000
switch
(iGol) 5000
4: iUpah
{
case
1:
End case
iUpah=3000;
break;
If (iJam
> 40) Then
case
2: 40 * iUpah + ((iJam - 40) * 1.5 * iUpah)
iGaji
Else iUpah=3500;
break;
iGaji
iJam * iUpah
case
End if 3:
iUpah=4000;
break;
Output(iGaji)
case 4:
iUpah=5000;
END
break;
default:
printf("inputan golongan salah");
}
if (iJam > 40)
iGaji = 40 * iUpah + ((iJam - 40) * 1.5 * iUpah);
else
Program:
iGaji = iJam * iUpah;
printf("\n\n Gaji : Rp %d \n", iGaji);
system("PAUSE");
return 0;
http://awanrimbawan.wordpress.com
}
P a g e 11
04Nov2010
6. Soal: Menghitung selisih waktu dalam jam dan
menit
Buat program menghitung selisih waktu (dalam jam dan menit)
berdasarkan jam mulai (jam,menit) dengan jam selesai (jam,menit). Data
yang diinput adalah jam dan menit mulai, jam dan menit selesai.
http://awanrimbawan.wordpress.com
P a g e 12
04Nov2010
Contoh Masukan dan Keluaran:
Mulai
(jam,menit)
Selesai
(jam,menit)
Lama
(menit)
Lama
(jam,menit
)
10:30
12:10
100
1 jam 40
menit
10:30
1:40
130
3 jam 10
menit
Algoritma:
ALGORITMA MENGHITUNG_JAM_MENIT
KAMUS DATA
iJamStart,iMenitStart,iMenitStop,iJamStop: integer
iTotMenit1,iTotMenit2,iSelangMenit,iJamDurasi,iMenitDurasi:
integer
BEGIN
Input(iJamStart)
#include
Input(iMenitStart)
#include
#include
Input(iJamStop)
Input(iMenitStop)
int main()
{ int iJamStart,iMenitStart,iJamStop,iMenitStop,iSelangMenit,
iTotMenit1 iJamStart * 60 + iMenitStart
iJamDurasi, iMenitDurasi ;
iTotMenit2 iJamStop * 60 + iMenitStop
long int iTotMenit1, iTotMenit2;
If (iTotMenit2 >= iTotMenit1) Then
iSelangMenit iTotMenit2 - iTotMenit1
printf(" Masukkan Waktu Mulai (contoh 10:05) : ");
Else
scanf("%d:%d",&iJamStart,&iMenitStart);
iSelangMenit ((12*60)-iTotMenit1) + iTotMenit2
End if
printf(" Masukkan Waktu Berhenti (contoh 11:04) : ");
scanf("%d:%d",&iJamStop,&iMenitStop);
iJamDurasi iSelangMenit div 60
iMenitDurasi iSelangMenit mod 60;
iTotMenit1 = iJamStart * 60 + iMenitStart;
iTotMenit2 = iJamStop * 60 + iMenitStop;
Output(iJamDurasi)
Output(iMenitDurasi)
if (iTotMenit2 >= iTotMenit1)
iSelangMenit = iTotMenit2 - iTotMenit1;
END
else
iSelangMenit = ((12*60)-iTotMenit1)+iTotMenit2;
Program:
iJamDurasi = iSelangMenit / 60;
iMenitDurasi = iSelangMenit % 60;
printf("\n\n Durasi adalah %d Jam %d Menit\n", iJamDurasi,
iMenitDurasi);
system("PAUSE");
http://awanrimbawan.wordpress.com
return 0;
P a g e 13
}
04Nov2010
7. Soal: Kuadran dari koordinat titik
Buat program dengan masukan koordinat sebuah titik (x,y) dalam sebuah
system koordinat kartesian, kemudian ditentukan di kuadran mana titik
tersebut.
Contoh Masukan :
ALGORITMA Menghitung_Kuadran
Koordinat titik (x,y) : 10 -20
KAMUS DATA
Contoh keluaran:
ix, iy: Integer
Titik 10,-20 berada pada kuadran 4
BEGIN
Input(ix,iy)
If (ix >= 0)
Algoritma:
If (iy >=0)
Output(“Kuadran I”)
else
Output(“Kuadran IV”)
else
if (iy >=0)
Output(“Kuadran II”)
http://awanrimbawan.wordpress.com
else
P a g e 14
Output(“Kuadran III”)
END
04Nov2010
Program:
#include
#include
int main()
{ int ix, iy;
printf(" Masukkan koordinat x,y : ");
scanf("%d,%d",&ix,&iy);
if (ix >= 0)
if (iy >=0)
printf("\nKuadran
else
printf("\nKuadran
else
if (iy >=0)
printf("\nKuadran
else
printf("\nKuadran
I\n");
IV\n");
II\n");
III\n");
system("PAUSE");
return 0;
}
8. Soal: Tunjangan Anak
Pemerintah hanya memberikan tunjangan anak dari PNS maksimal sampai
3 anak saja. Setiap anak diberikan tunjangan sebesar 10% dari gaji pokok.
Tulis program untuk menghitung total tunjangan anak, bila gaji pokok dan
jumlah anak diinput oleh user.
http://awanrimbawan.wordpress.com
P a g e 15
04Nov2010
Contoh Masukan dan Keluaran:
Jumla
h
anak
Gaji Pokok
Tunjangan Anak
0
1.000.000
0
1
1.000.000
100.000
3
1.000.000
300.000
5
1.000.000
300.000
Algoritma:
ALGORITMA Menghitung_Tunjangan
KAMUS DATA
iGajiPokok, iTunjangan, iJmlAnak: Integer
BEGIN
Input(iGajiPokok)
Input(iJmlAnak)
If (iJmlAnak 0) Then
iTunjangan iJmlAnak * 0.1 * iGajiPokok
Else If (iJmlAnak > 3)
iTunjangan 3 * 0.1 * iGajiPokok
Else
iTunjangan 0
End
if
#include
#include
Output ( iTunjangan)
int main()
END
{ int iGajiPokok, iTunjangan, iJmlAnak;
printf(" Masukkan Gaji Pokok : ");
scanf("%d",&iGajiPokok);
printf(" Masukkan JmlAnak : ");
scanf("%d",&iJmlAnak);
Program:
if (iJmlAnak0)
iTunjangan = iJmlAnak * 0.1 * iGajiPokok;
else if (iJmlAnak>3)
iTunjangan = 3 * 0.1 * iGajiPokok;
else
iTunjangan =0;
printf("\nTunjangan Anak adalah sebesar Rp.%d \n",
iTunjangan);
http://awanrimbawan.wordpress.com
system("PAUSE");
P a g e 16 return 0;
}
04Nov2010
9. Soal: Minibus pariwisata
Sebuah acara wisata digunakan minibus kapasitas 7 penumpang per
mobil. Apabila terjadi kelebihan penumpang (walaupun cuma 1), maka
minibus yang digunakan ditambah 1. Tulis program untuk menghitung
jumlah minibus yang diperlukan, bila jumlah pesertanya diinput.
Contoh Masukan dan Keluaran:
Jumlah
Peserta
Jumlah Minibus
5
1
7
1
ALGORITMA Menghitung_Tunjangan
8
2
KAMUS DATA
iPeserta,iMinibus : Integer
BEGIN
Output(iPeserta)
iMinibus0
Algoritma:
If (iPeserta > 7) Then
iMinibus iPeserta / 7
If (iPeserta % 7 != 0) Then
iMinibus iMinibus + 1
End If
Else if (iPeserta > 0) Then
iMinibus 1
End if
http://awanrimbawan.wordpress.com
Output(iMinibus)
P a g e 17
END
04Nov2010
Program:
#include
#include
int main()
{ int iPeserta,iMinibus;
printf(" Masukkan jml peserta : ");
scanf("%d",&iPeserta);
iMinibus=0;
if (iPeserta > 7){
iMinibus = iPeserta / 7;
if (iPeserta % 7 != 0)
iMinibus++;
}else if (iPeserta > 0)
iMinibus=1;
printf("Minibus yg diperlukan: %d\n",iMinibus);
system("PAUSE");
return 0;
10. }
Soal: Menentukan N hari yang lalu tanpa
menginputkan Hari Ini
Diinput jumlah berapa hari yang lalu, kemudian ditentukan nama harinya.
Tulis program untuk menentukan nama hari dari sekian hari yang lalu
yang diinput. (Catatan, gunakan Hari ini = ‘Senin’)
Contoh Masukan dan Keluaran:
N hari yang lalu
Nama Hari
http://awanrimbawan.wordpress.com
P a g e 18
04Nov2010
0
Senin
1
Minggu
10
Jumat
20
Selasa
#include
Algoritma:
#include
#include
ALGORITMA
Menentukan_Nama_Hari_1
int
main()
KAMUS
DATA
{ iNHari,iBelakang
int iNHari,iBelakang;
: Integer
char
cNamaHari[15];
cNamaHari[15]:
String
printf("Masukkan N Hari yg lalu : ");
BEGIN
scanf("%d",&iNHari);
Input(iNHari)
iBelakang =
;
(iNHari+1)
( iNHari + 1)
switch
(iBelakang){
Case (iBelakang)
case
1:
1: cNamaHari
"Senin"
strcpy(cNamaHari,"Senin");
2: cNamaHari
"Selasa"
break;
3: cNamaHari
"Rabu"
case
2:
4: cNamaHari "Kamis"
strcpy(cNamaHari,"minggu");
5: cNamaHari
"Jumat"
break;
6: cNamaHari
"Sabtu"
case
3:
7: cNamaHari
"Minggu"
strcpy(cNamaHari,"sabtu");
Otherwise:
cNamaHari "Inputan salah"
break;
End Case
case 4:
strcpy(cNamaHari,"jumat");
Output(cNamaHari)
break;
END case 5:
strcpy(cNamaHari,"kamis");
break;
case 6:
strcpy(cNamaHari,"rabu");
break;
case 7:
strcpy(cNamaHari,"selasa");
break;
default:
Program:strcpy(cNamaHari,"Inputan salah");
}
printf("\n Sekarang Hari Senin. %d Hari yang lalu adalah hari
%s \n",iNHari,cNamaHari);
system("PAUSE");
return 0;
}
http://awanrimbawan.wordpress.com
P a g e 19
04Nov2010
11.
Soal: Menentukan N hari yang lalu dengan
menginputkan Hari Ini
Diinput jumlah berapa hari yang lalu, kemudian ditentukan nama harinya.
Tulis program untuk menentukan nama hari dari sekian hari yang lalu dan
nomor hari ini yang diinput.
Contoh Masukan dan Keluaran:
N hari yang
Hari ini
Nama Hari
http://awanrimbawan.wordpress.com
P a g e 20
04Nov2010
lalu
0
1
Senin
3
3
Minggu
5
4
Sabtu
Algoritma:
#include
#include
ALGORITMA Menghitung_Hari
#include
KAMUS DATA
int main()
iNHari,iHariIni,iBelakang : Integer
{ int iNHari,iHariIni,iBelakang;
cNamaHari[15] : String
char cNamaHari[15],cNamaHariLalu;
cNamaHariLalu: Char
printf("Masukkan Kode Hari ini : ");
BEGIN
scanf("%d",&iHariIni);
Input(iHariIni)
printf("Masukkan N Hari yg lalu : ");
Input(iNHari)
scanf("%d",&iNHari);
If (iHariIni>iNHari) Then
if (iHariIni>iNHari)
iBelakang iHariIni - iNHari
iBelakang = iHariIni - iNHari;
Else
else
iBelakang 7 - (iNHari - iHariIni)
iBelakang= 7 - (iNHari - iHariIni);
End If
switch (iBelakang){
Case (iBelakang)
case 1: strcpy(cNamaHari,"Senin");
1: cNamaHari "Senin"
break;
2: cNamaHari "Selasa"
case 2:strcpy(cNamaHari,"Selasa");
3: cNamaHari "Rabu"
break;
4: cNamaHari "Kamis"
case 3:strcpy(cNamaHari,"Rabu");
5: cNamaHari "Jumat"
break;
6: cNamaHari "Sabtu"
case 4:
strcpy(cNamaHari,"Kamis");
7: cNamaHari "Minggu"
break;
End Case
case 5:
strcpy(cNamaHari,"Jumat");
Output(cNamaHari)
break;
END
case 6:
strcpy(cNamaHari,"Sabtu");
break;
case 7:
strcpy(cNamaHari,"Minggu");
Program:
break;
default:
strcpy(cNamaHari,"Inputan salah");
}
printf("\n %d Hari yang lalu adalah hari %s \
n",iNHari,cNamaHari);
system("PAUSE");
return 0;
http://awanrimbawan.wordpress.com
}
P a g e 21
04Nov2010
12.
Soal: Penghitungan Pembayaran Listrik
PLN menerapkan pembayaran listrik perumahan dengan cara perhitungan
sebagai berikut :
- Untuk golongan 1 tarif : Rp 1000/kWh
- Untuk golongan 2 tarif : Rp 2000/kWh
Dengan syarat penghitungan:
http://awanrimbawan.wordpress.com
P a g e 22
04Nov2010
Minimum pembayaran adalah 100 kWh sedangkan untuk pemakaian 1000
kWh dan seterusnya tarifnya ditambah 10% dari total pembayaran.
Golongan
1
2
1
Pemakai
an
50
150
1000
Bayar
100.000
300.000
1.100.000
ALGORITMA Menghitung_Pembayaran_Listrik
KAMUS DATA
iGol,iPakai,iTarif,iBayar : Integer
BEGIN
Input(iGol)
Input(iPakai)
If ( iGol = 1) Then
iTarif 1000
Else
iTarif 2000
End If
If (iPakai < 100) Then
iBayar 100 * iTarif
Else If ( iPakai >= 1000)
iBayar iPakai * iTarif * 1.1
Else
iBayar iPakai * iTarif
End If
Output(iBayar)
END
SOURCE CODE:
#include
#include
int main()
{ int iGol,iPakai,iTarif,iBayar;
printf("masukkan golongan: ");scanf("%d",&iGol);
http://awanrimbawan.wordpress.com
P a g e 23
04Nov2010
printf("masukkan jam pemakaian: ");scanf("%d",&iPakai);
if (iGol == 1 )
{iTarif=1000;}
else
{iTarif=2000;}
if (iPakai < 100)
{iBayar=100*iTarif;}
else if (iPakai >= 1000)
{iBayar=iPakai*iTarif*1.1;}
else
{iBayar=iPakai * iTarif;}
printf("\n yg harus dibayarkan %d\n",iBayar);
system("PAUSE");
return 0;
}
13.
Soal: Penghitungan Bulan
Buatlah algoritma untuk menghitung bulan pernikahan dengan menginputkan
bulan saat ini dan berapa bulan kedepan. Misal data:
Bulan Saat Ini
N Bulan Kedepan
1
12
10
2
1
5
Bulan
Pernikahan
3
1
3
ALGORITMA Menghitung_Bulan_Pernikahan
KAMUS DATA
iBlnSekarang, iNbulan, iBlnPernikahan : Integer
BEGIN
Input (iBlnSekarang)
Input (iNBulan)
http://awanrimbawan.wordpress.com
P a g e 24
04Nov2010
If ( (iBlnSekarang + iNbulan)