Kali ini kami akan membahas tentang
efisiensi waktu eksekusi dalam suatu algoritma.
Berikut ini contoh - contoh
algoritma dan perhitungan waktunya {T(n)}
Contoh 1 : Algoritma Menghitung Faktorial
procedure factorial(input a:integer, output f:integer)
Deklarasi
i : integer
Algoritma
f <- 1
a <- 5
for i <- 1 to a do
f <- f*i
endfor
output(Faktorial dari a adalah : f)Perhitungan T(n)
operasi
dasar
|
C(5)
|
C(n)
|
Cop
|
<-
|
13
|
2+2n+1
|
x
|
*
|
5
|
n
|
y
|
output
|
1
|
1
|
z
|
T(n) = (2+2n+1)x + ny + z
T(5) = 13x + 5y + z
Contoh 2 : Algoritma Cetak Nama Lengkap
program ctkNamaLengkap
Deklarasi
nama : array [1..10] of string[15]
nmLkp : string [150]
n, i : integer
Algoritma
n <- 5
nmLkp <- ' '
for i <- 1 to n do
output("Masukkan nama ke ",i," : ")
input(nama[i])
nmLkp <-
nmLkp + nama[i] + ' '
endfor
output("Nama
lengkap anda adalah",nmLkp)
Perhitungan T(n)
T(n) = (2+2n+1)a + 2nb + (n+1)c + nd
operasi dasar
|
C(5)
|
C(n)
|
Cop
|
<-
|
13
|
2+(2n+1)
|
a
|
+
|
10
|
2n
|
b
|
output
|
6
|
n+1
|
c
|
input
|
5
|
n
|
d
|
T(n) = (2+2n+1)a + 2nb + (n+1)c + nd
T(5) = 13a + 10b + 7c + 5d
Contoh 3 : Algoritma
Menghitung Kecepatan Kendaraan
PROGRAM MenghitungKecepatan
Deklarasi
v,s,t : integer
Algoritma
input(s)
input(t)
v <- s/t
output(v)
Deklarasi
v,s,t : integer
Algoritma
input(s)
input(t)
v <- s/t
output(v)
Perhitungan T(n)
operasi dasar
|
C(1)
|
C(n)
|
Cop
|
input
|
2
|
2n
|
j
|
<-
|
1
|
n
|
k
|
/
|
1
|
n
|
l
|
output
|
1
|
n
|
m
|
T(n) = 2nj + nk + nl + nm
T(1) = 2j + k + l + m
Contoh 4 : Algoritma Menghitung Gaji
T(n) = 5np + 5nq + 3nr + 3ns + nt + 7nu
Perhitungan T(n)
T(n) = nw + na + 2ns + nd
T(1) = 2j + k + l + m
Contoh 4 : Algoritma Menghitung Gaji
program Gaji
Deklarasi
nik, nama
: string
jhari,
tjabatan, tmakan, ttransport, gaji_pokok, gaji_kotor, pajak, gaji_berih : real
Algoritma
Input (nik)
Input (nama)
Input (gaji_pokok)
Input (tjabatan)
Input (jhari)
Tmakan <- 15000*jhari
Ttransport
<- 10000*jhari
Gaji_kotor
<- gaji_pokok + tjabatan + tmakan + ttransport
Pajak <-
0.1 * gaji_kotor
Gaji_bersih
<- gaji_kotor – pajak
Output (nik)
Output
(nama)
Output (tmakan)
Output (ttransport)
Output (gaji_kotor)
Output (pajak)
Output(gaji_bersih)
Perhitungan T(n)
operasi dasar
|
C(1)
|
C(n)
|
Cop
|
input
|
5
|
5n
|
p
|
<-
|
5
|
5n
|
q
|
*
|
3
|
3n
|
r
|
+
|
3
|
3n
|
s
|
-
|
1
|
n
|
t
|
output
|
7
|
7n
|
u
|
T(n) = 5np + 5nq + 3nr + 3ns + nt + 7nu
T(1) = 5p + 5q + 3r + 3s + t + 7u
Contoh
5 : Menghitung Luas Lingkaran
Program
luas_lingkaran;
deklarasi
const phi=3.14
r : integer
data : real
Algoritma
input(r)
data<- phi*(r*r)
output(data);
Perhitungan T(n)
operasi dasar
|
C(1)
|
C(n)
|
Cop
|
Input
|
1
|
n
|
w
|
<-
|
1
|
n
|
a
|
*
|
2
|
2n
|
s
|
output
|
1
|
1
|
d
|
T(n) = nw + na + 2ns + nd
T(1) = w + a + 2s + d
No comments:
Post a Comment