C言語 素数の和
任意の数から任意の数までの素数の和算出するプログラムが大体できましたがうまく動きません。どこを追加・削除すればいいのでしょうか?
実行例1
数1:10
数2:2
素数の和:17
実行例2:
数1:900
数2:1000
素数の和:13330
参考
2+3+5+7=17
907+911+919+929+937+941+947+953+967+971+977+983+991+997=13330
任意の数から任意の数までの素数の和算出するプログラムがどうしても分かりません。どう作成すればいいのでしょうか?
実行例1
数1:10
数2:2
素数の和:17
実行例2:
数1:900
数2:1000
素数の和:13330
参考
2+3+5+7=17
907+911+919+929+937+941+947+953+967+971+977+983+991+997=13330
#include <stdio.h>
#include <math.h>
int main(void)
{
int i, j, k, tmp;
int number1, number2, total;
printf("数1:");
scanf("%d", &number1);
printf("数2:");
scanf("%d", &number2);
total = 0;
if (number1 > number2)
{
tmp = number1;
number1 = number2;
number2 = tmp;
}
if (number1 == 2)
{
number1++;
total = 2;
}
if (number1 % 2 == 0)
{
number1++;
}
for (i=number1; i<=number2; i+=2)
{
k=0;
for (j=3; j<=sqrt(i); j+=2)
{
if (i%j==0)
{
k=1;
break;
}
}
if (k==0)
{
total += i;
}
}
printf("素数の和:%d\n", total);
return 0;