Java - calculate nth Fibonacci number

  • Context: Comp Sci 
  • Thread starter Thread starter Hercuflea
  • Start date Start date
  • Tags Tags
    Java
Join the discussion
Ask a follow-up here, or get your own question answered by working scientists, mathematicians and engineers — people, not an autocomplete.
Real named experts · corrections over time · the nuance an AI answer skips
3 replies · 7K views
Hercuflea
Messages
593
Reaction score
49

Homework Statement



Hello everyone, I am trying to write a java program that asks the user to input a number n, and the computer calculates the nth Fibonacci number. I am supposed to use a loop to calculate the problem.

My question is, how do I set up the loop to calculate the nth Fibonacci number? I know how to do all of the program except the loop.

Homework Equations



I want to use the "for" loop.

The Attempt at a Solution



import java.util.Scanner;

public class Assignment2 {
public static void main(String [] args) {
Scanner input = new Scanner(System.in);

System.out.print("Enter a number n in order to calculate the nth Fibonacci number: ");
int n = input.nextInt();

for(int i = 0; i;){}

System.out.println("The " + n + "th Fibonacci number is: ");

}
}
 
on Phys.org
Hercuflea said:

Homework Statement



Hello everyone, I am trying to write a java program that asks the user to input a number n, and the computer calculates the nth Fibonacci number. I am supposed to use a loop to calculate the problem.

My question is, how do I set up the loop to calculate the nth Fibonacci number? I know how to do all of the program except the loop.

Homework Equations



I want to use the "for" loop.

The Attempt at a Solution



import java.util.Scanner;

public class Assignment2 {
public static void main(String [] args) {
Scanner input = new Scanner(System.in);

System.out.print("Enter a number n in order to calculate the nth Fibonacci number: ");
int n = input.nextInt();

for(int i = 0; i;){}

System.out.println("The " + n + "th Fibonacci number is: ");

}
}

When you post code, put it inside [noparse]
Code:
[/noparse] tags. This makes your code easier to read, by preserving your indentation (if you used any).

You can't write a program to calculate Fibonacci numbers if you don't know how to calculate them yourself. What are the first few numbers in a Fibonacci sequence?
 
Mark44 said:
When you post code, put it inside [noparse]
Code:
[/noparse] tags. This makes your code easier to read, by preserving your indentation (if you used any).

You can't write a program to calculate Fibonacci numbers if you don't know how to calculate them yourself. What are the first few numbers in a Fibonacci sequence?

a1 = 0, a2 = 1, a3 = 1, a4 = 2, a5 = 3, a6 = 5, ...etc. adding the last two numbers to get the nth number.
 
Hercuflea said:
a1 = 0, a2 = 1, a3 = 1, a4 = 2, a5 = 3, a6 = 5, ...etc. adding the last two numbers to get the nth number.

Usually the indices start at zero, so that [itex]F_0=0[/itex], [itex]F_1=1[/itex], [itex]F_2=1[/itex], [itex]F_3=2[/itex],etc.

I would suggest that you store all calculated Fibonacci numbers in an array of Integers. To start with, you will need to initialize the array to include [itex]F_0[/itex] and [itex]F_1[/itex]. Then, to calculate the nth number, you first look in the array to see if it has already been calculated; if yes then simply output that entry in the array, if no, then start with the last 2 entries in the array an calculate and store (in the array) all the remaining numbers up until the nth number.