Python日练习题目

Python练习题目

基础不牢,就要坚持训练。敲就对了
先看题目,自己敲了再对着看。
有错就告诉我
或者发我邮件[email protected]

  • 题目1
    有1,2,3,4数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
##count用来统计三位数的大小
# Count=0
# for i in range(1,5):
#     for j in range(1,5):
#         for k in range(1,5):
#             if (j!=k) or (i!=k)  or (i!=j):
#                 print (i,j,k)
#                 Count+=1
# print (Count)
  • 题目2
    企业发放的奖金根据利润提成。
    利润低于或者等于10万元时,奖金可提10%
    高于10万,低于20万,低于10万的部分按照10%提成,高于10万元的部分,可提成7.5%
    20万元到40万元之间时,高于20万元的部分,可以提成5%
    40万元到60万元之间,高于40万元的部分,可以提成3%
    60万元到100万元之间时候,高于60万元的部分,可提成1.5%
    高于100万元时,超过100万的提成1%
    从键盘输入当月利润,求应发放奖金总数?
#分出来先,养成这个思维,不急
'''
input和raw_input的区别
     当输入为纯数字时
         input返回的是数值类型,如int,float
         raw_inpout返回的是字符串类型,string类型
     输入字符串为表达式
       input会计算在字符串中的数字表达式,而raw_input不会。
        如输入 “57 + 3”:
         input会得到整数60
         raw_input会得到字符串”57 + 3”  
'''
Bonus1=10000*0.1
Bonus2=Bonus1+10000*0.075
Bonus4=Bonus2+20000*0.05
Bonus6=Bonus4+20000*0.03
Bonus10=Bonus6+40000*0.015

i=int(input('输入当月利润:\n'))
if i<=10000:
    Commission=i*0.1
elif i<=20000:
    Commission=Bonus1+(i-10000)*0.075
elif i<=40000:
    Commission=Bonus2+(i-20000)*0.05
elif i<=60000:
    Commission=Bonus6+(i-40000)*0.035
elif i<=100000:
    Commission=Bonus10+(i-60000)*0.015
else:
    Commission=Bonus10+(i-100000)*0.01
print (Commission)
  • 题目3
    一个整数,它加上100后是一个完全平方数,再加上268又是一个完全平方数,请问该数是多少?
#这个数具体多少个不清楚,但是电脑可以无限的算下去。我估计只会无限逼近原来的答案,所以数量有限吧。从0开始遍历,选择到10000结束好了。
#这个问题有毛病,到底是加了100后,再加268;还是分别加,代码都差不多,没有难度

import math
count=0
for i in range(0,10000):
    x=int(math.sqrt(i+100))
    y=int(math.sqrt(i+268))
    if (x*x==i+100) and (x*x==i+268) :
        print(i)
        count+=1
print("数量一共有%d个"%count)
  • 题目4
    输入某年某月某日,判断这一天是这一年的第几天?
year=int(input("请输入年份:"))
month=int(input("请输入月份:"))
day=int(input("请输入几号:"))
sum=0
months=[31,59,90,120,151,181,212,243,273,304,334,365]
if (month==12) or (month==0):
    print("%d的第%d天"%(year,day))
if (month>0) and (month<12):
    sum=months[month-1]
    if (year%400==0) or (year%4==0):
        sum+=1
print(sum)
  • 题目5
    输入三个整数x,y,z,请把这三个数由小到大输出。
I=[]
for i in range(1,4):
    x=int(input("输入第%d个数字:"%i))
    I.append(x)
I.sort()
print(I)
  • 题目6
    用*号输出字母c的图案

a=176
b=219
print (chr(a),chr(b),chr(b),chr(b),chr(a))
print (chr(b),chr(a),chr(a),chr(a),chr(a))
print (chr(b),chr(a),chr(a),chr(a),chr(a))
print (chr(b),chr(a),chr(a),chr(a),chr(a))
print (chr(a),chr(b),chr(b),chr(b),chr(a))
  • 题目7
    输出特殊图案,请在c环境中运行,看一看,very beautiful
a=176
b=219
print (chr(b),chr(a),chr(a),chr(a),chr(b))
print (chr(a),chr(b),chr(a),chr(b),chr(a))
print (chr(a),chr(a),chr(b),chr(a),chr(a))
print (chr(a),chr(b),chr(a),chr(b),chr(a))
print (chr(b),chr(a),chr(a),chr(a),chr(b))
  • 附加题
    了解每个数字背后的图案
I=[]
for i in range(33,10000):
    I.append(chr(i))
print(I)
  • 题目8
    输出9*9口诀
for i in range(1,10):
    for j in range(1,10):
        result=i*j
        print("%d*%d=%d"%(i,j,result),end=" ")
        if j==9:
            print("\t")

猜你喜欢

转载自blog.csdn.net/jasonmes/article/details/78577700