1)设计一个静态方法,该方法的功能是求出一个正整数各位的和,如 123作为参数调用的结果为1+2+3=6.
2)在主方法中实现输入一个正整数,然后求出从2到这个正整数之间的素有素数
3)在主方法中调用第1)步的静态方法,求出所有的这些素数的各个位数之和
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
//System.out.println("请输入一个正整数:");
int num = input.nextInt();
int sum=0;
if(num<2)
System.out.println(0);
else if(num==2)
System.out.println(2);
else{
int[] array=prime(num);
for(int i=0;i<array.length;i++){
sum=sum+idea(array[i]);
}
System.out.println(sum);
}
}
public static int idea(int x){
int sum=0;
if(x>=10){
while (x!= 0) {
sum += x % 10;
x = x / 10;
}
}
else {
sum+=x;
}
return sum;
}
public static int[] prime(int x){
ArrayList<Integer> list = new ArrayList<>();
//找出之间的素数
for(int i=2;i<=x;i++){
Boolean ret=true;
for(int j=2;j<i;j++){
if(i%j==0){
ret = false;
break;
}
}
if(ret)
list.add(i);
}
//转化为数组
int size=list.size();
int[] arr= new int[size];
for(int i=0;i<size;i++){
arr[i]=list.get(i);
}
//返回
return arr;
}
}