java写斐波那契数列求合数

import java. util. * ;
public class Fibonacci{
public static void main(String args[ ]){
Scanner in=new Scanner(System.in);
int n=in.nextInt( );
int k1=1,k2=1,k3;
for(int i=3;i<n;i++){
k3=k1+k2;
k1=k2;
k2=k3;0000
int sqrt=(int)Math.sqrt(n);
for(int j=2;i<=sqrt;i++)
{
if(k3 % i != 0)
System.out.printf("%d",k3);
}
} }}

img

解题思路:先写一个方法,判断是否是合数;然后再写一个方法,用于获取要求的值;最后在主方法中调用即可。
所以我是由下至上的写的,如果有所帮助的话,希望博主采纳。
运行结果:

img

public class Test01 {
    public static void main(String args[]) {
        Scanner sc = new Scanner(System.in);
        System.out.print("请输入一个整数:");
        int num = sc.nextInt();

        int result = returnNUmber(num);
        System.out.println(result);
    }

    //返回最后的结果值
    public static int returnNUmber(int n) {
        //设置合数个数变量
        int k = 0;
        int num1 = 1;
        int num2 = 1;
        int num3 = 0;
        //设置循环
        while (k != n) {
            num3 = num1 + num2;
            num1 = num2;
            num2 = num3;
            if (ifNumber(num3)==true){
                k++;
            }
        }
        return num3;
    }

    //判断该数是否是合数,合数:除1和它本身以外,还能被其他正整数整除
    public static boolean ifNumber(int n) {
        for (int i = 2; i < n - 1; i++) {
            if (n % i == 0) {
                return true;
            }
        }
        return false;
    }
}