编程怎么判断素数 vba编程判断是否是素数?
vba编程判断是否是素数?input nfor i2 to sqr(n){if n/iint(n/i){print(no)exit}}print(yes)用一种循环结构编程求100到200之间所有的素
vba编程判断是否是素数?
input n
for i2 to sqr(n)
{
if n/iint(n/i)
{print(no)
exit}
}
print(yes)
用一种循环结构编程求100到200之间所有的素数. 大神们解释一下?
这段程序包含两个循环体 i是一个整型变量,初值为100,每执行一次Next i,i加1,直到i200结束大循环 j是一个整型变量,初值为2,每执行一次Next j,j加1,直到i-1,结束小循环 x是一个整型变量,当x0时,说明i是素数,x1,i不是素数 小循环内的判断i是否为素数,判断方法是:整数i在[2,i]的范围内都没有能被整除的数,则该数为素数,反之不是素数。
Private Sub Form_Click() Dim i As Integer, j As Integer, x As Integer //定义三个整型变量 For i 100 To 200 //大循环,循环变量为i,循环范围为100到200 x 0 //初始认为i是素数 For j 2 To i – 1 //小循环,循环变量为j,循环范围为2到i-1 If i Mod j 0 Then x 1 //判断,如果i/j的余数为0,x1,i不是素数 Next j //j 1 If x 0 Then Print i //如果x0,i是素数,将i打印出来 Next i //i 1 End Sub //结束
完数和素数的区别?
1.完数
一个数如果恰好等于它的因子之和,这个数称为“完数”(因子:除去这个数本身的约数),例如61 2 3;
18 的因子:1,2,3,6,9
编程找出1000以内的所有完数
如何判断是否完数?
(1)先找出所有的因子,并且累加它的因子
(2)判断因子之和是否和原数相等,如果相等就是完数
2.素数
找出1-100之间所有的素数
方法一:如何判断i是否是素数
(1)找出i的所有约数,并累加它们的和,例如:i 5,它的约数是1和5,约数和是6;i11,约数是1和11,和是12;i18,约数是1,2,3,4,9,18,约数和39
(2)如果某个i 的约数和i 1,那么i就是素数
方法二:如何判断i是否是素数
(1)找出i在[2,i-1]之间的约数个数
(2)如果这个个数是0,那么i就是素数
方法三:如何判断i是否是素数
(1)假设i是素数
boolean flag true;//true 代表素数
(2)找i不是素数的证据
如果在[2,i-1]之间只要有一个数能够把i整除了,说明i就不是素数,修改flag false;
素数:又称为质数,指在一个大于1的自然数中,除了1和此自然数本身,不能被其他自然数整除的数。