Senin, 31 Mei 2010

Deret Fibonacci C++

SCRIPT PROGRAM 


OUTPUT :

masukan jumlah angka : 8

1  1  2  3  5  8  13  21


Penjelasan Program : 

Pada bagian awal program terdapat pengarah kompiler berupa ”#include”. Pengarah kompiler ini Berfungsi membaca file program tertentu dan mengikutsertakan file tersebut dalam proses kompilasi. Nama file yang dimaksud harus diapit symbol ‘ < ‘ dan ‘ > ‘ atau tanda kutip dua ( “ … “ ). Dalam program tersebut terdapat “#include dan “#include”. ‘conio.h’ menunjukan pengarah kompiler dalam hal pengaturan konfigurasi input output. Sedangkan ‘iostream.h’ merupakan file program yang mengandung deklarasi kelas-kelas yang diperlukan oleh objek cout. File-file dengan ekstensi “.h” yang berisi deklarasi fungsi-fungsi standar C ini, disebut secara umum sebagai file header. ”Main() merupakan contoh fungsi, fungsi ini perlu dideklarasikan agar compiler dapat memeriksa ketepatan pemanggilan fungsi yang bersangkutan. Deklarasi fungsi sering disebut pula prototype fungsi. Sedangkan “int x,y,i,bil” menunjukkan tipe data integer untuk variabel yang telah disebutkan.

Pertama kali program menginstruksikan kita untuk menginput angka yang akan diproses sebagai banyaknya deret. Hal ini dapat terlihat dari statemen keluaran yang terdapat pada ’cout>>”masukan jumlah angka : ”; ’ Misalnya saja kita masukan ’8’. Kemudian program mendeteksi angka ’8’ tersebut sebagai variabel  ’bil’. Diberikan harga awal x=1, dan y=1 lalu terdapat statemen ’cout< untuk mencetak hasil dari y. Oleh karena itu output menjadi ’1’ dalam memori penyimpanan program. Dalam program tersebut terdapat perulangan ’for (i=1;i<=bil-1;i++)’ dengan kondisi i=1 dimana nilai i haraus lebih keci atau sama dengan nilai bil (nilai yang kita masukkan dalam program dalam contoh ini adalah ’8’) kemudian nilai i akan bertambah 1 jika telah menjalankan dari kondisi tersebut. Pendefinisian awal variabel ’i’ bernilai 1 dengan i<=bil-1 atau 1<=7 dimana i=1 dan bil-1→ 8-1=7. Kondisi ini memenuhi syarat perulangan maka langkah selanjutnya adalah mencetak ’x’ karena dalam instruksi selanjutnya terdapat statemen ’ cout< karena hasil output pertama adalah 1, karena ini mencetak nilai x kembali yang bernilai 1, maka output menjadi ”1 1 ”.  Selanjutnya diberikan kembali suatu rumus yakni x=x+y; dan y=x-y. Nilai x dan y yang telah didefiniskan sebelumnya adalah : x=1, y=1. maka x=1+1=2 dan y=2-1=1. Nilai x dan y yang semula berharga 1, sekarang berubah menjadi x=2 dan y=1. Kemudian nilai i bertambah 1 menjadi i=2. Karena nilai i <= 7 maka cetak nilai ’x’. Dari langkah tersebut maka dihasilkan output menjadi ’1 1 2’. Selanjuntnya masuk ke rumus x=x+y → 2+1=3 dan y=x-y → 3-1=2. Nilai x dan y yang semula berharga 2 dan 1, sekarang berubah menjadi x=3 dan y=2. Kemudian nilai i bertambah 1 menjadi i=3. Langkah selanjutnya program akan mengecek harga i. Apakah nilai i <=7 atau tidak . Jika i  <= 7 maka cetak nilai 'x'. Dari langkah ini maka dihasilkan output ' 1  1  2  3' langkah- langkah ini terus berlangsung sampai kondisi i=7. Adapun hasil penjabaran dari algoritma program di atas adalah sebagai berikut:

·       i=1 → x=1 , y=1 cetak ‘x’ maka output : 1

                  i<=bil-1(7); cetak ’x’ maka output menjadi : 1 1

                  x=x+y → 1+1=2

                  y=x-y → 2-1=1

·        i=2 → x=2, y=1

                  i<=bil-1(7); cetak ’x’ maka output menjadi : 1 1 2

                  x=x+y → 2+1=3

                  y=x-y → 3-1=2

·        i=3 → x=3 , y=2

                 i<=bil-1(7); cetak ’x’ maka output menjadi : 1 1 2 3

                 x=x+y → 3+2=5

                 y=x-y → 5-2=3

·        i=4 → x=5 , y=3

                  i<=bil-1(7); cetak ’x’ maka output menjadi : 1 1 2 3 5

                  x=x+y → 5+3=8

                  y=x-y → 8-3=5

·        i=5 → x=8 , y=5

                  i<=bil-1(7); cetak ’x’ maka output menjadi : 1 1 2 3 5 8

                  x=x+y → 8+5=13

                  y=x-y → 13-5=8

·        i=6 → x=13 , y=8

                  i<=bil-1(7); cetak ’x’ maka output menjadi : 1 1 2 3 5 8 13

                  x=x+y → 13+8=21

                  y=x-y → 21-8=13

·        i=7 → x=21 , y=13

                 i<=bil-1(7); cetak ’x’ maka output menjadi : 1 1 2 3 5 8 13 21

                 x=x+y → 21+13=34

                 y=x-y → 34-13=21

·        i=8 → x=34 , y=21

                 i<=bil-1(7)?;

Karena i=8 atau nilai i>=8 maka perulangan telah berakhir sebab nilai i tidak memenuhi nilai dari kondisi yang diminta oleh karena itu hasil output akhir dari program ini adalah 1 1 2 3 5 8 13 21



0 komentar:

Posting Komentar

Template by:
Free Blog Templates