蓝桥杯基础练习VIP-分解质因数PYTHON数据结构算法题

该代码段使用Python实现了一个功能,将给定范围内(a到b,包含a和b)的每个数分解为质因数的乘积。它从2开始遍历,每次遇到质数就将其分解,优化策略是只检查到数的一半以下,以提高效率。
摘要由CSDN通过智能技术生成

题目描述

 解题思路

1.首先设置两个变量接受这两个数a,b

2.在这两个数的范围内循环range(a,b+1)

3.因为所有非质数都可以被分解为质数的乘积

例如4=2*2

6=2*3

所以从2开始遍历,当每遇到一个质数就把它除尽,这样后面遇到非质数就除不了,这样就可以把数分解成质因数的乘积

4.而且找质数只用从一半以下去找这样比较节约时间

代码

    a,b=map(int,input().strip().split())
    for i in range(a,b+1):
        print(str(i)+'=',end='')
        index = i
        for j in range(2,int(i/2)+1):
            if index==1:
                break
            if i%j==0:
                while index%j==0:
                    index/=j
                    if index!=1:
                        print(str(j)+'*',end='')
                    else:
                        print(str(j),end='')
        if index==i:
            print(str(i),end='')
        print()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值