我的程序代码//求101 到200之间的素数,并显示出来
package sss;
public class ss {
public static void main(String[] args)
{
int k=0;
int[] a=new int[10];
for(int i=101;i<=200;i++)
for(int j=2;j<=i;j++)
{
if (i%j==0&j!=i) break;
else
{a[k]=i;
k=k+1;
}
}
for(int i=0;i<k;i++)
{
System.out.println(a[i]+" ");
}
System.out.println("是素数");
}
}
运行该代码是总是出现
java.lang.ArrayIndexOutOfBoundsException: 100
at sss.ss.main(ss.java:16)
Exception in thread "main"
提示这样的错误
希望大峡门帮帮我
应该是 int[] a=new int[10]; 的问题
public boolean isSS (int input){
for(int i = 2 ; i< input ;i++){
for(int j = 2 ; j< input ;j++){
if((i*j)==input)
return false;
}
}
return true ;
}
public static void main(String[] args)
{
for(int i=101;i<=200;i++)
if(new ss().isSS(i)){
System.out.println(i+"是素数");
}
}
}
package sss;
public class ss {
public static void main(String[] args)
{
int k=0;
int[] a=new int[100];
for(int i=101;i<=200;i++)
{
int j=2;
for(j=2;i%j!=0;j++)
{}
if(j==i)
{
a[k]=i;
k++;
}
}
for(int i=0;i<k;i++)
{
System.out.println(a[i]+" ");
}
System.out.println("是素数");
}
}
public class ss
{
public static void main(String[] args)
{
ArrayList a=new ArrayList();
for(int i=101;i<=200;i++)
{
for(int j=2;j<=i;j++)
{
if (i%j==0 && j!=i)
break;
else
a.add(String.valueOf(i));
}
}
for(int k=0;k<a.size();k++)
{
System.out.println((String)a.get(k)+" ");
}
System.out.println("是素数");
}
}
{
private boolean isSS(int val){
boolean bol=true;
for(int i=2;i<val;i++){
if(val%i!=0)
bol=true;
else{
bol=false;
break;
}
}
return bol;
} public static void main(String[] args){
test t=new test();
for(int j=100;j<200;j++){
if(t.isSS(j))
System.out.println(j+"是素数");
}
}
}