命令如下:
input ‘输入自然数’ to n
f=0
i=2
do while i<=int(sqrt(n))
if mod(n,i) <>0
i=i+1
loop
else
f=1
exit

展开全部
收起
2回答
提交回答
  • 至过去的我

    2044人对此回答表示赞同

    我是未来的你,你现在是不是在年找寻小程序答案。你不要感觉诧异,给你来信原因,就是让你不在后悔。今天去学习如何推广小程序,相信......点击查看更多>
    发布于
  • Gabriella

    7人对此回答表示赞同

    判断17是不是素数,一种方法是17分别去除以2,3,4,...,16,如果一个都不整除,则17是素数,否则不是。另一种方法就是本程序采用的方法,17分别去除以2,3,int(sqrt(n))=4,如果一个都不整除,则17是素数,否则不是。第二种方法做除法的次数大大减少,且正确性是数学家证明过的。
    展开
    7
    0回复
    发布于 6年前

    评论(0)

    收起评论

  • Caleb

    6人对此回答表示赞同

    这是一个数学概念:当一个数X能分解成两个整数相乘时,它的约数一定是一个小于等于根号X,一个是大于等于根号X的。例:
    16=1*16
    16=2*8
    16=4*4
    也就是说如果在2到根号X内能找到其中一个数是此数的约数,那此数一定不是质数了。除了1它至少还有一个约数存在,你写int(sqrt(n))与写sqrt(n)的效果是一样的。因为每次增加整数1,准确地讲到根号N 取整就行了。
    展开
    6
    0回复
    发布于 6年前

    评论(0)

    收起评论

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
咨询热线

13312967497

扫码添加业务即可随时咨询 还可领取小程序推广攻略

业务咨询: 13312967497
扫码咨询

扫码咨询套餐

回到顶部