我需要做的是制作一个数字生成器,它在生成 10 时停止并显示在达到 10 之前进行了多少次尝试。为此,我还必须仅使用 while 循环。这是我现在的代码:
public static int RandomOccurrence()
{
int randNumber = (int)(Math.random()*20 + 1);
int count = 0;
while(randNumber != 11){
System.out.println("The number generated is " + randNumber);
count = count + 1;
}
return count;
}
Run Code Online (Sandbox Code Playgroud)
这是函数调用:
int number = RandomOccurrence();
System.out.println("It took " +number +" tries before 10 was generated");
System.out.println();
System.out.println();
Run Code Online (Sandbox Code Playgroud)
但是当我运行代码时,它会无限地打印“生成的数字为 2”。
所以我试图打印导致用户输入数字的素数。唯一的问题是它现在不打印数字。我没有发现代码有任何问题,当我与老师核对时,他说它应该可以工作。
static void primeNumbers(int n) {
System.out.println("All the prime numbers up to " + n + " are -->");
for (int count = 2; count == n; count++){
boolean isPrime = true;
for (int prime = 2; prime < n; prime = prime++) {
if (n % prime == 0) {
isPrime = false;
}
if(isPrime){
System.out.println(n);
}
}
}
}
Run Code Online (Sandbox Code Playgroud) java ×2