运用Fortran判断 10 以内的数哪些是质数
时间: 2024-11-27 07:09:47 浏览: 27
在Fortran中,我们可以编写一个简单的程序来判断10以内的数字是否为质数。首先,我们需要了解质数的定义:只有两个正因数(1和本身)的自然数叫做质数。以下是基本的算法步骤:
1. 定义一个函数 `is_prime`,接受一个整数作为输入。
2. 检查输入是否小于2,因为2是最小的质数。
3. 使用一个循环从2到输入减1,检查这个范围内的每个数能否整除输入,如果能,则输入不是质数,返回false或相应错误信息。
4. 如果循环结束后都没有找到能整除的因子,那么输入就是质数。
下面是一个简单的Fortran示例:
```fortran
function is_prime(n)
implicit none
integer :: n, i
logical :: is_prime
if (n < 2) then
write(*, *) "数字小于2不是质数"
is_prime = .false.
else
is_prime = .true.
do i = 2, int(sqrt(n)) ! 只需检查到输入平方根即可
if (mod(n, i) == 0) then
is_prime = .false.
exit
end if
end do
end if
end function is_prime
program main
integer :: num
print *, "请输入一个10以内的数字:"
read(*), num
if (num > 10) then
write(*, *) "超出范围了,只考虑10以内的数字。"
num = min(num, 10)
end if
if (is_prime(num)) then
write(*, *) num, "是质数"
else
write(*, *) num, "不是质数"
end if
end program main
```
阅读全文