1、【程序 1】题目:有 1、2、3、4 个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?【程序 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%提成,从键盘输入当月利
2、润 I,求应发放奖金总数?1 #Filename:002.py2 i = int(raw_input(Enter the profit:)3 arr = 1000000,600000,400000,200000,100000,04 rat = 0.01,0.015,0.03,0.05,0.075,0.15 r = 06 for idx in range(0,6):7 if iarridx:8 r+=(i-arridx)*ratidx9 print (i-arridx)*ratidx10 i=arridx11 print r【程序 3】题目:一个整数,它加上 100 后是一个完全平方数,再加上
3、168 又是一个完全平方数,请问该数是多少?【感谢 12 楼的同学 peiqianggao 提供代码】# -*- coding:utf-8 -*-Created on 2015-6-7# 第三题:一个整数,它加上 100 后是一个完全平方数,再加上 168 又是一个完全平方数,请问该数是多少author: Administratorimport mathnum = 1while True:if math.sqrt(num + 100)-int(math.sqrt(num + 100) = 0 and math.sqrt(num + 268)-int(math.sqrt(num + 268) =
4、 0:print(num)breaknum += 1【程序 4】题目:输入某年某月某日,判断这一天是这一年的第几天?1 #author: 叛军2 import datetime3 import time4 dtstr = str(raw_input(Enter the datetime:(20151215):)5 dt = datetime.datetime.strptime(dtstr, “%Y%m%d“)6 another_dtstr =dtstr:4 +01017 another_dt = datetime.datetime.strptime(another_dtstr, “%Y%m%d
5、“)8 print (int(dt-another_dt).days) + 1)【程序 5】题目:输入三个整数 x,y,z,请把这三个数由小到大输出。【程序 8】题目:输出 9*9 口诀。1 for i in range(1,10):2 for j in range(1,i+1):3 print i,*,j,=,i*j,4 print 【程序 11】题目:古典问题:有一对兔子,从出生后第 3 个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?1 a = 12 b = 13 for i in range(1,21,2):4 print %
6、d %d%(a,b),5 a += b6 b += a【程序 12】题目:判断 101-200 之间有多少个素数,并输出所有素数。1 #!/usr/bin/python2 #-*- coding:utf-8 -*-3 from math import sqrt 4 def main():5 for i in range(101,201):6 flag = 17 k = int(sqrt(i)8 for j in range(2,k+1):9 if i%j = 0:10 flag = 011 break12 if flag = 1:13 print %5d%(i),14 15 if _name_
7、 = “_main_“:16 main()【程序 13】题目:打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153 是一个“水仙花数”,因为 153=1 的三次方5 的三次方3 的三次方。1 #!/usr/bin/python2 #-*- coding:utf-8 -*-3 def main():4 for i in range(100,1000):5 a = i%106 b = i/1007 c = (int(i/10)%108 if i = a*3+b*3+c*3:9 print “%5d“%(i),10 11 if _name_ = “_m
8、ain_“:12 main()【程序 14】题目:将一个正整数分解质因数。例如:输入 90,打印出 90=2*3*3*5。1 #!/usr/bin/python2 #-*- coding:utf-8 -*-3 4 def main():5 n = int(raw_input(Enter a number:)6 print n,=,7 while(n!=1):8 for i in range(2,n+1):9 if (n%i)=0:10 n/=i11 if(n = 1):12 print %d%(i)13 else:14 print %d *%(i),15 break16 17 18 if _n
9、ame_ = “_main_“:19 main()【程序 15】题目:利用条件运算符的嵌套来完成此题:学习成绩=90 分的同学用 A 表示,60-89分之间的用 B 表示,60 分以下的用 C 表示。1 #!/usr/bin/python2 #-*- coding:utf-8 -*-3 def main():4 s = int(raw_input(Enter a number:)5 if s=90:6 grade = A7 elif s=60:8 grade = B9 else:10 grade = C11 print grade,12 13 if _name_ = _main_:14 mai
10、n()【程序 17】题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。1 #!/usr/bin/python2 #-*- coding:utf-8 -*-3 #there is no + operator in Python4 import string5 def main():6 s = raw_input(input a string:)7 letter = 08 space = 09 digit = 010 other = 011 for c in s:12 if c.isalpha():13 letter+=114 elif c.isspace():15 spac
11、e+=116 elif c.isdigit():17 digit+=118 else:19 other+=120 print There are %d letters,%d spaces,%d digits and %d other characters in your string.%(letter,space,digit,other)21 22 if _name_ = _main_:23 main()【程序 18】题目:求 s=a+aa+aaa+aaaa+aa.a 的值,其中 a 是一个数字。例如2+22+222+2222+22222(此时共有 5 个数相加),几个数相加有键盘控制。1 #
12、!/usr/bin/python2 #-*- coding:utf-8 -*-3 def main():4 basis = int(raw_input(“Input the basis number:“)5 n = int(raw_input(“Input the longest length of number:“)6 b = basis7 sum = 08 for i in range(0,n):9 if i=n-1:10 print “%d “%(basis),11 else:12 print “%d +“%(basis),13 sum+=basis14 basis = basis*10
13、+b15 print = %d%(sum),16 17 18 if _name_ = _main_:19 main()【程序 19】题目:一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如 6=12 3.编程找出 1000 以内的所有完数。1 from math import sqrt2 n = int(raw_input(input a number:)3 sum = n*-14 k = int(sqrt(n)5 for i in range(1,k+1):6 if n%i = 0:7 sum += n/i8 sum += i9 if sum = n:10 print YES11 e
14、lse:12 print NO1 2 【程序 20】3 题目:一球从 100 米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在4 第 10 次落地时,共经过多少米?第 10 次反弹多高?5 6 s = 100.7 h = 50.08 for i in range(2,11):9 s += 2*h10 h /= 211 print “the sum length of path:%f“%s12 print “the last height is:%f“%h1 2 【程序 21】3 题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个4 第二天早上又将剩下的
15、桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下5 的一半零一个。到第 10 天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。6 7 n = 18 for i in range(9,0,-1):9 n = (n+1)99999:8 print Input Error!9 else:10 i = str(i)11 flag = 012 for j in range(0,2):13 if ij!=i4-j:14 flag = 115 break16 print ansflag1 2 【程序 36】【筛选法】3 题目:求 100 之内的素数 4 5 a = 0*1016 for i in range(2,11):7 for j in range(i+i,101,i):8 aj=-1;9 for i in range(2,101):