Java中的扫描程序不会读取我的所有输入

时间:2013-10-26 21:33:12

标签: java java.util.scanner

我正在开发一个需要4行输入的应用程序。第一行包含N,即迭代次数,以下N行包含数据。

这是我的计划:

  import java.util.Scanner;

   public class Principal {
static String binary;
static int count = 0;
public static void main (String args [])
{       
    Scanner s = new Scanner(System.in);
    int N = Integer.parseInt(s.next());
    //System.out.println(N);
    int X = 0;
    int cpt=1, test = 1;
    boolean negatif = false;
    boolean test1 = false;
    for (int i =0;i <N; i++)
    {
        X = Integer.parseInt(s.next());
        //System.out.println(s.next());
        while (cpt < 1337)
        {
            if ((cpt % 7 == 0)||(Integer.toString(cpt)).contains("7"))
            {                   
                negatif = !negatif;
            }

            if (negatif == false)
            {
                if (test == 1337)
                    test = 1;
                else
                    test++;
            }
            else
            {
                if (test == 1)
                    test = 1337;
                else
                    test--;
            }

            cpt++;
            if (cpt == X)
            {
                test1 = true;
                break;
            }

        }

        if (test1)
            System.out.println(test);

        test = 1;
        cpt=1;
        negatif = false;
        test1 = false;
    }

}
  }

输入是:

 3
10
100
1000

输出应该是:

 4
 2
1311

问题是我无法到达包含1000的最后一行。

请帮忙。

0 个答案:

没有答案