搜索
查看: 793|回复: 1
打印 上一主题 下一主题

不知道哪里错了

[复制链接]
楼主
发表于 2014-4-24 20:44:36 | 显示全部楼层
for(t=2;t<b;t++) {
   if(b%t==0)
    break;
  else
   sum=sum+1;

}
你要做的是,如果b是一个质数,那么sum = sum + 1;
b是不是质数要在循环结束后才能确定,sum = sum + 1; 肯定是写在循环外面的
所以应该是
for(t=2;t<b;t++) {
   if(b%t==0)
    break;
}
if(t >= b)
  sum += 1;

这样能得到正确答案,但是做法仍然不正确
for(a=100;a<=200;a++) 应该是 a + 2 <= 200
不然会检验199和201这一组,如果这两个都是质数,那么就会多一组
索性不是,才能得到正确答案
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表