各位帮个忙吧,看看这个题!!

zhoujunmei 2011-09-29 09:39:36
在main函数中调用函数fun(int[] a, int m),(其中m是在main中用键盘输入的小于100的整数),用fun函数找出大于整数m,并且邻接m的5个素数,将这5个素数,用a数组接收,并在main中输出;(请根据题目完成main和fun函数的编写)
这是我写的,可是得不到所要的结果
public static void fun(int[]a,int m)
{
int i;
int max=5;
for(i=2;i<=m;i++)
{
for(int j=0;j<a.length;j++)
{
if(i<Math.sqrt(m)&&(m%i!=0)) break;
if(i>Math.sqrt(m)) a[j]=m;
}
}
int b=a.length;
while(a.length-b<max){
for(int j=0;j<a.length;j++){
if(i%j==0){
break;
}
}i++;
}

}
public static void main (String[] args) {
System.out.println("please enter <100 numbers:");
Scanner bh=new Scanner(System.in);
int m=bh.nextInt();
int []a=new int[5];
fun(a,m);
for(int i=0;i<a.length;i++)
System.out.print(a[i]+",");
}
...全文
65 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
风尘中国 2011-09-29
  • 打赏
  • 举报
回复
你看这是不是你想要的效果?


import java.util.Scanner;

/**
* Created by IntelliJ IDEA.
* User: Administrator
* Date: 2011-9-29
* Time: 21:45:16
* To change this template use File | Settings | File Templates.
*/
public class ShowNumber {
public static boolean isPrimeNumber(int num){
boolean result=true;
if(num==2)
return true;
for(int i=2;i<=num/2;i++){
if(num%i==0){
// result=false;
return false;
}
}
return result;
}

public static void fun(int[]a,int m)
{
// int i;
int max=5;
if(a==null){
a=new int[5];
}
int primeNum=0;
for(int i=m+1;primeNum<5;i++){
if(isPrimeNumber(i)){
a[primeNum]=i;
primeNum++;
}
}

}
public static void main (String[] args) {
System.out.println("please enter <100 numbers:");
Scanner bh=new Scanner(System.in);
int m=bh.nextInt();
int []a=new int[5];
fun(a,m);
for(int i=0;i<a.length;i++)
System.out.print(a[i]+",");

}
}

51,409

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