文章目录
1:两个数交换,要求使用异或法完成2:判断一个数,是否是2的指数3:给定成绩,判断用户成绩的档次4:有1、3、5、7、9组成的所有不重复的四位数之和是多少?( B)5:一个会议有12个员工,假设已有8个员工是女性,求所有员工都是女性的概率(D )6:7:下列哪一项是“4是奇数或-9为正数”的否定(C )8:如果A是“10110110”,B是“11100000”,C是“10100000”,下面成立的是(D )9:判断一个整数是奇数还是偶数,至少有两种方式实现(位运算已经讲解的话)10:求矩形的面积和周长11:根据天数(从控制台上输入)计算周数和剩余的天数12: 根据已知圆的半径radius(从控制台上输入),求其面积和周长(PI可以使用Math.PI,也可以使用3.14)
1:两个数交换,要求使用异或法完成
思路: 根据异或原理可知:相同为0,不同为1 a=2 #a的二进制为010 b=1 #b的二进制为001 #---------------- # 011=3,所以3为中间值,来进行交换 print(“交换前的数字为;%s,%s”%(a,b)) a=a^b #a(010)^b(001)=(011),此时a=011,b=001 b=a^b #a(011)^b(001)=(011),此时b=010,a=011 a=a^b #a(011)^b(010)=(001),此时a=001,b=010 print(“交换后的数字为;%s,%s”%(a,b)) 综上所诉:其实这种原理也与找中间商类似,不过这个异或用的是数值,说实话我感觉和找中间商交换物品原理一样。
a=2
b=1
print("交换前的数字为;%s,%s"%(a,b))
a=a^b
b=a^b
a=a^b
print("交换后的数字为;%s,%s"%(a,b))
![在这里插入图片描述](https://img-blog.csdnimg.cn/f8d76bebe56a40c6828833381d70b918.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5qmY5a2Q54ix5ZCD5qmY5a2Q,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center)
2:判断一个数,是否是2的指数
num=int(input("请输入一个数字;"))
if num&(num - 1) == 0:
{
print("这个数字是2的指数:%s"%num)
}
else :
{
print("这个不是2的指数,请换个数字输入叭!!!!")
}
![在这里插入图片描述](https://img-blog.csdnimg.cn/6a5846b71b534fe0bf528b817ebd7f21.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5qmY5a2Q54ix5ZCD5qmY5a2Q,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center)
2的指数
0000 0010 0000 0001
0000 0100 0000 0011
0000 1000 0000 0111
0001 0000 0000 1111
提示:所有2的指数:n&(n - 1) == 0
3:给定成绩,判断用户成绩的档次
100:提示满分
90~100:优秀
80~100:良好
70~80:还可以,多多努力
60~70:合格
0~60:不合格
0:鸡蛋
grade=int(input("请输入您的成绩:"))
if(grade>100):
{
print("亲,请你正确输入,不要捣乱!!!")
}
elif grade==100:
{
print("您真棒!!您是满分,给你点个赞")
}
elif 90=70:
{
print("您的成绩还可以,多多努力")
}
elif grade>=60:
{
print("您的成绩等级为合格")
}
elif 0 |