彻底明白:与或非的使用

1.题目:有1、2、3、4、个数字,能组成多少互不相同且无重复数字的三位数?都是三位

  注:程序分析:可填在百位、十位、个位的数字都是1、2、3、4.

组成所有排列后再去掉不满足条件的排列。

先来一个python的答案、再java。

答:python版

count=0                        #定义变量记录个数
for i in range(1,5):                    # i变量1-5
    for j in range(1,5):                # j变量1-5
        for k in range(1,5):                # k变量1-5
            if(i!=j)and (j!=k) and (k!=i):        #计算对比不同值
                count += 1                #计算个数
                print (i,j,k)                # 输出三位数
print ("一共",count,"个三位数")    

答:java版

public static void main(String[] args) {
        // “!”(逻辑非)、“&&”(逻辑与)、“||”(逻辑或)是三种逻辑运算符
        int count =0;
        for (int i=1;i<5;i++){
            for (int j=1;j<5;j++){
                for (int t=1;t<5;t++){
                    if (i!=j&&j!=t&&t!=i){
                        count++;
                        System.out.println(i+" "+j+" "+t);
                    }


                }
            }
        }
        System.out.println(count);
    }

第一种:中的

  count+=1;

意思也是加一的可以换成 0+1=count

与第二种的

count++;

意思是差不多都是加1记录次数。

还有一个就是

“!”(逻辑非)、“&&”(逻辑与)、“||”(逻辑或)是三种逻辑运算符

逻辑非:0变1,1变0;简单记忆就是取反;

逻辑与:两个都为1则取1,否则取0;

逻辑或:其一为1则取1,否则取0

简述:

非:指不等于的意思

例:

System.out.println(
if(1!=2))
//输出true

与:指有一方为false,结果都为false

 System.out.println(if (i!=j&&j!=t&&t!=i));

或:指一方为true,结果都为true

 

欢迎关注小编的公众号,更多学习视频、模板、工具(wind激活工具)!!!

《彻底明白:与或非的使用》

点赞