for(j=2,j<=i/2.j++){循环写错了 :)

解决方案 »

  1.   

    CSDN - 专家门诊 - 问题 
     推荐给朋友 | 关闭窗口  
     
     
     
      主  题:  求100内的素数问题啊!菜鸟真菜。都快没信心了。高分送啊!赚分好机会 
    作  者:  take5 (荸荠)  
    等  级:   
    信 誉 分:  100 
    人  气:  0 
    所属论坛:  Java J2SE / 基础类 
    问题点数:  100   
    回复次数:  1 
    发表时间:  2003-5-6 12:23:56 
       
     
       
    public  class  FindPrime{  
               public  static  void  main(String  arts[]){  
               int  i,j;  
               boolean  isPrime=true;  
                           for(i=2,i<=100,i++)                                
                                 for(j=2,j<=i/2,j++){  
                                     if(i%j==0)  
                                       isPrime=flase;  
                                         break;  
                                       }    
                                 
               if(isPrime)  
                           System.out.println("this  is  prime");  
                           else  
                           System.out.println("this  i  not  prime");  
         }    
     
     现在还有哪些?
      

  2.   

    错误很多,帮你调试了一下
    public class FindPrime
    {
    public static void main(String arts[])
    {
    int i,j;
    boolean isPrime = true;
    for(i = 2; i <= 100; i++)               
            {
             isPrime=true;
    for(j = 2; j <= i/2; j++)
    {
    if(i % j == 0)
    {
           isPrime = false;
            break;
            }
                 } 
          if(isPrime)
            System.out.println(i + " is prime");
       else
         System.out.println(i + "is not prime");
             }

    }
      

  3.   

    for(j = 2; j <= i/2; j++)
    还可以换成
    for(j = 2; j <= Math.sqrt(i); j++)
      

  4.   

    public  class  FindPrime{  
               public  static  void  main(String  args[]){  
               int  i,j;  
               boolean  isPrime=true;  
                           for(i=2;i<=100;i++)                                
                                 for(j=2;j<=i/2;j++){  
                                     if(i%j==0)  
                                       isPrime=false;  
                                         break;  
                                       }    
                                 
               if(isPrime)  
                           System.out.println("this  is  prime");  
                           else  
                           System.out.println("this  i  not  prime");  
         }
    }    现在呢?:)我就问1这个问题怎么解决?如何输出这个1呢?
      

  5.   

    改如下:
    public class FindPrime{
      public static void main(String[] argx) {
        int i, j;
        for (i = 2; i <= 100; i++) {
          boolean isPrime = true;
          for (j = 2; j <= i / 2; j++) {
            if (i % j == 0) {
              isPrime = false;
              break;
            }
          }
          if (isPrime)
            System.out.println("this is prime");
          else
            System.out.println("this i(i=" + i + ") not prime");    }
      }
    }
      

  6.   

    bool flag=true;
       for(int m=2;m<=100;m++)
       {    
          for(int i=2;i<m;i++)
         {
           if(m%i==0)
           {
             flag=false;
             break;
           } 
           else
             flag=true;
         }
         if(flag==true)
          System.out.println(m+" ");
       } 
      

  7.   

    public class FindPrime{
       public static void main(String[] args) {
          for(int i=2;i<=100;i++) {
             boolean isPrime=true;
             for(int j=2;j<=i/2;j++){
                if(i%j==0){
                   isPrime=false;
                   break;
                }
             }         System.out.println(i+" is "+((isPrime)?"":"not ")+"a prime");
          }
       }
    }
      

  8.   

    public  class  FindPrime{  
               public  static  void  main(String  arts[]){  
               int  i,j;  
               boolean  isPrime=true;  
                           for(i=2,i<=100,i++)                                
                                 for(j=2,j<=i/2,j++){  
                                     if(i%j==0)  
                                       isPrime=flase;  
                                         break;  
                                       }    
                                 
               if(isPrime)  
                           System.out.println("this  is  prime"+i);  
                           else  
                           System.out.println("this  is  not  prime"+i);  
         }  还是不对啊:(我这个算法写的就有问题是吗????/
      

  9.   

    public class FindPrime{
      public static void main(String[] argx) {
        int i, j;
        for (i = 2; i <= 100; i++) {
          boolean isPrime = true;
          for (j = 2; j <= i / 2; j++) {
            if (i % j == 0) {
              isPrime = false;
              break;
            }
          }
          if (isPrime)
            System.out.println("this i(i="+i+") is prime");
          else
            System.out.println("this i(i="+i+") not prime");    }
      }
    }
    运行上面的代码,可以得到你要的东西,这是我运行得到的输出片段
    this i(i=70) not prime
    this i(i=71) is prime
    this i(i=72) not prime
    this i(i=73) is prime
    this i(i=74) not prime
    this i(i=75) not prime
    this i(i=76) not prime
    this i(i=77) not prime
    this i(i=78) not prime
    this i(i=79) is prime
    this i(i=80) not prime
    this i(i=81) not prime
    this i(i=82) not prime
    this i(i=83) is prime
    this i(i=84) not prime
    this i(i=85) not prime
    this i(i=86) not prime
    this i(i=87) not prime
    this i(i=88) not prime
    this i(i=89) is prime
    this i(i=90) not prime
    this i(i=91) not prime
    this i(i=92) not prime
    this i(i=93) not prime
    this i(i=94) not prime
    this i(i=95) not prime
    this i(i=96) not prime
    this i(i=97) is prime
    this i(i=98) not prime
    this i(i=99) not prime
    this i(i=100) not prime
      

  10.   

    public class Prime{
    public static void main(String arts[]){
    int i,j;
    for(i=2;i<=100;i++)   {
               boolean a=true;            
       for(j=2;j<=(int)i/2+1;j++){
          if(i%j==0){
                    a=false;
          break;
                }            
                  } 
                  if(a)System.out.println(i);
             }
        }
    }
      

  11.   

    public class Hello{
    public static void main(String arts[]){
    int i,j;
    boolean isPrime=true;
    for(i=2;i<=100;i++){
    isPrime=true;               
    for(j=2;j<=i/2;j++){
    if(i%j==0){
    isPrime=false;
    break;
    }
    }
    if(isPrime)
    System.out.println("this is prime"+i);
    else
    System.out.println("this i not prime"+i);

    }
    } 兄弟
    你的基础太不好了,好好看看java基础书籍,不要着急编写这样的程序
      

  12.   

    好象数学上规定:1 不是素数每次都错在for( i=2,i<i/2,i++)  //for( i=2;i<i/2;i++) 这个逗号错的概率这么大!// 有分给我最好,我很想要分啊
      

  13.   

    这位仁兄是不是在做老师布置的java作业啊