学python的第二天作业!!!

今日学习内容:
    数据类型(data type)
    类型转换
    常见的运算符

作业1:判断一个数,是否是2的指数

    2的指数 
        0000 0010    0000 0001
        0000 0100    0000 0011
        0000 1000    0000 0111
        0001 0000    0000 1111

我们可以发现规律所有2的指数:n&(n - 1) == 0

故可以这样写:

n=int(input('请输入一个值:'))
if n & (n - 1) ==0 :
  print(f"{n}是2的指数")
else :
  print(f'{n}不是2的指数')

输入3的结果为

 输入2的结果为

作业2:给定成绩,判断用户成绩的档次
    100:提示满分
    90~100:优秀
    80~100:良好


    70~80:还可以,多多努力
    60~70:合格
    0~60:不合格
    0:鸡蛋 

可以通过多分支结构完成

例如:

score = int(input('请输入您的成绩:'))
if score > 100 or score < 0:
  print("error")
elif score == 100 :
  print('满分')
elif score < 100 and score >= 90:
  print('优秀')
elif score < 90 and score >= 80:
  print('良好')
elif score < 80 and score >= 70:
  print('还可以,多多努力')
elif score < 70 and score >= 60:
  print('合格')
elif score < 60 and score >= 0:
  print('不合格')
elif score == 0:
  print('鸡蛋')

 作业3:下列哪一项是“4是奇数或-9为正数”的否定(C )
    A、4是偶数或-9不是负数
    B、4是奇数或-9不是负数
    C、4是偶数和-9是负数
    D、4是奇数和-9不是负数

a|b的否定是  非a&非b,故选c。

作业4:如果A是“10110110”,B是“11100000”,C是“10100000”,下面成立的是(D )
    A、    C=A|B
    B、    C=~A
    C、    C=~B
    D、    C=A&B

这里复习一下位运算:

    &      两者都为真,则为真
    |         只要一者为真,则为真
    ^        相反为真,否则为假
    ~        所有位都取反
    >>      右移运算符
    <<      左移运算符

那么A|B=11110110,~A=01001001,~B=00011111,A&B=10100000因此选D

作业5:判断一个整数是奇数还是偶数,至少有两种方式实现

常规方法:

num = int(input('请输入一个数:'))
if num  == 0:
  print (f"{num}是非奇非偶")
elif num % 2 == 0 :
  print (f"{num}是偶数")
else:
  print(f"{num}是奇数")

用位运算解决,我们可以发现偶数化成二进制数末尾最后一个数是0奇数则是1,所以我们可以让这个数与1进行“与运算”

num = int(input('请输入一个数:'))
if num  == 0:
  print (f"{num}是非奇非偶")
elif num & 1 == 0 :
  print (f"{num}是偶数")
else:
  print(f"{num}是奇数")

作业6:求矩形的面积和周长
矩形的面积公式:长 * 宽

周长公式:2 *(长+宽)

a,b = int(input('请输入矩形的长:')), int(input('请输入矩形的宽:'))
print(f"area ={a}*{b}={a*b}")
print(f"cir =2*({a}+{b})={2*(a+b)}")


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

溢彩风华

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值