在while循环中双循环,无法找出错误

时间:2017-10-26 06:21:19

标签: java for-loop while-loop

[来自编辑:请进一步扩展这篇文章,解释你想要做什么。如果我们不知道你在尝试什么,社区就无法轻易弄清楚我们如何能够帮助你。]

我找到了许多例子,但仍然不明白我的错误! 另外,请说明原因或使用方法,这可以帮助我掌握其他类似的程序。

package twinprimes9;

import java.util.Scanner;
public class TwinPrimes9 {
/**
 * @param args the command line arguments
 */
public static void main(String[] args) {
    // TODO code application logic here
    Scanner sc = new Scanner(System.in);
    int x=0,y=0,a=0,b=0,c=0,d=0,i=0,j=0;
    int count;
    int rg = 0;
    int rd = 1;
    int p;
    int fg;
    while (rg!=-1){
        System.out.println("Round "+rd);
        System.out.println("Enter the search range (enter -1 to stop the procedure :) ");
        rg = sc.nextInt();
        fg=0;
        p=0;
        count=0;
        if (rg==-1){
            System.out.println("End");
        } // if0 end 
        else if (rg<-1){
            System.out.println("Invaild input, please enter again !" );
        } // else if (if0) end 
        else {

            for (i=3;i<rg;i++){

                for (j=2;j<i;j++){
                    if (i%j==0){
                       p=1;

                    } // if1 end
                } // for j loop end
                if (count==0&&p!=1){
                    a=i;
                    count++;
                }// else if1(if2) end 
                else if (count==1&&p!=1){
                    b=i;

               if ((b-a==2)&&fg==0){
                   System.out.println("("+a+","+b+")");
                   fg=1;
               } // if 4 ( if3 (if2)) end
               else if (b-a==2&&fg==1){
                   System.out.print("("+a+","+b+")");
                   fg=0;
               } // else if 4 (if3 (if2)) end

               }// else if3 (if2) end


            } // for i loop end 

        } // else (if0) end 
            rd++;
    } // while loop end 
}
}

如果你愿意,请帮帮我。

0 个答案:

没有答案