看我的!import java.io.*;public class TestFeiBo
{
public static void main(String[] args) throws IOException
{
System.out.print("请输入斐波那契数列的阶k和要计算的项n(整数,中间用 , 隔开):");
BufferedReader bufReader = new BufferedReader(new InputStreamReader(System.in) );
String str = bufReader.readLine();
String[] s = str.split(",");
int k = Integer.parseInt(s[0]);
int n = Integer.parseInt(s[1]);
int fm = 0;
FeiBo fb = new FeiBo(k, n);
fm = fb.getFm();
System.out.println("数列第" + n + "项F(" + n + ") = " + fm);
}
}class FeiBo
{
private int k;
private int m;
public FeiBo(int k, int m)
{
this.k = k;
this.m = m;
}
public int getFm()
{
return feibo(this.k, this.m);
}
private int feibo(int k, int m)
{
int temp = 0;
if (m >= k)
{
for (int i = m-1; i >= m-k; i--)
{
temp += feibo(k, i);
}
return temp;
}
else
{
if (m <= k-2)
return 0;
else
return 1;
}
}
}
{
public static void main(String[] args) throws IOException
{
System.out.print("请输入斐波那契数列的阶k和要计算的项n(整数,中间用 , 隔开):");
BufferedReader bufReader = new BufferedReader(new InputStreamReader(System.in) );
String str = bufReader.readLine();
String[] s = str.split(",");
int k = Integer.parseInt(s[0]);
int n = Integer.parseInt(s[1]);
int fm = 0;
FeiBo fb = new FeiBo(k, n);
fm = fb.getFm();
System.out.println("数列第" + n + "项F(" + n + ") = " + fm);
}
}class FeiBo
{
private int k;
private int m;
public FeiBo(int k, int m)
{
this.k = k;
this.m = m;
}
public int getFm()
{
return feibo(this.k, this.m);
}
private int feibo(int k, int m)
{
int temp = 0;
if (m >= k)
{
for (int i = m-1; i >= m-k; i--)
{
temp += feibo(k, i);
}
return temp;
}
else
{
if (m <= k-2)
return 0;
else
return 1;
}
}
}
public class Fiblaqi
{
public int k(int n,int k){
if(n == k-1){
return 1;
}
else if(n <= k-2){
return 0;
}
else{
int sum = 0;
for(int i = 1 ; i <= k ; i++){
sum = sum+k(n-i,k);
}
return sum;
}
}
public static void main(String[] args){
Fiblaqi f = new Fiblaqi();
System.out.println(f.k(5,2));
}
}