Java求1到100之间所有素数的和。

int sum=0;
for(int i=1;i<=3;i++)
{int j;
for(j=2;j<i/2;j++)
{
if (i%j==0)break;
}
if( )
sum+=i;
}
括号里面应该怎样填写??求解

本来想填空的,但是阁下的逻辑令人叹为观止,我想不通追问

我是按照原题目写的,题目应该不会有错吧。

追答int sum = 0;
for ( int i = 2; i < 101; i++ )
{
int j;
for ( j = 2; j < i / 2; j++ )
{
if (i % j == 0)
    break;
}
if (i % j != 0 || i == j)
{
sum += i;
}
}
System.out.println (sum);

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-12-15
看你第二个for已经吧不是素数都去掉了 能完成整个2次循环的数就是素数啊 只要那些数j输出就好了 然后sum=sum+j sum初始为0 然后你吧2 3特别拿出来了 算总和补上就好了追问

括号里面应该怎样填写呢?

追答

第二个括号应该是ji/2,你想想 比如i=7 你J取到123 直到4 大于3,5了 ,很明显后面的J也不会被I整除 判断出i是素数。 前一半数都整除不了 后一半数必然也不行 自己感觉一下

本回答被提问者采纳
第2个回答  2014-04-15
奇怪 这个j循环能进吗 i=1 -->j=2又要j<0.5 怎么进的
相似回答