Difference between revisions of "Fibonacci sequence"

From CompSciWiki
Jump to: navigation, search
m (Fixed photo)
Line 18: Line 18:
  
 
|SideSection=
 
|SideSection=
[[Image:wiki_trays01.jpg|center]]
+
[[Image:wiki_trays01.jpg|center]]<BR>
<BR>
+
  
 
|SolutionCode=
 
|SolutionCode=

Revision as of 14:24, 9 April 2010

Back to the Program-A-Day homepage

Problem

Write a complete Java program titled Fibonacci that:

  • prompts the user to enter an input number and casts it to integer
  • gets the nth fibonacci number using a for loop, based on the user's input
  • prints out the nth fibonacci number, using JOptionPane Methods.


Note that the fibonacci sequence is <math>F(0) = 1, F(1) = 1, F(n) = F(n-1) + F(n-2) for n > 1</math>.
Example: F(5) = 1, 1, 2, 3, 5, 8
Your output should look something like
"The 5th number of the fibonacci sequence is 5."

You may assume that the user always enters correct integer format.

 

Mid-term Review

Wiki trays01.jpg

Solution

In order to get user input from JOptionPane you will need to import the swing package. You can import swing package by

import javax.swing.*; 

or

import javax.swing.JOptionPane;

The next step is declaring variables. In this program we will need three inegert variables. One variable will be used as <math>F(n)</math> and another variable will be used as <math>F(n-1)</math>. Our initial value for <math>F(n)</math> will be 1 and <math>F(n-1)</math> will be 0, referring to the fibonacci formula.

<math>F(0) = 1, F(1) = 1</math>

Once you declare the necessary variables, the last variable will be the casted integer from the user input.

int n = 1
int n-1 = 0
String str = get the user input using JOptionPane
int input = cast str to integer

Once you have all the variables ready, make a for loop that starts from 0 and ends when the counter is less than n (user input). In this for loop, the increment will be by 1.

for(count = 0; count < user input; count increment by 1)
{
}

We will need another variable to keep track of <math>F(n-2)</math>. You simply set it <math>F(n-2) = F(n-1)</math> as it starts a new iteration, and set <math>F(n-1) = F(n)</math>. Then sum up the <math>F(n-2) + F(n-1)</math> which will now be <math>F(n)</math>.

<math>(n-2) = (n-1)</math>

<math>(n-1) = n</math>

<math>n = (n-2) + (n-1)</math>

When the for loop ends, you will have the nth fibonacci number. At last, print it out using JOptionPane. When you are printing the result out with JOptionPane, note that you have to put 'null' before the actual message you want to print out. See below for the solution code.

Code

Solution Code

Back to the Program-A-Day homepage