赞
踩
# 1. 判断101-200之间有多少个素数,并输出所有素数。 count=0 for i in range(101, 201): for num in range(2, i): if i % num == 0: break else: count+=1 print(i) print(count) # 2. 求整数1~100的累加值,但要求跳过所有个位为3的数。 sum1=0 for i in range(1, 101): x=i % 10 if x!=3: sum1+=i print(sum1) # 3. 有⼀分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的第20个分数 num=20 x, y=1, 1 for i in range(num): x, y =x+y, x print('%d/%d' %(x+y, x)) # 4. 写程序计算 n 的阶乘 n! 的结果 n=int(input('请输入一个正整数:')) sum1=1 for i in range(1, n+1): sum*=i print(sum1) # 5. 求1+2!+3!+...+20!的和 num = 1 num1 = 0 for i in range(1, 21): num *= i num1 += num print(num1) # 6. 写程序求表达式 a + aa + aaa + aaaa+ ... 的结果,其中a是1~9的数字,求和的项数用n来控制。(a和n可以用变量来表示) # 例如:a为3, n为5的时候: 3 + 33 + 333 + 3333 + 33333 num = 0 a = int(input('请输入a的值:')) n = int(input('请输入n的值:')) sum1 = 0 for x in range(1, n+1): # 循环次数 num=num*10+a sum1+=num print('结果为:', sum1) # 7. 控制台输出三角形 # a. n=5 for i in range(n): for j in range(i, n): print('*', end='') print() # b. n=7 for i in range(1, n+1, 2): for j in range(n-i, 0, -2): print(' ', end='') for k in range(1, i+1, 1): print('*', end='') print() # c. n=4 for i in range(1, n+1): for j in range(n-i, 0, -1): print(' ', end='') for k in range(1, i+1, 1): print(k, end='') for m in range(i-1, 0, -1): print(m, end='') print() # 8. 小明单位发了100元的购物卡,小明到超市买三类洗化用品,洗发水(15元),香皂(2元),牙刷(5元)。要把100元正好花掉,可有哪些购买结合? for x in range(7): for y in range(51): for z in range(21): if 15*x+2*y+5*z==100: print('洗发水', x, '香皂', y, '牙刷', z) # 9. 一张纸的厚度大约是0.08mm,对折多少次之后能达到珠穆朗玛峰的高度(8848.13米)? num=0.08 count=0 while True: num*=2 count+=1 if num>=8848130: break print('对折', count, '次') # 10. 古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? num=int(input('输入一个设置的总月数:')) count=1 for x in range(1, num+1): if x % 3 == 0: count+=x//3 print('第', x, '个月', count, '对') # 11. 将一个正整数分解质因数。例如:输入90,打印出90=2x3x3x5。 list1 = [] num = int(input('请输入一个正整数:')) for i in range(2, num): while True: if num % i == 0: list1.append(i) num = num // i else: break print(list1) # 12. 某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后用和除以10的余数代替该数字, # 再将第一位和第四位交换,第二位和第三位交换。求输入的四位整数加密后的值 num=int(input('输入一个四位整数:')) num1=num//1000 num2=num//100 % 10 num3=num//10 % 10 num4=num % 10 num_1=(num4+5) % 10 num_2=(num3+5) % 10 num_3=(num2+5) % 10 num_4=(num1+5) % 10 print(num_1, num_2, num_3, num_4) # 13. 将一个正整数分解质因数。例如:输入90,打印出90=2x3x3x5。 # 同11题 # 14. 本金10000元存入银行,年利率是千分之三。每过1年,将本金和利息相加作为新的本金。计算5年后,获得的本金是多少。 num=10000 for i in range(5): #循环次数 num+=(num*3/1000) print('本金', num) # 15. 输入一个整数,计算它各位上数字的和。(注意:输入的整数可以是任意位) n=int(input('输入一个整数:')) sum1 = 0 if n<10: sum1 = n else: while True: if n//10>0: sum1 += n % 10 n = n//10 else: sum1 += n break print(sum) # 16. 求两个数的最大公约数和最小公倍数。 n1 = int(input('请输入一个正整数:')) n2 = int(input('请输入一个正整数:')) if n1 >= n2: min1 = n2 max1 = n1 else: min1 = n1 max1 = n2 for x in range(min1, 1, -1): if n1 % x == 0 and n2 % x == 0: print('最大公约数为:', x) break for y in range(max1, max1*min1): if y % n1==0 and y % n2==0: print('最小公倍数:', y) break
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。