我必须编写一个程序来查找两个用户输入的数字之间的素数。我遇到的唯一问题是输出有一个额外的逗号比它需要。我将如何去解决这个问题?在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删除的评论,而不是针对你。 –