众所周知计算机二级VB考试除了考察累加、最值、约数因子以及进制转化之外还会考察素数的算法。那么到底二级VB中的素数算法是怎么样的呢?为此在本文中编程学习网笔者就为大家简单介绍其含义和具体的算法,并给出相应的例子来加深大家对知识点的印象。
◎算法说明
所谓素数(质数)无非就是一个大于等于2的整数且只能被1和本身整除,而不能被其他整数整除的数。
通常判别某数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之内素数
下面是具体的引用片段:
下面笔者再给出例子和解题思路让大家参考参考:
● 找出10000以内所有可以表示为两个平方数和的素数
解题思路:
首先我们找10000以内的所有素数,对于每个素数判断其是否可以表示为两个平方数之和(也就是对于任意小于该素数shu的数I,如果I和shu-I均为平方数则说明其可以表示为两个平方数之和。)。
判断数I是否为平方数的方法:sqr(i)=int(sqr(i))
下面是具体的引用片段:
◎实战演示
题目(补充代码):查找四位正整数中的超级素数。超级素数的定义为:当一个素数从低位到高位依次去掉一位数后剩下的数仍然是素数,则此数为超级素数。比如数2333、233、23、2均为素数,所以2333为超级素数。
下面是具体的引用片段:
以上就是计算机二级VB基础之素数算法的介绍。
相信大家对计算机二级VB基础之素数算法都有一个基本的了解了吧。那么本次的计算机二级VB基础之素数算法的讲解到此就暂告一段落,如果以后有什么相关的内容继续进行补充或者修改的话,笔者会在此继续进行相关的内容的补充或者修改的工作,同时也欢迎大家对本次的讲解提出自己的建议和补充。最后笔者希望本次的讲解对大家学习二级VB能够起到一定的帮助作用!