简单程序python练习(1)
2018-07-12 本文已影响0人
Hf1dw
题目1:有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?
#!/user/bin/env python2
# -*-coding:utf-8 -*-
a=0
for i in range(1,5):
for j in range(1,5):
for k in range(1,5):
if (i!=j) and (j!=k) and (i!=k):
a+=1
print i,j,k
print 'sum:',a
题目2:企业发放的奖金根据利润提成。利润(I)低于或等于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%提成,从键盘输入当月利润I,求应发放奖金总数?
#!/user/bin/env python2
# -*-coding:utf-8 -*-
i=int(raw_input('Enter the net profit:'))
arr=[1000000,600000,400000,200000,100000,0]
rat=[0.01,0.015,0.03,0.05,0.075,0.01]
r=0
for idx in range(0,6):
if i>arr[idx]:
r+=(i-arr[idx])*rat[idx]
print arr[idx],(i-arr[idx])*rat[idx]
i=arr[idx]
print 'sum:',r
题目3:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
//分析:
a+100=m^2...........(1)
a+100+168=n^2...........(2)
(2)-(1),得(n+m)(n-m)=168
令i=n+m,j=n-m;
则i+j=2n,i-j=2m
又有i*j=168
得出i,j同为偶数
且i<168/2+1=85
#!/user/bin/env python2
# -*- coding:utf-8 -*-
for i in range(2,85):
if 168%i==0:
j=168/i
if i>j and i%2==0 and j%2==0:
m=(i-j)/2
print m*m-100
题目4:输入某年某月某日,判断这一天是这一年的第几天?
#!/user/bin/env python2
# -*- coding:utf-8 -*-
year=int(raw_input('year:\n'))
month=int(raw_input('month:\n'))
day=int(raw_input('day:\n'))
months=(0,31,59,90,120,151,181,212,243,273,304,334)
if 0<month<13 and 0<day<32:
sum=months[month-1]
else:
print 'data error!'
sum+=day
leap=0
if (year % 400 ==0) or ((year %4==0) and (year %100 !=0)):
leap=1
if leap==1 and month>2:
sum+=1
print sum
题目5:输入三个整数x,y,z,请把这三个数由小到大输出。
#!/user/bin/env python2
# -*- coding:utf-8 -*-
l=[]
for i in range(3):
x=int(raw_input('interger:\n'))
l.append(x)
l.sort()
print l
题目6:斐波那契数列。
#!/user/bin/env python2
# -*- coding:utf-8 -*-
def fib(n):
a,b=0,1
for i in range(n-1):
a,b=b,a+b
return a
x=int(raw_input('interger:'))
print x,"'s fib is",fib(x)
l=[]
for i in range(1,x+1):
l.append(fib(i))
print 'fib:',l
题目7:将一个列表的数据复制到另一个列表中。
#!/user/bin/env python2
# -*-coding:utf-8 -*-
a=[1,2,3,4,5,6,7]
b=a[:]
print b
题目8:输出 9*9 乘法口诀表。
#!/user/bin/env python2
# -*-coding:utf-8 -*-
for i in range(1,10):
print //打印空格,以分隔开每次循环。
for j in range(1,i+1):
print '%d*%d=%d' %(i,j,i*j),
题目9:暂停一秒输出。
#!/user/bin/env python2
# -*-coding:utf-8 -*-
import time
list=[1,2,3,4,5,6,7,8,9,0]
for i in list:
print i
time.sleep(1) //调用time模块里的sleep()函数
题目10:暂停一秒输出,并格式化当前时间。
#!/user/bin/env python2
# -*- coding:utf-8 -*-
import time
for i in range(10):
print time.strftime('%Y--%m--%d %H:%M:%S',time.localtime()) //time模块strftime函数格式化时间
time.sleep(1)