1. Algoritma Konversi Suhu ( ͦ C → ͦ K)
Program KonversiFahrenheitCelcius
Deklarasi
F,C : real
x,y,step : integer
Algoritma
Input
(x,y,step)
F ← x
while (F ≤ y)
do
C ← (5/9)*(F - 32)
output (F,C)
F ← F + step
endwhile
Perhitungan kompleksitas waktu:
A.Pengisian
Nilai
SYNTAX
|
JUMLAH
|
input x
|
1
|
input y
|
1
|
input step
|
1
|
F← x
|
1
|
C
← (5/9)*(F -
32)
|
N
|
output F
|
N
|
output C
|
N
|
F ← F
+ step
|
N
|
TOTAL
|
4+4n
|
B.Operasi
Penjumlahan
SYNTAX
|
JUMLAH
|
F
+ step
|
1
|
TOTAL
|
1
|
C.Operasi
Pengurangan
SYNTAX
|
JUMLAH
|
F
- 32
|
1
|
TOTAL
|
1
|
D.Operasi
Pembagian
SYNTAX
|
JUMLAH
|
5/9
|
1
|
TOTAL
|
1
|
E.Operasi
Perkalian
SYNTAX
|
JUMLAH
|
(5/9)*(F-32)
|
1
|
TOTAL
|
1
|
T(n)=t1+t2+t3+t4+t5=(4+4n)A + B+ C + D + E
2. Algoritma
Hitung Diskon
Program HitungDiskon
Deklarasi
harga,
diskon, total : real
Algoritma
input (harga)
input (harga)
if (harga > 300000)
then
diskon ← harga * 0.4
total ← harga - diskon
total ← harga - diskon
else
if
(harga ≥ 150000) and (harga ≤ 300000)
then
diskon
← harga * 0.2
total
← harga - diskon
else
diskon ← harga *
0.1
total
← harga - diskon
endif
endif
output (total)
Perhitungan kompleksitas waktu:
A.Pengisian Nilai
SYNTAX
|
JUMLAH
|
input harga
|
1
|
diskon ← harga *
0.4
|
1
|
total ← harga -
diskon
|
n
|
diskon ← harga *
0.2
|
1
|
total ← harga -
diskon
|
n
|
diskon ← harga *
0.1
|
1
|
total
← harga - diskon
|
n
|
harga
> 300000
|
1
|
harga
≥ 150000
|
1
|
harga
≤ 300000
|
1
|
output (total)
|
1
|
TOTAL
|
8
+ 3n
|
B.Operasi
Pengurangan
SYNTAX
|
JUMLAH
|
harga - diskon
|
3
|
TOTAL
|
3
|
C.Operasi
Perkalian
SYNTAX
|
JUMLAH
|
harga * 0.4
|
1
|
harga * 0.2
|
1
|
harga * 0.1
|
1
|
TOTAL
|
3
|
T(n) = t1+t2+t3 = (8 + 3n)A + 3B + 3C
3. Algoritma
Harga Sewa Kamar Hotel Berdasarkan Lama Menginap
Program HargaSewaKamar
Deklarasi
LM : Byte
KET : String
HK, JML,BYRAKH : Real
Algoritma
input (LM)
input (HK)
JML ←
LM * HK
If JML >
300000
Then
Then
BYRAKH
← JML - (JML * 0.3)
Else
If
JML > 200000 Then
BYRAKH
← JML - (JML * 0.2)
Else
If
JML > 100000
Then
Then
BYRAKH
← JML - (JML * 0.1)
Else
BYRAKH
← JML
Endif
Endif
Endif
If JML >
100000 Then
KET
← ‘DAPAT DISC’
Else
KET
← ‘TAK DISC’
Endif
output (JML)
output (KET)
output (BYRAKH)
Perhitungan kompleksitas waktu:
A.Pengisian
Nilai
SYNTAX
|
JUMLAH
|
input LM
|
n
|
input HK
|
n
|
JML ← LM * HK
|
n
|
JML > 300000
|
1
|
BYRAKH ← JML - (JML * 0.3)
|
n
|
JML > 200000
|
1
|
JML > 100000
|
1
|
BYRAKH ←
JML - (JML * 0.1)
|
n
|
BYRAKH ←
JML
|
n
|
KET ←
‘DAPAT DISC’
|
1
|
KET ←
‘TAK DISC’
|
1
|
output JML
|
1
|
output KET
|
1
|
output BYRAKH
|
n
|
TOTAL
|
7
+ 7n
|
B.Operasi
Pengurangan
SYNTAX
|
JUMLAH
|
JML - (JML * 0.3)
|
1
|
JML - (JML * 0.2)
|
1
|
JML - (JML * 0.1)
|
1
|
TOTAL
|
3
|
C.Operasi
Perkalian
SYNTAX
|
JUMLAH
|
LM * HK
|
1
|
JML * 0.3
|
1
|
JML * 0.2
|
1
|
JML * 0.1
|
1
|
TOTAL
|
4
|
T(n)=t1+t2+t3=(7+7n)A+3B+4C
4. Algoritma
Menghitung Gaji Total Karyawan
Program Menghitung_Gatot
Deklarasi
NKaryawan : string
GPokok : integer
Pajak, Tunjangan, Gatot : real
Algoritma
Input(NKaryawan,GPokok)
Pajak ← 0.1 * GPokok
Tunjangan ← 0.2 * GPokok
Gatot ← GPokok + Tunjangan
Output(Gatot)
Perhitungan kompleksitas waktu:
A.Pengisian
Nilai
SYNTAX
|
JUMLAH
|
Input NKaryawan
|
1
|
Input GPokok
|
1
|
Pajak ← 0.1 *
GPokok
|
1
|
Tunjangan ← 0.2 *
GPokok
|
1
|
Gatot ← GPokok +
Tunjangan
|
N
|
Output(Gatot)
|
N
|
TOTAL
|
4+2N
|
B.Operasi
Penjumlahan
SYNTAX
|
JUMLAH
|
GPokok +
Tunjangan
|
1
|
TOTAL
|
1
|
C.Operasi
Perkalian
SYNTAX
|
JUMLAH
|
0.1 * GPokok
|
1
|
0.2 * GPokok
|
1
|
TOTAL
|
2
|
T(n)= t1+t2+t3 =(4+2N)A+ B+ 2C
5. Algoritma Gaji Pegawai
Program GajiPegawai
Deklarasi
NIK, Nama : String
Jhk, tunj.jabatan, tunj.makan,
tunj.transport, gaji_kotor, pajak, gaji_bersih : Real
Algoritma
input (NIK, Nama,
gaji_pokok, tunj.jabatan, Jhk)
tunj.makan ← 10000 * Jhk
tunj.transport ← 5000 * Jhk
gaji_kotor ← (gaji_pokok + tunj.jabatan
+ tunj.makan + tunj.transport)
pajak ← 0.1 * gaji_kotor
gaji_bersih ← (gaji_kotor –
pajak)
output (tunj.makan,
tunj.transport, gaji_kotor, pajak, gaji_bersih)
A.Pengisian
Nilai
SYNTAX
|
JUMLAH
|
Input NIK
|
1
|
Input
nama
|
1
|
Input gaji_pokok
|
1
|
Input tunj.jabatan
|
1
|
Input jhk
|
1
|
tunj.makan ← 10000 * Jhk
|
n
|
tunj.transport ← 5000 * Jhk
|
n
|
gaji_kotor ← (gaji_pokok + tunj.jabatan + tunj.makan +
tunj.transport)
|
n
|
pajak ← 0.1 * gaji_kotor
|
n
|
gaji_bersih ← (gaji_kotor – pajak)
|
n
|
Output
tunj.makan
|
1
|
Output
tunj.transport
|
1
|
Output
gaji_kotor
|
n
|
Output
pajak
|
1
|
Output
gaji_bersih
|
n
|
TOTAL
|
8
+ 7N
|
B.Operasi
Penjumlahan
SYNTAX
|
JUMLAH
|
gaji_pokok + tunj.jabatan + tunj.makan + tunj.transport
|
3
|
TOTAL
|
3
|
C.Operasi
Pengurangan
SYNTAX
|
JUMLAH
|
gaji_kotor – pajak
|
1
|
TOTAL
|
1
|
D.Operasi
Perkalian
SYNTAX
|
JUMLAH
|
10000 * Jhk
|
1
|
5000 * Jhk
|
1
|
0.1 * gaji_kotor
|
1
|
TOTAL
|
3
|
T(n)= t1+t2+t3+t4 =(8+7N)A+ 3B+ C + 3D
No comments:
Post a Comment