(其实是作业啦)
位运算判断一个整数是奇数还是偶数
num1 = int(input("请输入一个数:"))
if num1|1 == num1:
print("不是偶数")
else:
print("是偶数")
思路:
(1) 位运算作用于二进制,
(2) 要判断二进制的奇偶看最低位是0(偶)还是1(奇),这个我是联想到位权,只有最低为才是2的零次方
(3) 让它更0000........1进行或运算,最低位为1,这个数就不变,否则就变
输入一个年份,判断该年是否是闰年
year = int(input("输入年份:"))
if year%4 == 0 and year %100 != 0:
print("闰年")
elif year %400 ==0:
print("闰年")
else:
print("平年")
思路:
满足闰年的两个条件: (1) 能够被400整除
(2) 能被4整除,不能被100整除
输入赵本山的考试成绩,显示所获奖励
grade = float(input("输入赵本山的成绩:"))
if grade > 100 and grade < 0:
print("输入非法")
else:
if grade == 100:
print("爸爸给他买辆车")
elif grade >= 90:
print("妈妈给他买MP4")
elif grade>=60:
print("妈妈给他买本参考书")
else:
print("爹妈混合双打")
思路: 简单的多分支,这里我采用了递减判断,简化代码
健康计划
#计算公式:BMI = 体重 / 身高^2
m = float(input("输入升高"))
kg = float(input("输入体重"))
BMI = kg/(m*m)
if BMI < 18.5:
print("过轻")
elif BMI < 24:
print("正常")
elif BMI < 27:
print("过重")
elif BMI < 30:
print("轻度肥胖")
elif BMI < 35:
print("中度肥胖")
else:
print("过度肥胖")
思路: 多分支,同上
设计一个程序,完成商品的购买,展示商品信息(折扣)->输入商品价格->输入购买数量->提示付款输入付款金额->打印购买小票
print("商品信息:")
print("A. 商品A - $10.00 95折扣")
print("B. 商品B - $15.00 90折扣")
# 用户选择商品和数量
product = input("请选择要购买的商品(输入商品字母):")
quantity = int(input("请输入购买数量:"))
# 根据用户选择计算总价
if product == 'A':
total= 10.00 * quantity * 0.95
elif product == 'B':
total = 15.00 * quantity * 0.9
print("价格:" + str(total))
money = float(input("付款金额"))
# 打印购买小票
print("\n购买详情:")
print("商品:" + product)
print("购买数量: " + str(quantity) )
print("总价:" + str(total))
print("付款金额:" + str(money))
print("找零:" + str(money - total))
思路: 挨个实现功能就行
控制台图案打印
(1)
***********
***********
***********
i = 0
j = 0
while i < 3:
j=0
while j < 11:
print("*",end="")
j += 1
print()
i += 1
(2)
*
**
***
****
*****
******
i = 0
while i < 6:
j=0
while j <= i:
print("*", end = "")
j += 1
print()
i += 1
(3)
*
**
***
****
*****
i = 0
while i < 6:
j=0
while j < 5-i:
print(" ",end = "")
j = j + 1
j=0
while j <= i:
print("*", end = "")
j += 1
print()
i += 1
思路 : 先打印空格,再打印星星
(4)
*
***
*****
*******
i = 1
while i <= 4:
j=1
while j <= 4-i:
print(" ",end = "")
j = j + 1
j=1
while j <= (i*2-1):
print("*", end = "")
j += 1
print()
i += 1
思路: 每行空格数减一,但 星星变为: 行数*2-1;