计算机二级VB基础之素数算法

    作者:课课家更新于: 2017-01-13 17:49:07

    软考,您想通过吗?一次通过才是硬道理

      众所周知计算机二级VB考试除了考察累加、最值、约数因子以及进制转化之外还会考察素数的算法。那么到底二级VB中的素数算法是怎么样的呢?为此在本文中课课家笔者就为大家简单介绍其含义和具体的算法,并给出相应的例子来加深大家对知识点的印象。

    计算机二级VB基础之素数算法_考试认证_等级考试_计算机二级VB_课课家

     


     

      算法说明

      所谓素数(质数)无非就是一个大于等于2的整数且只能被1和本身整除,而不能被其他整数整除的数。

      通常判别某数m是否是素数的经典算法是:

      ● 对于m,从I=2,3,4,……,m-1依次判别能否被I整除,只要有一个能整除,m就不是素数,否则m是素数。

      下面是具体的引用片段:

    对于m,从I=2,3,4,……,m-1依次判别能否被I整除,只要有一个能整除,m就不是素数,否则m是素数。

      PS:实际上我们可以改进上面的For i = 2 To n –1改写为For i = 2 To int(sqr(m))如此一来我们就可以很好的提高效率了。

      下面笔者给出例子让大家参考参考:

      ● 求100-200之内素数

      下面是具体的引用片段:

    求100-200之内素数。

      下面笔者再给出例子和解题思路让大家参考参考:

      ● 找出10000以内所有可以表示为两个平方数和的素数

      解题思路:

      首先我们找10000以内的所有素数,对于每个素数判断其是否可以表示为两个平方数之和(也就是对于任意小于该素数shu的数I,如果I和shu-I均为平方数则说明其可以表示为两个平方数之和。)。

      判断数I是否为平方数的方法:sqr(i)=int(sqr(i))

      下面是具体的引用片段:

    判断数I是否为平方数的方法:sqr(i)=int(sqr(i))

      


     

      实战演示

      题目(补充代码):查找四位正整数中的超级素数。超级素数的定义为:当一个素数从低位到高位依次去掉一位数后剩下的数仍然是素数,则此数为超级素数。比如数2333、233、23、2均为素数,所以2333为超级素数。

      下面是具体的引用片段:

    下列程序的功能是:查找四位正整数中的超级素数。超级素数的定义为:当一个素数从低位到高位依次去掉一位数后剩下的数仍然是素数,则此数为超级素数。如数2333、233、23、2均为素数,所以2333为超级素数。

      


     

      以上就是计算机二级VB基础之素数算法的介绍。

      相信大家对计算机二级VB基础之素数算法都有一个基本的了解了吧。那么本次的计算机二级VB基础之素数算法的讲解到此就暂告一段落,如果以后有什么相关的内容继续进行补充或者修改的话,笔者会在此继续进行相关的内容的补充或者修改的工作,同时也欢迎大家对本次的讲解提出自己的建议和补充。最后笔者希望本次的讲解对大家学习二级VB能够起到一定的帮助作用!

课课家教育

未登录