Saturday 10 October 2015

Algoritma untuk mencari deret Fibonaci

Algoritma :
Deklarasi
    n    : integer
    i    : integer
    a[1..50]: integer
Deskripsi
    Read n
    For i <- 0 to n do
        If (i < 2) then
        a[ i ] <- i
        Else
        a[ i ] <- a[ i - 2 ] + a[ i - 1 ]
        end if
    end for
    For i <- 0 to n do
        Write a[ i ]
    end for
    end

Program Biasa :
#include <iostream.h>
#include <conio.h>
int main(){     
int n,i,a[50];
cout<<"Deret Fibonacci";
cout<<"\nMasukkan batas deret fibonacci: ";
cin>>n;
for (i=0;i<n;i++){
if (i<2)
a[i]=i;
else
a[i]=a[i-2]+a[i-1];}
for(i=0;i<n;i++){
cout<<a[i]<<" ";}
getch ();
return 0;}

Program Class :
#include <iostream.h>
#include <conio.h>
class fibonacci{
public:
void masukan();
void proses();
void keluaran();
private:
int n,i,a[50];};
void fibonacci::masukan(){
cout<<"Deret Fibonacci";
cout<<"\nMasukkan batas deret fibonacci: ";
cin>>n;}
void fibonacci::proses(){
for (i=0;i<n;i++){
if (i<2)
a[i]=i;
else
a[i]=a[i-2]+a[i-1];}}
void fibonacci::keluaran(){
for(i=0;i<n;i++){
cout<<a[i]<<" ";}}
int main(){
fibonacci x;
x.masukan();
x.proses();
x.keluaran();
getch ();
return 0;}

Program Jeliot :
import jeliot.io.*;
public class MyClass {
public static void main() {
fibonacci x = new fibonacci();
x.masukan();
x.proses();
x.keluaran();}}
class fibonacci{
void masukan(){
System.out.print("Deret Fibonacci");
System.out.print("\nMasukkan batas deret fibonacci: ");
n = Input.readInt();}
void proses(){
for (i =0;i<n;i++){
if (i<2)
a[i] =i;
else
a[i] =a[i-2]+a[i-1];}}
void keluaran(){
for(i =0;i<n;i++){
System.out.print(a[i]);
System.out.print(" ");}}
private int n;
private int i;
private int[] a = new int[50];}

Penjelasan :
Program di atas adalah program yang digunakan untuk mencari deret fibonacci. Contoh 0,1,1,2,3,5 dimana tiap 2 angkanya ditambahkan lalu ditempatkan pada deret berikutnya begitu pula seterusnya. Sehingga pada program di atas kita gunakan fungsi perulangan yaitu for dilanjutkan dengan fungsi if atau percabangan dengan syarat (i<2) jika ya maka akan menampilkan nilai i, sedangkan tidak akan menampilkan hasil dari ((i-2)+(i-1)) dimana i adalah angka yang akan terus di ulang sampai dengan batasnya. Langkah selanjutnya kita tinggal menampilkan hasil dari percabangan di atas dengan perulangan atau fungsi if, agar hasilnya dapat berbentuk sebagai deret fibonacci tidah hanya menampilkan 1 hasil saja.


Perulangan dalam Bahasa C

Perulangan :
Perulangan data atau yang biasa disebut dengan “looping” adalah proses yang dilakukan secara berulang-ulang sampai batas yang ditentukan. Biasanya bila dalam perulangan tersebut tidak disertakan batasnya maka syntax akan error karena proses itu akan berulang terus hingga tak terhingga sementara variabel dalam komputer masih terbatas.
Jenis :
a.   FOR
      Syntax :  for (inisialisasi ; syarat ; penambahan) {
                     pernyataan}
      inisialisasi        : keadaan awal dari variabel control
      syarat               : ekspresi relasi yang merupakan kondisi
      penambahan    : pengatur perubahan nilai variabel control

Contoh :
for (i=0;i<10;i++)
{
p=2+i;
 }
b.   WHILE
      Syntax :  while (kondisi){
                     pernyataan}
Contoh :
i=0
while (i<10)
{
p=2+i;
 i++;
}



c.   DO – WHILE
      Syntax :  do {
                     pernyataan}
                     while (kondisi);
      Contoh :
            i=0
do
      {
            i++;
}
      while (i<10)

 Perbedaan antara FOR, WHILE, dan DO-WHILE :
For :
untuk mengulang suatu proses yang telah diketahui jumlahnya.
While : Pre Tested Loop
untuk mengulang suatu proses yang belum diketahui jumlahnya. Pengecekan kondisi akan dilakukan terlebih dahulu. Jika kondisi masih bernilai true, maka looping akan terus berlanjut.
Do-while : Post Tested Loop
 untuk mengulang suatu proses yang belum diketahui jumlahnya. Instruksi akan dijalankan lebih dahulu, kemudian dilakukan pengecekan kondisi apabila masih bernilai true maka looping akan terus berlanjut.



