python编程题目

本文包含一系列编程挑战,包括根据闰年规则判断年份,计算体重与身高的BMI指数以评估身材,生成并比较随机数,检查三位数是否为水仙花数,找出最大数以及验证五位数是否为回文数。这些挑战涉及基础算法和逻辑思维,适合编程初学者练习。
摘要由CSDN通过智能技术生成

1.从控制台输入一个年份,判断该年是否是闰年,是闰年的条件: 能被4整除但是不能被100整除或者能够被400整除的年。

year = int(input('请输入你的年份year:'))
if (year%4==0 and year%100!=0) or (year%400==0):
    print('是闰年')
else:
    print('不是闰年')

2.定义两个变量保存一个人的身高和体重,编程实现判断这个人的身材是否正常!

公式: 体重(kg)/身高(m)的平方值 在18.5 ~ 24.9之间属于正常。

weight = float(input('请输入你的体重:'))
height = float(input('请输入你的身高:'))
if 18.9 <= weight / height**2 <= 24.5: # **幂运算优先级高于/
    print('身材标准!')
else:
    print('注意管理身体')

3.x 为 0-99 取一个数,y 为 0-199 取一个数,如果 x>y 则输出 x, 如果 x 等于 y 则输出 x+y,否则输出y。

import random                     
x = int(random.randint(0, 99))    
y = int(random.randint(0, 199))   
if x > y:
    print(x)
elif x == y:
    print(x+y)
else:
    print(y)

4.从控制台输入一个三位数,如果是水仙花数就打印“是水仙花数”,否则打印“不是水仙花数”,例如:153 = 1的三次方 + 5的三次方 + 3的三次方,则153是水仙花数。

num1 = int(input('输入一个三位数字:'))
hundred = num1 //100   #百位
ten = num1 % 100 //10  #十位
bit = num1 % 10        #个位
   
sums = hundred**3+ten**3+bit**3
   
if sums == num1:
    print('这个数是水仙花数')
else:
    print('这个数不是水仙花数')
#查找三位数的水仙花数
for a in range(100, 1000):   # 是个三位数
    b = a % 10               # 取个位数
    c = a // 10 % 10         # 取十位数
    d = a // 100             # 取百位数
    if b ** 3 + c ** 3 + d ** 3 == a:   # 判断条件各数字立方和等于该本身
        print('%d是水仙花'%a)

5.从控制台输入三个数,输出其中最大的值。

 

num1 = int(input('输入第一个数字:'))
num2 = int(input('输入第二个数字:'))
num3 = int(input('输入第三个数字:'))
maxs = num1
if num2 > num1:
    maxs = num2
if num3 > maxs:
    maxs = num3
print('三个数中的最大值:%d' % maxs)

6.从控制台输入一个五位数,如果是回文数就打印“是回文数”,否则打印“不是回文数”,例如:11111 12321 12221

num = int(input('请输入一个五位的数字:'))
if 10000>num or num>100000:
    print('请输入一个五位数')
else:
    #12321
    w = num//10000   #1 万位
    q = (num-w*10000)//1000 #(12321-10000)//1000=2  千位
    b = (num-w*10000-q*1000)//100 #(12321-10000-2000)//100=3  百位
    s = (num-w*10000-q*1000-b*100)//10  #(12321-10000-2000-300)//10=2  十位
    g = num%10                                  #12321%10=1  个位
    if w == g and q==s:
        print('输入的数字是回文数')
    else:
        print('输入的数字不是回文数')

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值