今天開始學Java 給定一個正整數,編寫程式計算有多少對質數的和等於輸入的這個正整數,並輸出結果。
阿新 • • 發佈:2019-01-23
給定一個正整數,編寫程式計算有多少對質數的和等於輸入的這個正整數,並輸出結果。輸入值小於1000。
如,輸入為10, 程式應該輸出結果為2。(共有兩對質數的和為10,分別為(5,5),(3,7))
public static boolean jug(int a){
//這裡i<=Math.sqrt(a)記得要加上“=”
for(int i =2;i<=Math.sqrt(a);i++){
if(a % i == 0)
return false;
}
return true;
}
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
while(sc.hasNext()){
int num = sc.nextInt();
int sum = 0;
for (int k = 2;k<=num/2;k++){
if(jug(k) && jug(num -k)){
sum++;
}
}
System.out.println(sum);
}
}
}
如,輸入為10, 程式應該輸出結果為2。(共有兩對質數的和為10,分別為(5,5),(3,7))
輸入描述:
輸入包括一個整數n,(3 ≤ n < 1000)
輸出描述:
輸出對數
輸入例子1:
10
輸出例子1:
2public class Main{
public static boolean jug(int a){
//這裡i<=Math.sqrt(a)記得要加上“=”
for(int i =2;i<=Math.sqrt(a);i++){
if(a % i == 0)
return false;
}
return true;
}
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
while(sc.hasNext()){
int num = sc.nextInt();
int sum = 0;
for (int k = 2;k<=num/2;k++){
if(jug(k) && jug(num -k)){
sum++;
}
}
System.out.println(sum);
}
}
}