我必須編寫一個程序來查找兩個用戶輸入的數字之間的素數。我遇到的唯一問題是輸出有一個額外的逗號比它需要。我將如何去解決這個問題?在java中用逗號分隔整數輸出
import java.util.Scanner;
public class Primes {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int start = sc.nextInt();
int end = sc.nextInt();
for (int i =start; i <= end; i++) {
if (isPrime(i)) {
System.out.printf("%d,", i);
}
}
}
public static boolean isPrime(int n) {
if (n <= 1) {
return false;
}
for (int i =2; i < Math.sqrt(n); i++) {
if (n % i == 0) {
return false;
}
}
return true;
}
}
輸入:1 10
輸出:2,3,4,5,7,9,
你能預先知道這是在範圍的最後一個黃金? –
您不能在整數後面打印逗號,因爲您不知道此時是否會有另一個整數。相反,打印逗號_before_整數,不要在第一次。你可能需要一個'boolean'來跟蹤它是否是第一次。 – ajb
我的評論是針對現在從shmosel刪除的評論,而不是針對你。 –