可以使用Python的for循环和if判断语句来实现:
for i in range(2,101):
flag = True
for j in range(2,i):
if i % j == 0:
flag = False
break
if flag:
print(i)
拓展:除了使用for循环和if判断语句,还可以使用Python的itertools模块中的compress函数来获取100以内的素数:
import itertools
from itertools import compress
primes = [i for i in range(2, 101) if not 0 in map(lambda x: i % x, range(2, i))]
list(compress(range(2, 101), primes))
我的思路是:获取2个数之间的所有质数就是把2个数之间的数一个个的枚举出来,然后判断这个数是否为质数。判断方法比较简单(效率比较低),就是循环使用被除数,被除数从这个数本身的值减少1开始,直到2为止,如果存在能整除这个数的被除数(跳出循环),那么这个数就不是质数,如果循环结束时被除数为1,那么这个数就是质数。
代码(所有代码复制到文本中,保存成html格式然后直接运行就ok了):
<html><body>
<script type="text/javascript">
function prime(start, end){
var i, j, a = [];
for(i = start; i < end; i++){
for(j = i - 1; j > 0; j--){
if(j == 1)break;
if(i%j == 0)break;
}
if(j == 1){
apush(i);
}
}
alert(a);
}
prime(100, 200);
</script>
</body></html>
List<int> list1 = new List<int>();
list1Add(2);//2是质数,先加它
bool b;
for (int i = 3; i < 100; i += 2)//偶数的不用比较了
{
b = true;
for (int j = i - 1; j > 1; j--)
{
if (i % j == 0)
{
b = false;
break;//有一个能整除的就不再试其它了
}
}
if (b) list1Add(i);//是质数则添加到列表中
}
这样,list1中的所有数就是你想要的数了
以上就是关于python怎么输出100以内素数全部的内容,包括:python怎么输出100以内素数、如何用Javascript求出100到200之间的素数、C#编写程序,找出1---100之间的所有质数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)