判断一个数是否为素数,用foe语言
时间: 2024-03-09 11:17:39 浏览: 61
判断一个数是否为素数
5星 · 资源好评率100%
下面是用Fortran语言判断一个数是否为素数的代码:
```
program prime_number
implicit none
integer :: n, i, count
write(*,*) '请输入一个正整数:'
read(*,*) n
count = 0
do i = 2, n-1
if (mod(n, i) == 0) then
count = count + 1
end if
end do
if (count == 0) then
write(*,*) n, '是素数'
else
write(*,*) n, '不是素数'
end if
end program prime_number
```
解释一下代码:
1. 首先声明变量n、i和count,分别表示输入的数、循环计数器和除n以外的因子个数。
2. 要判断一个数n是否为素数,就需要从2到n-1进行循环,判断n是否能够被2到n-1之间的数整除。如果能够整除,就说明n有因子,不是素数。
3. 在循环过程中,使用mod函数来判断n是否能够被i整除。如果mod(n, i)等于0,说明n能够被i整除,此时将count加1。
4. 循环结束后,判断count的值是否等于0。如果等于0,说明n除了1和自身以外没有其他因子,是素数;否则,说明n有除了1和自身以外的其他因子,不是素数。
5. 最后使用write函数输出结果。
注意:这段代码只适用于正整数的情况,对于负数、0和小数等情况需要进行额外的判断。
阅读全文