Algoritma Rekursif dan Iteratif Semester IV UIM Prodi Teknik Informatika

Apa Itu Algoritma Rekursif dan Iteratif?



Ok Kawan Di sini saya akan sedikit  sharing materi algoritma, sebelum saya menjelaskan algoritma rekursif dan algoritma iteratif, saya mau tanya ke kamu yang lagi baca-baca tulisan saya di blog ini, kira-kira menurut kamu sendiri algoritma itu apa sih? ok di jawab sendiri ya,!!

Algoritma merupakan rangkaian penyelesaian masalah yang di susun secara sistematis.
ok lanjut ke  pembahasan algoritma rekursif dan iteratif

A. DEFINISI ALGORITMA REKURSIF dan ALGORITMA ITERATIF.


  • Algoritma Rekursif merupakan Algoritma Yang Hanya melakukan proses pemanggilan fungsi pada dirinya sendiri, biasnya algoritma rekursif ini proses pemanggilannya menggunakan perulangan IF-ELSE.
  • Algoritma iteratif merupakan proses penyelesaian program algoritma dengan menggunakan algortma perulangan dan operasi yang sederhana.

B. PERBEDAAN ALGORITMA REKURSIF dan ALGORITMA ITERATIF.

Setiap sesuatu pasti memiliki  kelebihan dan kekurangan masing-masing, begitupun dengan  algoritma, di sini saya akan memaparkan  kelebihan sekaligus kekurangan  dari kedua algoritma tersebut.


  • KELEBIHAN ALGORITMA REKURSIF
  1. Sangat mudah untuk melakukan perulangan dengan batasan yang luas dalam artian melakukan perulangan dalam skala yang besar.
  2. Dapat melakukan perulangan dengan batasan fungsi.
  • KEKURANGAN ALGORITMA REKURSIF
  1. Tidak bisa melakukan nested loop atau looping bersarang.
  2. Biasanya membuat fungsi sulit untuk dipahami, hanya cocok untuk persoalan tertentu saja.
  3. Trace error sulit.
  4. Memerlukan stack yang lebih besar, sebab setiap kali fungsi dipanggil, variabel lokal dan parameter formal akan ditempatkan ke stack dan ada kalanya akan menyebabkan stack tak cukup lagi (Stack Overrun).
  5. Proses agak berbelit-belit karena terdapat pemangilan fungsi yang berulang-ulang dan pemanggilan data yang ditumpuk.
Contoh Algoritma Rekursif Faktorial

#include<iostream.h>
#include<conio.h>
void main()
{
int bil, n;
long int hasil;
cout<<"n = ";
cin>> n;

hasil=1;
for(bil=n; bil>=1;bil--)
{
hasil=hasil*bil;
}
cout<<"n!= "<<hasil<<"\n";
getch();
}

Program Ini Bisa Di Coba Menggunakan Aplikasi Borland C++ Seperti Di Bawah Ini

Hasil Program Setelah di Running


  • KELEBIHAN ALGORITMA ITERATIF
  1. Mudah dipahami dan mudah melakukan debugging ketika ada perulangan yang salah.
  2. Dapat melakukan nested loop atau yang disebut dengan looping bersarang.
  3. Proses lebih singkat karena perulangan terjadi pada kondisi yang telah disesuaikan.
  4. Jarang terjadi overflow karena batasan dan syarat perulangan yang jelas.
  • KEKURANGAN ALGORITMA ITERATIF
  1. Tidak dapat menggunakan batasan berupa fungsi.
  2. Perulangan dengan batasan yang luas akan menyulitkan dalam pembuatan program perulangan itu sendiri.

Posting Komentar

0 Komentar