Tuesday, August 3, 2010

Deret Fibonacci dengan Fungsi Rekursif

Bila pada posting sebelumnya saya menggunakan fungsi iteratif, sekarang saya menggunakan fungsi rekursif untuk mencari urutan fibonacci. Dengan fungsi rekursif, apabila bilangan yang dicari urutannya kecil, maka lebih baik menggunakan fungsi rekursif ini. Berikut ini kodenya:

#include <stdio.h>
#include <conio.h>
int fibonacci(int n);
void main()
{
int bil,urfib,ulangi;
do
{
clrscr();
printf("Bilangan fibonacci urutan ke? ");
scanf("%d",&bil);
urfib=fibonacci(bil);
printf("\nUrutan fibonacci ke %d, adalah %d",bil,urfib);
printf("\n\nApakah anda ingin mengulangi?");
printf("\n1. YA");
printf("\n2. TIDAK (keluar) ");
scanf("%d",&ulangi);
}while(ulangi==1);
}

int fibonacci(int n)
{
int fibonac;
if(n==0)
{
return 0;
}
else if(n==1)
{
return 1;
}
else
fibonac=fibonacci(n-1)+fibonacci(n-2);
return (fibonac);
}

Read more...

Deret Fibonacci dengan Bahasa C

Saya mendapat tugas untuk membuat deret bilangan fibonacci dengan bahasa C. Deret fibonacci tersebut saya buat dengan fungsi iteratif. Berikut adalah sourcecodenya:

Fungsi iteratif
#include <stdio.h>
#include <conio.h>
int fibonacci(int n);
void main()
{
int urfib,bil,ulangi;
do
{
clrscr();
printf("Cari urutan fibonacci ke? ");
scanf("%d",&bil);
urfib=fibonacci(bil);
printf("\n\nUrutan fibonacci ke %d adalah: %d",bil,urfib);
printf("\n\nApakah anda ingin mengulangi?");
printf("\n1.YA");
printf("\n2.TIDAK(keluar)");
printf("\npilihan anda? ");
scanf("%d",&ulangi);
}while(ulangi==1);
}

int fibonacci(int n)
{
int fibonac1=0,fibonac2=1,urutan,fibonac;
for(urutan=1;urutan<=n;urutan++)
{
fibonac=fibonac1+fibonac2;
fibonac2=fibonac1;
fibonac1=fibonac;
printf("\nurutan fibonaci ke %d, adalah %d",urutan,fibonac);
}
return (fibonac);
}

Read more...

Ganjil atau Genap

Berikut ini adalah program untuk menentukan apakah suatu bilangan adalah bilangan ganjil atau genap. Yang baru dari program ini adalah adanya operasi modulus yang dilambangkan dengan tanda persen (%). Modulus artinya sisa pembagian dari suatu bilangan dengan bilanga lain. misalnya 4%2 akan menghasilkan nilai 0, karena 4 bila dibagi 2 akan habis. Contoh lagi 5%2 akan menghasilkan 1, karena 5 dibagi 2 sisanya adalah 1. Berikut adalah contoh programnya:

#include <stdio.h>
#include <conio.h>
int main()
{
int angka,hasil;
printf("Masukan sebuah angka: ");
scanf("%d",&angka);
/*maksud dari kode di bawah ini adalah modulus(sisa pembagian)variable angka terhadap 2.*/
hasil=angka%2;
if(hasil==0)
{
printf("\nAngka yang anda masukan adalah angka genap");
}
else
printf("\nAngka yang anda masukan adalah angka ganjil");
getch();
}

Read more...

Sudah Tua atau Masih Muda

Sebuah program sederhana untuk mengetahui golongan usia seseorang, apakah sudah tua atau masih muda. Perintah-perintah yang digunakan adalah perintah dasar, misalnya seleksi, input dan output.

#include <stdio.h>
#include <conio.h>
int main()
{
int usia;
printf("Masukan usia anda : ");
scanf("%d",&usia);
/*jika syarat if(usia<45) tepenuhi maka perintah dalam blok if akan di eksekusi*/
if(usia<45)
{
printf("ternyata anda masih muda");
}
else
printf("ternyata anda sudah tua.");
getch();
}

Read more...

Jumlah dan Rata - rata Bilangan dengan Bahasa C

Posting saya ini masih seputar perhitungan matematika dengan bahasa C. Tapi kali ini selain praktek pengulangan DO WHILE dan saya menggunakan juga pengulangan FOR. Oh iya, saya juga mulai menggunakan ARRAY. Here's the sourcecode.

#include <conio.h>
#include <stdio.h>
void main()
{
int A[100]={1};
int ulangi,x,y=0,b;
float jumlah=0;
float rata2;
do
{
clrscr();
printf("Berapa banyaknya angka yang ingin anda jumlahkan? ");
scanf("%d",&b);
for (x=0;x<b;x++)
{
printf("\nangka ke-%d adalah: ",++y);
scanf("%d",&A[x]);
}
for (x=0;x<b;x++)
{
jumlah=jumlah+A[x];
}
rata2=jumlah/b;
printf("\nJumlah ke-%d bilangan tersebut adalah %f",b,jumlah);
printf("\nRata-rata dari semua bilangan tersebut adalah %f",rata2);
printf("\n\nUlangi perhitungan?");
printf("\n1.YA");
printf("\n2.TIDAK\n");
scanf("%d",&ulangi);
}
while(ulangi==1);
}

Read more...

Followers

followers

  © Blogger templates ProBlogger Template by Ourblogtemplates.com 2008

Back to TOP