Kompleksitas Algoritma (Efisiensi Waktu)

Kasus 1
                Menghitung jumlah deret dari suatu perulangan for, misal inputan berisi 10 maka hasil penjumlahan perulangan tersebut adalah 55, didapat dari 1+2+3+4+5+6+7+8+9+10=55, kemudian tentukan t(n)nya.
Program HitungJumlahDeret;
{I.S :    }
{F.S :    }

Kamus
      i, n, jumlah : integer 
     
Algoritma

input(n)     
jumlah ← 0
for i ← 1 to n do
jumlah ← jumlah + i
endfor
output(jumlah)   
EndProgram

Operasi Dasar
C(n)
Cop
Input
1
v
3
w
+
1
x
output
1
y

Penyelesaian
 T(n) = C(n)*Cop
 T(n) = v + 3w + x + y
Keterangan :
 T(n) : waktu eksekusi algoritma
 C(n) : Jumlah suatu operasi dasar dalam algoritma
 Cop : waktu eksekusi suatu operasi dasar dalam algoritma



Kasus 2
                Menghitung Jarak tempuh sebuah sepeda dalam satuan centimeter(CM) dan diproses menjadi tampilan satuan Km dan M, kemudian tentukan t(n)nya.

Program JarakTempuhSepeda;
{I.S :    memasukkan data jarak yang ditempuh oleh sebuah sepeda}
{F.S :    Menampilkan jarak yang telah dikonversi}

Kamus
      x:integer 
      km,m,cm:integer   
      sisa_km:integer  

Algoritma

output('Masukan jarak tempuh sepeda dalam cm : ')
input(x)     
km ← x div 100000
sisa_km ← x mod 100000
m ← sisa_km div 100 
cm ← sisa_km mod 100
output ('Jarak tempuh sepeda tersebut adalah : ')
output (km,' Km, ')   
output(m,' M')  
EndProgram

Operasi Dasar
C(n)
Cop
input
1
A
output
4
B
4
C
div
1
D
mod
2
E

Cara Penghitungan  :
T(n) = C(n)*Cop
T(n) = A+ 4B + 4C + 1D + 2E

Keterangan :
T(n) : waktu eksekusi algoritma.
C(n) : Jumlah suatu operasi dasar dalam algoritma.
Cop : waktu eksekusi suatu operasi dasar dalam algoritma.




Kasus 3
                Menampilkan output dari perulangan while berupa kalimat “Kita akan belajar dengan giat” sebanyak 10 kali dan dilanjutkan dengan kalimat “Kelompok analgokita.blogspot.co.id” dibawahnya, kemudian tentukan t(n)nya.
 
Program PerulanganWhileKalimat;
{I.S : }
{F.S : }

Kamus
      k:integer 

Algoritma
      k ← 1
while k ≤ 10 do
output(“Kita akan belajar dengan giat”)
k ← k + 1
endwhile
output(“Kelompok analgokita.blogspot.co.id”)  
EndProgram

     Operasi Dasar
C(n)
Cop
2
A
+
1
C
output
2
B

Penyelesaian
 T(n) = C(n) * Cop
 T(n) = 2A + C + 2B

Keterangan :
 T(n) : waktu eksekusi algoritma.
 C(n) : Jumlah suatu operasi dasar dalam algoritma.
 Cop : waktu eksekusi suatu operasi dasar dalam algoritma.



Kasus 4
                Menghitung keliling lingkaran, variabel yang digunakan jari-jari(r) dan phi=3,14, rumus keliling lingkaran = 2 x phi x r, kemudian tentukan t(n)nya .

 Program MenghitungKelilingLingkaran;
{I.S : }
{F.S : }

Kamus
      r:integer
      keliling:real
      phi:real 

Algoritma
      phi ← 3,14
input(r)
keliling ← 2 * (phi*r)
output(keliling)  
EndProgram

     Operasi Dasar
C(n)
Cop
*
2
A
input
2
B
output
2
C

Cara Penghitungan  :
T(n) = C(n)*Cop
T(n) = 2A+ 2B + 2C

Keterangan :
T(n) : waktu eksekusi algoritma.
C(n) : Jumlah suatu operasi dasar dalam algoritma.
Cop : waktu eksekusi suatu operasi dasar dalam algoritma.



Kasus 5
                Menentukan suatu perbandingan antara harga A dan harga B. kemudian tentukan t(n)nya .

Program Perbandingan
{I.S.  : }
{F.S. : }
Kamus
A, B : integer
Algoritma
      Input(A,B)
      If (A<B)
            Then
                  Output(“Harga A lebih kecil dari Harga B”)
            Else
                  Output(“Harga B lebih kecil dari Harga A”)
      Endif

Endprogram 

     Operasi Dasar
C(n)
Cop
input
1
A
<
1
C
output
2
B

Penyelesaian
          T(n) = C(n)*Cop

          T(n) = A + C + 2B

Keterangan :
T(n) : waktu eksekusi algoritma.
C(n) : Jumlah suatu operasi dasar dalam algoritma.
Cop : waktu eksekusi suatu operasi dasar dalam algoritma.