python练习题——6~10

本文介绍了用Python实现6-10道编程练习,包括打印99乘法表、斐波那契数列解析兔子问题、找出101-200之间的素数、打印水仙花数以及正整数的质因数分解。通过这些题目,可以巩固Python的基础知识和算法思维。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近在忙着小论文的构思,几个练习题且当放松

  • 6——打印99乘法表

基础题,for循环+print的参数修改

for cow in range(1,10):
    for col in range(1,cow+1):
        print("%s*%s=%s" % (cow,col,cow*col),end=" ")
    print("")
  • 7——有一对兔子,从出生后第三个月起每个月都出生一对小兔子,小兔子长到3个月大后每个月又生出一对兔子,假如兔子都不死,问每个月的兔子总数是多少?

思路:斐波那契数列:1 1 2 3 5 8 13......

a,b = 0,1
for i in range(1,13):#12个月的
    print('第%s个月:%s对兔子' % (i, b))
    a,b = b,a+b

#斐波那契要牢牢记住,常规循环以及递归算法
  • 8——判断101~200之间有多少素数,并输出所有素数
list = []
for i in range(101,201):
    for j in range(2,i):
        if i%j == 0:
            break   #不是素数跳出,进行下一次j的循环
    else:   #体会一下这个else的要点
        list.append(i)
print(list)
#引出一个素数判断思路:对于正整数n,如果用到2到n**0.5之间的所有整数去除,均无法整除,则n为质数

#下面的为判断一个数是不是素数
import math
def is_prime(n):
    if n == 1:
        return  False
    for i in range(2,int(math.sqrt(n)+1)):
        if n % i == 0:
            return False
    return  True
print(is_prime(3))
  • 9——打印水仙花数,如153=1**3+5**3+3**3

记忆深刻的在本科期间,c语言课上上机写过

for i in range(100,1000):
    m = i//100 #取百位
    n = i//10%10 #取十位
    k = i%10  #取个位
    if i == m**3 + n**3 + k**3: #判断
        print(i)
  • 10——将一个正整数分解质因数。例:90=2*3*3*5

思路:输入一个整数,要求分解为质因数,首先是因数,再者这个因数为质数。最小的质数为2,1是因数但不是质数,所以2是最小的质因数。

n = int(input("请输入一个正整数:"))
lst = []
while n > 1:
    for i in range(2,n+1):
        if n%i == 0:
            n = n//i
            lst.append(i)
            break
print("分解的质因数为:{0}".format(lst))

如有错误,欢迎指正!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值