首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

各们帮看一下小弟我的程序错在那了?(是想输入一个数,判断是不是素数)

2012-01-19 
各们帮看一下我的程序错在那了?(是想输入一个数,判断是不是素数)import java.util.Scannerpublic class p

各们帮看一下我的程序错在那了?(是想输入一个数,判断是不是素数)
import java.util.Scanner;
public class panduan
{
public static void main(String[] args)
{
int b;
Scanner sc=new Scanner(System.in);
b=sc.nextInt();
for (int i=2;i<=b ;i++ )
{boolean flag=true;
  for (int j=2;j<i ;j++ )
  {if (i%j==0)
  {flag=false;
System.out.println(b+"不是素数");
break;
  }
if (flag)
{
System.out.println(b+"是素数");
}
  }
}
}
}
不知道是那错了,还是自己的思路本来就有问题?

[解决办法]
思路有问题
你的代码是找到2-b之间的素数,不是判断b是不是素数

Java code
boolean flag=true;for (int i=2;i<b ;i++ ) {    if (b%i==0) { //用b%i来判断b有没有可以被整除的因数       flag=false;       System.out.println(b+"不是素数");       break;    }}if (flag) {   System.out.println(b+"是素数");}
[解决办法]
宝哥正解啊....
[解决办法]
补充一点,2应该单独处理。
[解决办法]
一楼解决了。。。
[解决办法]
外层循环直接从4开始就可以。
[解决办法]
探讨
看了一楼的程序,其实是我的思路错了,没有必要引入第三个变量。用i和b就可以解决。
担是还有个问题,我现在输入1 和 0 也显示是素数,不报错。

[解决办法]
探讨
看了一楼的程序,其实是我的思路错了,没有必要引入第三个变量。用i和b就可以解决。
担是还有个问题,我现在输入1 和 0 也显示是素数,不报错。

热点排行