为了账号安全,请及时绑定邮箱和手机立即绑定

Java7 上的条件语句

Java7 上的条件语句

慕姐8265434 2021-10-27 19:18:42
你好,我刚刚开始了关于hackerrank的编码练习,我在使用带有跳过功能的扫描仪类时遇到了一些挑战。这是我尝试过的。目标 在这个挑战中,我们开始使用条件语句。查看教程选项卡以获取学习材料和教学视频!任务给定一个整数,执行以下条件操作:如果 n 是奇数,则打印 Weird如果 n 是偶数并且在 2 到 5 的包含范围内,则打印 Not Weird如果 n 是偶数并且在 6 到 20 的包含范围内,则打印 Weird如果 n 是偶数且大于 20,则打印 Not Weird完成编辑器中提供的存根代码以打印 n 是否奇怪。输入格式包含一个正整数 n 的单行。约束输出格式如果数字很奇怪,则打印 Weird;否则,打印 Not Weird。import java.io.*;import java.math.*;import java.security.*;import java.text.*;import java.util.*;import java.util.concurrent.*;import java.util.regex.*;public class Solution {    private static final Scanner scanner = new Scanner(System.in);    public static void main(String[] args) {        int N = scanner.nextInt();        if (N % 2 == 0 && N >= 2 && N <= 5 && N > 20) {            System.out.println("not weird");        } else if (N % 2 == 0 && N >= 6 && N <= 20) {            System.out.println("weird");        } else {            System.out.println("weird");        }        scanner.skip("(\r\n|[\n\r\u2028\u2029\u0085])?");        scanner.close();    }}请问我做错了什么。
查看完整描述

2 回答

?
明月笑刀无情

TA贡献1828条经验 获得超4个赞

你混淆了&&and ||,所以你的第一个if永远不会像评论中提到的那样运行。


所以看起来唯一"Not Weird"打印出来的是2,4和偶数> 20。


因此,请充分利用它来检查"Weird"输出,否则为 print "Not Weird"。


if (n % 2 == 0) {

    if ((n >= 2 && n <= 5) || (n > 20)) {

        return "Not Weird";

    }

}

return "Weird";


说了这么多,我不确定你想要什么 Scanner::skip


查看完整回答
反对 回复 2021-10-27
  • 2 回答
  • 0 关注
  • 121 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信