设计一个算法,利用栈实现质因数分解,要求输出格式形如:300=55322
2条回答 默认 最新
关注 望采纳,谢谢
import math class Stack: def __init__(self): self.items = [] def isEmpty(self): return self.items == [] def push(self, item): self.items.append(item) def pop(self): return self.items.pop() def peek(self): return self.items[len(self.items)-1] def size(self): return len(self.items) def is_prime(x): if x == 2: return True for i in range(2, int(math.sqrt(x)) + 1): if x % i == 0: return False return True s1 = Stack() num = int(input()) while not is_prime(num): for i in range(2, int(math.sqrt(num)) + 1): if (num % i == 0 and is_prime(i)): s1.push(i) num //= i break s1.push(num) while not s1.isEmpty(): print(s1.pop(),end='')
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报 编辑记录
悬赏问题
- ¥15 想问一下树莓派接上显示屏后出现如图所示画面,是什么问题导致的
- ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
- ¥15 cmd cl 0x000007b
- ¥20 BAPI_PR_CHANGE how to add account assignment information for service line
- ¥500 火焰左右视图、视差(基于双目相机)
- ¥100 set_link_state
- ¥15 虚幻5 UE美术毛发渲染
- ¥15 CVRP 图论 物流运输优化
- ¥15 Tableau online 嵌入ppt失败
- ¥100 支付宝网页转账系统不识别账号