gpt4 book ai didi

java - 输入 : n, 输出 : all +ve numbers up-to n with 4 divisors?

转载 作者:行者123 更新时间:2023-11-30 08:59:30 25 4
gpt4 key购买 nike

当给定一个整数 n 时,打印出 n 以内的所有正数和 4 个正约数。

示例:

10 --> 6 8 10  
16 --> 6 8 10 14 15

我的代码

public class ass5_q1 {  

public static int divide(int n)
{
int x;
int v = 0;
for ( x = 1; x <= n; x++ )
{
if ( n % x == 0 )
{
v++;
}
}
if(v==4)
System.out.println(v);
return v;

}
public static void main(String[] args)

{
Scanner read = new Scanner(System.in);
int m;
m = read.nextInt();
for(int i=0; i<=m; i++)
{
if(i==divide(m))
{
System.out.print(i);
}

}
System.out.println();
}
}

但是我找不到正确的代码..我该怎么办?

最佳答案

 if(v==4)
System.out.println(v);
return v;

无论如何你都会返回v,你应该return v;只有当v == 4,所以你应该把它放在在 if 语句下:

 if(v==4) {
System.out.println(v);
return v;
}
//Here you should return something that indicates otherwise,
//think about a special value that has no meaning if v == 4 not satisfied

这就是为什么我们应该有 {} 即使是一行语句,它可以防止像这样的错误

关于java - 输入 : n, 输出 : all +ve numbers up-to n with 4 divisors?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27211760/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com