JAVA求两者之间的素数~帮我看看哪里不对了QAQ

我要求大于某个数的最小素数和小于某个数的最大素数。还有任意两个整数之间的素数。前两个都能求出来。就是两者之间的素数显示不出来?我朋友程序也是这个但是可以显示。为什么??i... 我要求大于某个数的最小素数和小于某个数的最大素数。还有任意两个整数之间的素数。前两个都能求出来。就是两者之间的素数显示不出来?我朋友程序也是这个但是可以显示。为什么??
import javax.swing.JOptionPane;
public class Ssjudge {
public static void main(String[] args) {
int i,x,y,z;
String str=JOptionPane.showInputDialog("x=");
x=Integer.parseInt(str);
for(i=x+1;i<2*i;i++){
if(mySS(i))
{System.out.println("大于"+x+"的最小素数:"+i);break;}
}
for(i=x-1;i>=0;i--){
if(mySS(i))
{System.out.println("小于"+x+"的最大素数:"+i);break;}
}
String str1=JOptionPane.showInputDialog("第一个整数为");
y=Integer.parseInt(str1);
String str2=JOptionPane.showInputDialog("第二个整数为");
z=Integer.parseInt(str2);
if(y>z)
{i=y;y=z;z=i;}
System.out.print(y+"与"+z+"之间的素数:");
for(i=y;i<z;i++);{
if(mySS(i)){
System.out.print(i+" ");
}
}
}
static boolean mySS(int n){
int i;
for(i=2;i<n;i++)
if(n%i==0) break;
if(n==i) return true;
else return false;
}
}
显示结果这样:(100与200间素数求不出来QAQ)
大于10的最小素数:11
小于10的最大素数:7
100与200之间的素数:
展开
 我来答
紫薇参星
科技发烧友

2014-10-30 · 有一些普通的科技小锦囊
知道大有可为答主
回答量:5983
采纳率:92%
帮助的人:3662万
展开全部
你的for循环语句for(i=y;i<z;i++);{ 小括号后面多了一个分号,把分号去掉数据就出来了,改成这样
for(i=y;i<z;i++){
aspwolf1470
2014-10-30 · TA获得超过2643个赞
知道小有建树答主
回答量:1287
采纳率:0%
帮助的人:1261万
展开全部
看了半天,汗死。
你的for(i=y;i<z;i++);{……}里面
for()后面多了一个分号,导致循环跑的是一个空语句,而不是后面大括号里面的内容
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式