私はこのコードをこれまで持っていますが、正しい入力を得られません。 2からユーザーが入力する番号まで素数を印刷する必要があります。私は間違って何をしていますか?ユーザー入力まで素数を出力するJavaプログラム
import java.util.Scanner;
public class Exhibit2 {
public static void main(String args[]) { //forgot to add main
System.out.println("This program takes the user input and prints the prime numbers until that number");
System.out.println ("Enter Number:");
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
for(int i=2;i<num;i++){
for(int j=2; j<i; j++){
if(num%j == 0){
System.out.print(" ");
}
else{
System.out.print(i);
}
}
}
}
}
何が問題なのですか? –
あなたは数学を間違っています。まず、コードが[プライムであるかどうかを判断する](https://stackoverflow.com/questions/9625663/calculating-and-printing-the-nth-prime-number)コードを正しく記述する必要があります。その後、素数を出力するループを作成します。 – azurefrog
問題は、 'j'で割り切れる場合は' i'の代わりに 'num'をテストすることです。 – Henry