if语句运行不正确的简单java循环语句?

时间:2017-01-03 02:20:24

标签: java if-statement while-loop counter

我正在刷我的Java,无法让这个程序正常工作。它是一个计数器循环计数到100.如果计数器可被3整除,它将输出“On”,如果计数器可被7整除,它将输出“Base”,如果计数器可被7和3整除,它将输出“OnBase”,否则输出数字。现在该程序甚至不会编译,我不知道问题是什么。这是我的计划,感谢任何帮助。

public class Counter {

  public static void main(String[] args) {

    int i = 1;

    while(i <= 100)
    {

        if((i % 3) == 0){
            system.out.println("On");
            i++;
            continue;
        }

        if((i % 7) == 0){
            system.out.println("Base");
            i++;
            continue;
        }

        if((i % (3*7) == 0){
            system.out.println("OnBase");
            i++;
            continue;
        }

        system.out.println(i);
        i++;
    }
  }
}   

1 个答案:

答案 0 :(得分:1)

有两个与编译有关的问题:

  1. 将系统更改为系统。
  2. 在线上缺少右括号----- if((i%(3 * 7)== 0)){//添加右括号
  3. 除了编译之外,你所寻找的逻辑也是不正确的......我将在下面提供一些示例代码,看看那里......
  4.   

    //示例代码

    public static void main(String[] args) {
    
        for (int i = 1; i <= 100; i++) {
            if (((i % 3) == 0) && ((i % 7) == 0))
                System.out.println("OnBase");
            else if ((i % 3) == 0)
                System.out.println("On");
            else if ((i % 7) == 0)
                System.out.println("Base");
            else
                System.out.println(i);
        }
    }