我在这个问题上有什么错误。简单比较错误

时间:2019-08-30 21:45:06

标签: java

任务 给定整数n,请执行以下条件操作:

  • 如果n为奇数,则打印怪异
  • 如果n为偶数且在2到5的范围内,则打印Not Weird
  • 如果n为偶数且在6到20的范围内,则打印怪异
  • 如果n为偶数且大于20,则打印Not Weird

我写了一个代码,但是在打印18和20时显示错误。

public static void main(String[] args) {
        int N = scanner.nextInt();

        scanner.close();

        if(N%2 != 0){
        System.out.println("Weird");
        }
        else if(N%2 ==0 && N>=2||N<=5)
        {
            System.out.println("Not Weird");
        }
        else if(N%2 ==0 && N>=6||N<=20)
        {
            System.out.println("Weird");
        }
        else if(N%2 ==0 && N>20)
      {
            System.out.println("Not Weird");

      }  

    }
}

1 个答案:

答案 0 :(得分:1)

您需要将您的条件||更改为条件&&,以检查类似范围

else if(N%2 == 0 && N >= 2 && N <= 5)