【蓝桥杯训练题·深基3.例2】数的性质

【深基3.例2】数的性质

题目描述

一些整数可能拥有以下的性质:

  • 性质 1:是偶数;
  • 性质 2:大于 4 4 4 且不大于 12 12 12

小 A 喜欢这两个性质同时成立的整数;Uim 喜欢这至少符合其中一种性质的整数;八尾勇喜欢刚好有符合其中一个性质的整数;正妹喜欢不符合这两个性质的整数。现在给出一个整数 x x x,请问他们是否喜欢这个整数?

输入格式

输入一个整数 x ( 0 ≤ x ≤ 1000 ) x(0\le x \le 1000) x(0x1000)

输出格式

输出这 4 4 4 个人是否喜欢这个数字,如果喜欢则输出 1,否则输出 0,用空格分隔。输出顺序为:小 A、Uim、八尾勇、正妹。

样例 #1

样例输入 #1

12

样例输出 #1

1 1 0 0

分析:对输入的数字num进行两次判断,并对这两次判断的真值进行运算。

import java.util.Arrays;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int num = sc.nextInt();
        int arr[] = new int[4];
        Arrays.fill(arr, 0);
        boolean q11 = q1(num);
        boolean q22 = q2(num);


        if (q11 || q22) {
            arr[0] = 1;
        }
        if (q11 && q22) {
            arr[1] = 1;
        }
        if (q11 ^ q22) { //异或运算
            arr[2] = 1;
        }
        if (!(q11 || q22 ) ) {
            arr[3] = 1;
        }
        for (int n : arr) {
            System.out.print(n + " ");
        }
    }

    public static boolean q1(int num){
        if(num % 2 == 0){
           return true;
        }return false;
    }

    public static boolean q2 (int num){
        if(num > 4 && num <= 12){
            return true;
        }return false;
    }


}

but…
在这里插入图片描述
有一个测试错误。

在我不懈努力之下, 发现代码中 “&”“&&” 出现了混淆。
查阅一番后,总结出以下:

运算符运算范例结果
!!truefalse
&true & truetrue
&true & falsefalse
&false & falsefalse
|true | truetrue
|true | falsetrue
|false | falsefalse
^异或true ^ truefalse
^异或true ^ falsetrue
^异或false ^ falsefalse
&&短路与true && truetrue
&&短路与true && falsefalse
&&短路与false && falsefalse
||短路或true || truetrue
||短路或true || falsetrue
||短路或false || falsefalse

并且代码中还有&、| 的混乱使用。(居然只有一个报错

修改后的代码是

import java.util.Arrays;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int num = sc.nextInt();
        int arr[] = new int[4];
        Arrays.fill(arr, 0);
        boolean q11 = q1(num);
        boolean q22 = q2(num);


        if (q11 | q22) {
            arr[0] = 1;
        }
        if (q11 & q22) {
            arr[1] = 1;
        }
        if (q11 ^ q22) {
            arr[2] = 1;
        }
        if (!(q11 | q22)) {
            arr[3] = 1;
        }
        for (int n : arr) {
            System.out.print(n + " ");
        }
    }

    public static boolean q1(int num){
        if(num % 2 == 0){
            return true;
        }return false;
    }

    public static boolean q2 (int num){
        if(num > 4 & num <= 12){
            return true;
        }return false;
    }


}

这样就可以了

在这里插入图片描述

---------------------------蓝桥杯备赛系列正在不断更新中,欢迎各位大佬指导---------------------------------------

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
《智能门锁》是蓝桥杯模拟试中的一个压缩文件,后缀为.rar,这是一种常见的压缩格式。该压缩文件中可能包含与智能门锁相关的一些资料、文档、程序代码等内容。 智能门锁是一种结合了现代科技和安全需求的产品,通过使用该门锁,可以提高家居安全性和便利性。智能门锁通常采用电子技术与机械结合的方式,通过密码、指纹、人脸识别等方式对门进行解锁,具有高度的安全性和智能化。 通过解压《智能门锁》.rar文件,我们可以获取其中的内容,可能包括以下方面: 1. 产品介绍:介绍智能门锁的功能、特点和工作原理等,让用户了解该产品的本信息。 2. 安装手册:提供智能门锁的安装教程,指导用户如何安装和调试智能门锁的硬件设备。 3. 用户指南:为用户提供使用智能门锁的详细说明,包括设置开锁密码、添加指纹或人脸识别等操作步骤。 4. 技术文档:包含智能门锁的技术规格、接口说明、电路图等详细信息,适合开发人员进行相关应用开发。 5. 示代码:可能会提供一些示代码,供开发人员参考和学习,帮助他们实现自己的智能门锁应用。 总的来说,《智能门锁》.rar文件可能会包含智能门锁的各个方面的资料和文档,帮助用户了解和使用智能门锁,以及开发人员进行智能门锁相关应用的开发。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值