Algoritma Teknik Rekursif Algoritma Teknik Iteratif
10.5. Algoritma Teknik Iteratif
Teknik Iteratif algoritmanya seperti apa adanya terlihat jadi tidak begitu rumit. Pada tulisan di atas telah dijelaskan beberapa contoh menghitung faktorial secara iteratif. Untuk lebih jelasnya lihat contoh berikut: 4 = 4 x 3 x 2 x 1 3 = 3 x 2 x 1 2 = 2 x 1 1 = 1 Algoritmanya disini sangat jelas untuk faktorial menggunakan Teknik Iteratif tinggal mengulang operasi perkalian dari 1 sampai dengan banyaknya n. Pseudocode Teknik Iteratif: int Faktorialint n { int x = 1; forint i = 1; i = n; i++ x = x i; return x; } Dapat dilihat di atas bahwa iterasinya adalah mengulang perkalian x = x i dari i = 1 sampai dengan I = n dengan penambahan 1 setiap perubahan i. Perlu diketahui juga untuk harga awal x harus sama dengan 1, jika tidak diberi harga awal maka hasilnya akan salah. Faktorial4 1 x Faktorial0 3 x Faktorial2 2 x Faktorial1 4 x Faktorial3 1 366 Direktorat Pembinaan SMK | 2008 Jadi jelas sekali perbedaan algoritma Teknik Rekursif dengan algoritma Teknik Iteratif.10.6. Penerapan Algoritma Rekursif
Dibawah ini merupakan beberapa contoh program rekursif dengan berbagai kasus dilapangan seperti faktorial, program pemangkatan dan lain sebagainya. Untuk lebih jelasnya perhatikan program-program dibawah ini: Program 10.3. Faktorial: include cstdlib include iostream using namespace std; int faktorialint n { if n== return 1 ; else return n faktorialn‐ 1 ; } int mainint argc, char argv[] { int n; cout Program Faktorial Rekursif\n ; cout Masukkan Nilai n : ; cinn; cout Faktorial n = faktorialn \n ; system PAUSE ; return EXIT_SUCCESS; } Keluaran program tersebut adalah sebagai berikut: Program factorial Rekursif Masukan Nilai n : 4 Faktorial 4 = 24 Program 10.4. Pangkat a n : include cstdlib include iostream 2008 | Direktorat Pembinaan SMK 367 using namespace std; float Pangkatfloat a, int n { if n== return 1 ; else return a Pangkata, n‐ 1 ; } int mainint argc, char argv[] { float a; int n; cout Program Pangkat Rekursif\n ; cout Isilah Nilai a = ; cina; cout Isilah Nilai n = ; cinn; cout Hasil dari a pangkat n adalah Pangkata,n \n ; system PAUSE ; return EXIT_SUCCESS; } Keluaran program di atas seperti berikut: Program pangkat rekursif Istilah Nilai a = 2 Istilah Nilai a = 2 Hasil dari 2 pangkat 3 adalah 8 Program 10.5. Menghitung jumlah bilangan Integer positif dari 1 sampai dengan n secara rekursif. include cstdlib include iostream using namespace std; int JumlahIntint n { if n== 1 return 1 ; else return n + JumlahIntn‐ 1 ;Parts
» Buku Bahasa Pemrograman Lengkap
» Pendahuluan DASAR-DASAR PEMROGRAMAN KOMPUTER
» Perangkat Keras Komputer DASAR-DASAR PEMROGRAMAN KOMPUTER
» Erasable Read Only Memory EPROM
» Electrically Erasable ROM EEROM
» Kerja Komputer DASAR-DASAR PEMROGRAMAN KOMPUTER
» Bilangan Desimal Sistem Bilangan
» Bilangan Biner Bilangan Oktal
» Bilangan Heksadesimal Konversi Bilangan
» Data Karakter Sistem Bilangan
» Pemrograman Komputer DASAR-DASAR PEMROGRAMAN KOMPUTER
» Bahasa pemrograman DASAR-DASAR PEMROGRAMAN KOMPUTER
» Bagian Deklarasi Penulisan Bahasa pemrograman
» Statement Penulisan Bahasa pemrograman
» Element Bahasa Pemrograman DASAR-DASAR PEMROGRAMAN KOMPUTER
» Bahasa C++ DASAR-DASAR PEMROGRAMAN KOMPUTER
» Bagian Komentar Struktur Bahasa C++
» Bagian Pengarah Kompiler Struktur Bahasa C++
» Deklarasi Dan Definisi Struktur Bahasa C++
» Input Dan Output DASAR-DASAR PEMROGRAMAN KOMPUTER
» Soal Latihan DASAR-DASAR PEMROGRAMAN KOMPUTER
» Bahasa Assembly Bahasa Tingkat Tinggi
» Bahasa Generasi 3 4 Bahasa Pemrograman untuk tujuan tertentu
» Tahapan Kompilasi: Compiler dan Intepreter
» Pemrograman Terstruktur Tipe Pemrograman
» Pemrograman procedural dan terstruktur
» Algoritma BAHASA DAN ALGORITMA PEMROGRAMAN
» Ciri Algoritma BAHASA DAN ALGORITMA PEMROGRAMAN
» Penerapan Algoritma BAHASA DAN ALGORITMA PEMROGRAMAN
» Notasi Algoritma BAHASA DAN ALGORITMA PEMROGRAMAN
» Deskriptif Algoritma BAHASA DAN ALGORITMA PEMROGRAMAN
» Flow Chart BAHASA DAN ALGORITMA PEMROGRAMAN
» Pseudo code BAHASA DAN ALGORITMA PEMROGRAMAN
» Pengertian Data TIPE DATA DAN OPERATOR
» Indentifier TIPE DATA DAN OPERATOR
» Jenis Variabel Deklarasi Variabel Kelas Variabel
» Tipe Data Karakter Tipe Data
» Tipe Data String Tipe Data Bilangan Bulat
» Tipe Data Bilangan Real atau Pecahan
» Tipe Data Logika Enumerasi ENUM
» Tipe Data Larik array Tipe Data Struct, Union
» Operator Bahasa C++ TIPE DATA DAN OPERATOR
» Operator Increment dan Decrement Operator sizeof
» Operator Aritmatika Operator Binary
» Operator Relasional Operator logika
» Operator Bitwise atau manipulasi bit
» Operator Ternary TIPE DATA DAN OPERATOR
» Ungkapan Ekspresi Soal Latihan
» Operator Increment dan Decrement
» Ekspresi Matematika ++ dan - -
» Pernyataan FOR STRUKTUR PERULANGAN
» Pernyataan WHILE STRUKTUR PERULANGAN
» Perulangan DO-WHILE STRUKTUR PERULANGAN
» Pernyataan NESTED DO-WHILE STRUKTUR PERULANGAN
» Pernyataan Break STRUKTUR PERULANGAN
» Pernyataan Continue STRUKTUR PERULANGAN
» Soal Latihan STRUKTUR PERULANGAN
» Pengertian Statement STATEMENT KENDALI
» Operator Relasi STATEMENT KENDALI
» Statement IF STATEMENT KENDALI
» Pernyataan IFELSE IF STATEMENT KENDALI
» Pernyataan NESTED IF STATEMENT KENDALI
» Variabel Boolean dan Operator
» Aplikasi Pernyataan IF pada Menu
» Soal Latihan STATEMENT KENDALI
» Prosedur PROSEDUR DAN SUBROUTIN
» Parameter Prosedur PROSEDUR DAN SUBROUTIN
» Pemanggilan Prosedur PROSEDUR DAN SUBROUTIN
» Sub Routin PROSEDUR DAN SUBROUTIN
» Sub Rutin dalam Bahasa Pemrograman
» Function yang Mengembalikan Nilai
» Function yang Tidak Mengembalikan Nilai
» Call by Value dan Call by References
» Parameter dengan Nilai Default
» Overloading PROSEDUR DAN SUBROUTIN
» Soal Latihan PROSEDUR DAN SUBROUTIN
» Fungsi Void Pemanggilan Fungsi
» Pengembalian Nilai Boolean Menggunakan Fungsi dalam program menu
» Variabel Static Local FUNGSI
» Konstanta String String pada bahasa C
» Variabel String String pada bahasa C
» Fungsi strcmp Membandingkan string
» Operator logika NOT Pengurutan String
» Konversi StringNumeric OPERASI STRING
» Menguji sebuah Karakter OPERASI STRING
» Deskripsi Fungsi Karakter OPERASI STRING
» Konversi Karakter OPERASI STRING
» Menulis string OPERASI STRING
» Pointer untuk menguraikan String
» Membuat Class String Sendiri
» Pengertian Array OPERASI STRING
» Deklarasi Array OPERASI STRING
» Array Satu Dimensi Array Multi Dimensi
» Inisialisasi Array Mengurutkan Elemen Array
» Contoh Program Array OPERASI STRING
» Pengertian Rekursif OPERASI STRING
» Pengertian Teknik Iteratif Perbandingan Teknik Rekursif dan Teknik Iteratif
» Algoritma Teknik Rekursif Algoritma Teknik Iteratif
» Penerapan Algoritma Rekursif OPERASI STRING
» Penerapan Algoritma Iteratif OPERASI STRING
» Latihan Soal Pengertian Grafik
» Grafik Library OPERASI STRING
» Grafik Sederhana OPERASI STRING
» Animasi Grafik OPERASI STRING
» Dasar-dasar Game OPERASI STRING
» Pengertian File OPERASI FILE
» Hirarki class stream OPERASI FILE
» File InputOutput C++ OPERASI FILE
» Pembacaan String OPERASI FILE
» Routin-routin Konversi File OPERASI FILE
» Rutin-Rutin pada C++ OPERASI FILE
» File sekuensial OPERASI FILE
» Program Operasi FiIe 1. Membuka file
» fgets dan fputs, Sintaknya dapat diltulis sebagai berikut: fscanf dan fprintf
» Menulis File fread dan fwrite fungsi operasi ini antara lain:
» Menambah Data File Memeriksa File
» Pemrograman pointer OPERASI FILE
» Deklarasi variabel bertipe pointer
» Inisialisasi Pointer OPERASI FILE
» sizeofc; Pointer untuk fungsi
» Setelah pernyataan OPERASI FILE
» Mengakses dan Mengubah isi Pointer
» Pointer dan Array pointer to array
» Pointer dan String Array dan Pointer
» Array dari Pointer Array of Pointer
» Pointer Sebagai Parameter Fungsi Pointer Sebagai Fungsi Keluaran
» Fungsi Pointer ke Static Class Member Function
» Fungsi Pointer pada Class anggota Fungsi Non-static
» Obyek dan Class OPERASI FILE
» Deklarasi Class OPERASI FILE
» Struktur dan kelas OPERASI FILE
» Constructor dan destructor OPERASI FILE
» Overloading Constructor OPERASI FILE
» Reference this Overloading Method
» Akses Public Access Modifier
» Contoh Program Class OPERASI FILE
» Pemrograman Object-Oriented dan Prosedural
» Perbedaan Object-Oriented dan Prosedural
» Abstraksi Pewarisan Pemrograman berorientasi objek
» Immutable obyek PEMROGRAMAN BERORIENTASI OBJEK
» Pemrograman Modular Modularitas dan Abstraksi Data
» Priority Queue Modularitas dan Abstraksi Data
» Modularitas dan Penyebunyian Informasi
» Interface PEMROGRAMAN BERORIENTASI OBJEK
» Interface dan Class PEMROGRAMAN BERORIENTASI OBJEK
» Hubungan dari Interface ke Class
» Pewarisan Antar Interface Soal Latihan
» Realisasi Prosedur dan Fungsi dalam Class
» Class Private , Class Public, dan Class Protected
» Friend PEMROGRAMAN BERORIENTASI OBJEK
» Friend class PEMROGRAMAN BERORIENTASI OBJEK
» Class Basis Virtual PEMROGRAMAN BERORIENTASI OBJEK
» Inheritance between class PEMROGRAMAN BERORIENTASI OBJEK
» Multiple inheritance PEMROGRAMAN BERORIENTASI OBJEK
Show more