求质数 有哪位高手有简单一点的方法谢谢
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求质数 有哪位高手有简单一点的方法谢谢相关的知识,希望对你有一定的参考价值。
题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。
程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:
(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。
(2)如果n <> k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。
(3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。
2、可以用查表的方法,首先录入一个前m位的质数表,然后采用1的方法,在这个表内搜索,这个方法更快更简单 参考技术A #!/usr/bin/python3
# 这是 python3 程序
def primes(start, stop):
'''生成质数'''
if start > stop:
start, stop = stop, start
if start <= 1:
start = 2
if start == 2:
yield 2
start += 1
while start <= stop:
for i in range(3, int(start**0.5)+1, 2):
if start % i == 0:
break
else:
yield start
start += 2
def 分解质因数(num):
if num < 2:
raise ValueError('需要大于 1 的整数')
factors = []
for i in primes(2, num+1):
while num % i == 0:
num /= i
factors.append(i)
return factors 参考技术B #include<stdio.h>
void main()
int i,n;
scanf("%d",&n);
printf("%d=",n);
for(i=2;i<=n;i++)
while(n%i==0)
printf("*%d",i);
n=n/i;
if(n==0)
break;
哪位高手帮帮忙,winform datagridview单元格合并啊,谢谢了,解决问题了再加赏啊,谢谢
可以合并每行的第一列,但是,第六列、七列、八列 后面的合并不了
因为第一列,根据内容相同的合并为一个格,而6、7、8列内容都相同,不能像第一列一样
有代码的话,发我看看 ,灰常感谢
如果一定用datagridview,可尝试datatable绑定方法 参考技术B
见附件,看效果怎么样。
你好,感谢哦,不过不是我想要的,我想要的是合并红色框框里面的内容为一个单元格,
比如:第一个绿色框,有四个红色框需要合并,那样可以合并吗?
自己研究着改就行了,别人只能给你提供基本示例,不可能帮你做完的。
追问你的那种合并我会的,横向和纵向合并不一样,在纵向合并中,需要合并的列,内容不同的可以区分合并,但是如果列的内容都相同了合并就不对了,会把内容相同的全部合并,这就不对了,所以求教额……
不过非常感谢,等待高手中,要是有现成例子的给一个,谢谢 !!
以上是关于求质数 有哪位高手有简单一点的方法谢谢的主要内容,如果未能解决你的问题,请参考以下文章
哪位高手指点一下如何在网站内添加一套论坛程序,比如Discuz? 最好能详细一点。
在javascript中math.random()的用法问题?有没有简单一点的说明?谢谢!
C语言用Bresenham算法画圆,哪位高手教教,主要是算法里的内容,谢谢!
哪位高手有那本"托马斯微积分 第12版"的pdf? 我要英文版的!!! 谢谢哈