Algoritma untuk mencari deret Fibonaci

Algoritma :
Deklarasi
    n    : integer
    i    : integer
    a[1..50]: integer
Deskripsi
    Read n
    For i <- 0 to n do
        If (i < 2) then
        a[ i ] <- i
        Else
        a[ i ] <- a[ i - 2 ] + a[ i - 1 ]
        end if
    end for
    For i <- 0 to n do
        Write a[ i ]
    end for
    end

Program Biasa :
#include <iostream.h>
#include <conio.h>
int main(){     
int n,i,a[50];
cout<<"Deret Fibonacci";
cout<<"\nMasukkan batas deret fibonacci: ";
cin>>n;
for (i=0;i<n;i++){
if (i<2)
a[i]=i;
else
a[i]=a[i-2]+a[i-1];}
for(i=0;i<n;i++){
cout<<a[i]<<" ";}
getch ();
return 0;}

Program Class :
#include <iostream.h>
#include <conio.h>
class fibonacci{
public:
void masukan();
void proses();
void keluaran();
private:
int n,i,a[50];};
void fibonacci::masukan(){
cout<<"Deret Fibonacci";
cout<<"\nMasukkan batas deret fibonacci: ";
cin>>n;}
void fibonacci::proses(){
for (i=0;i<n;i++){
if (i<2)
a[i]=i;
else
a[i]=a[i-2]+a[i-1];}}
void fibonacci::keluaran(){
for(i=0;i<n;i++){
cout<<a[i]<<" ";}}
int main(){
fibonacci x;
x.masukan();
x.proses();
x.keluaran();
getch ();
return 0;}

Program Jeliot :
import jeliot.io.*;
public class MyClass {
public static void main() {
fibonacci x = new fibonacci();
x.masukan();
x.proses();
x.keluaran();}}
class fibonacci{
void masukan(){
System.out.print("Deret Fibonacci");
System.out.print("\nMasukkan batas deret fibonacci: ");
n = Input.readInt();}
void proses(){
for (i =0;i<n;i++){
if (i<2)
a[i] =i;
else
a[i] =a[i-2]+a[i-1];}}
void keluaran(){
for(i =0;i<n;i++){
System.out.print(a[i]);
System.out.print(" ");}}
private int n;
private int i;
private int[] a = new int[50];}

Penjelasan :
Program di atas adalah program yang digunakan untuk mencari deret fibonacci. Contoh 0,1,1,2,3,5 dimana tiap 2 angkanya ditambahkan lalu ditempatkan pada deret berikutnya begitu pula seterusnya. Sehingga pada program di atas kita gunakan fungsi perulangan yaitu for dilanjutkan dengan fungsi if atau percabangan dengan syarat (i<2) jika ya maka akan menampilkan nilai i, sedangkan tidak akan menampilkan hasil dari ((i-2)+(i-1)) dimana i adalah angka yang akan terus di ulang sampai dengan batasnya. Langkah selanjutnya kita tinggal menampilkan hasil dari percabangan di atas dengan perulangan atau fungsi if, agar hasilnya dapat berbentuk sebagai deret fibonacci tidah hanya menampilkan 1 hasil saja.


Perulangan dalam Bahasa C

Perulangan :
Perulangan data atau yang biasa disebut dengan “looping” adalah proses yang dilakukan secara berulang-ulang sampai batas yang ditentukan. Biasanya bila dalam perulangan tersebut tidak disertakan batasnya maka syntax akan error karena proses itu akan berulang terus hingga tak terhingga sementara variabel dalam komputer masih terbatas.
Jenis :
a.   FOR
      Syntax :  for (inisialisasi ; syarat ; penambahan) {
                     pernyataan}
      inisialisasi        : keadaan awal dari variabel control
      syarat               : ekspresi relasi yang merupakan kondisi
      penambahan    : pengatur perubahan nilai variabel control

Contoh :
for (i=0;i<10;i++)
{
p=2+i;
 }
b.   WHILE
      Syntax :  while (kondisi){
                     pernyataan}
Contoh :
i=0
while (i<10)
{
p=2+i;
 i++;
}



c.   DO – WHILE
      Syntax :  do {
                     pernyataan}
                     while (kondisi);
      Contoh :
            i=0
do
      {
            i++;
}
      while (i<10)

 Perbedaan antara FOR, WHILE, dan DO-WHILE :
For :
untuk mengulang suatu proses yang telah diketahui jumlahnya.
While : Pre Tested Loop
untuk mengulang suatu proses yang belum diketahui jumlahnya. Pengecekan kondisi akan dilakukan terlebih dahulu. Jika kondisi masih bernilai true, maka looping akan terus berlanjut.
Do-while : Post Tested Loop
 untuk mengulang suatu proses yang belum diketahui jumlahnya. Instruksi akan dijalankan lebih dahulu, kemudian dilakukan pengecekan kondisi apabila masih bernilai true maka looping akan terus berlanjut.