解题思路:
素数依次除以从2到该素数本身,只有该素数除以素数本身取余为0;例如:3%3=0, 3/3=1
非素数依次除以从2到该数本身,会不断有取余等于0情况,例如:8%2=0, 8/2=4,4%2=0, 4/2=2, 2%2=0, 2/2=1
注意事项:
参考代码:
a=list(map(int,input().split()))
b=[]
for i in range(a[0],a[1]+1):
e=i
d=''
while i!=1: #素数只能除到i+1才能满足if条件,非素数将除数结果一直在i!=1里面循环,一直到全部除尽
for j in range(2,i+1):
if i%j==0:
i=int(i/j)
d=d+str(j)+'*'
break
if d:
print(str(e)+'='+d.strip('*'))
0.0分
1 人评分
【偶数求和】 (C语言代码)浏览:588 |
【金明的预算方案】 (C++代码)浏览:873 |
幸运数 (C++代码)浏览:1309 |
Minesweeper (C语言描述,蓝桥杯)浏览:1176 |
整数平均值 (C语言代码)浏览:856 |
敲七 (C语言代码)浏览:2748 |
多输入输出练习2 (C语言代码)浏览:1710 |
C语言程序设计教程(第三版)课后习题8.5 (C语言代码)浏览:710 |
JAM计数法 (C语言代码)浏览:721 |
简单的a+b (C语言代码)浏览:497 |