JAva学習記録-1-50のすべての素数と累積和を求める
846 ワード
public class ccc{
public static void main(String[] args){
System.out.println("1-50 :");
int sum=0;
for(int i = 2; i<= 50; i++){
for(int j = 2; j <= i; j++){
if( i%j == 0){
if(i == j){
System.out.print(i + " ");
sum += i;
}else
break;
}
}
}
System.out.println("
1-50 :
" + sum);
}
}
素数の定義を先に理解する:1より大きい整数の中で、1とこの数自体でしか割り切れない数を素数(素数とも呼ばれる)とする
コードを叩く前にまずフローチャートを描いて、フロー全体の構想プログラムの中で2つのforループを定義したことを整理したほうがいい.
最初のサイクルは2-50の整数を出力するために使用されます.
2番目のループは、各数が素数であるかどうかを検証します.
2つのifサイクルを定義して、まずi%jが0に等しいかどうかを判断し、trueと判断したら次のif判断を継続する(falseは飛び出します)
2番目のif判定iがj(すなわち、この数がそれ自体であるか否か)trueであると出力この数を素数とし、falseはこのとき飛び出して1~50のすべての素数を求める、
次にsum変数を定義してそれらを加算すると、1~50のすべての素数の和を求めることができます.