python百题百练 二级题目_python练习集100题(1-20)

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

list_num=[1,2,3,4]

all_num=[]

for i in list_num:

for j in list_num:

for k in list_num :

if (i!=j) and (i!=k) and (j!=k):

num=i*100+j*10+k

all_num.append(num)

print(all_num)

print('A total of %d numbers.' %len(all_num))

题目2:企业发放的奖金根据利润提成。

低于或等于10万元时,奖金可提成10%;

高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;

20万到40万之间时,高于20万元的部分可提成5%;

40万到60万之间时,高于40万元的部分,可提成3%;

60万到100万之间时,高于60万的部分,可提成1.5%;

超过100万元的部分按1%提成;

从键盘输入当月利润,求应发奖金总数。

while True:

num=input('请输入利润:').strip()

if num.isdigit():

pass

else :

print('输入的利润必须为数字')

continue

num=int(num)    #转换为整数类型

if num > 1000000 :

profit = (num-1000000)*0.01 + 400000*0.015 + 200000 *0.03 + 200000*0.05 + 100000*0.075 + 100000*0.1

break

elif num > 600000 :

profit = (num-400000)*0.015 + 200000 *0.03 + 200000*0.05 + 100000*0.075 + 100000*0.1

break

elif num > 400000 :

profit = (num-200000) *0.03 + 200000*0.05 + 100000*0.075 + 100000*0.1

break

elif num > 200000 :

profit = (num-200000)*0.05 + 100000*0.075 + 100000*0.1

break

elif num > 100000 :

profit = (num-100000)*0.075 + 100000*0.1

break

else :

profit = num*0.1

break

print('应发奖金总数为:%d' %profit)

题目3:一个整数,它加上100后是一个完全平方数。再加上168又是一个完全平方数,问该数是多少。

import math

int_num=0

while True:

num1=math.sqrt(int_num+100)

num2=math.sqrt(int_num+168)

if num1==int(num1) and num2 == int(num2):

break

int_num += 1

print('该整数为 %d' %int_num)

题目4:输入某年某月某日,判断这一天是这一年的第几天。(格式 如:19870604)

from builtins import len

leap_year={'01':31,'02':29,'03':31,'04':30,'05':31,'06':30,

'07':31,'08':31,'09':30,'10':31,'11':30,'12':31}    #闰年每月最大天数

comm_year={'01':31,'02':28,'03':31,'04':30,'05':31,'06':30,

'07':31,'08':31,'09':30,'10':31,'11':30,'12':31}     #平年每月最大天数

while True:

num = input('请输入日期,格式如19540105:')

if num.isdigit() and len(num)==8 :

pass

else :

print('格式错误,请重新输入')

continue

year_num=int(num[:4])

month_num=num[4:6]

day_num=int(num[6:])

if (int(month_num)>12) or (int(month_num)<=0):     #月份错误时,重新输入,'01'字符串转换为整数时,会舍弃0ÿ

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值