fortran编写一个函数子程序 IFAC 用来求n!,要求所得函数值为实型。函数必须对自变量进行检查,对不合理的自变量给出出错信息,然后返回。调用此函数求 R! /(R-K)!K! R和K的值由终端输入
时间: 2024-03-22 13:39:20 浏览: 177
好的,以下是Fortran编写的函数子程序IFAC,用来求n!:
```
FUNCTION IFAC(N)
INTEGER N, I
REAL IFAC
IF (N .LT. 0) THEN
WRITE(*,*) 'Error: n must be non-negative.'
RETURN
END IF
IFAC = 1.0
DO I = 1, N
IFAC = IFAC * REAL(I)
END DO
END FUNCTION
```
可以通过调用此函数来计算R!/(R-K)!K!,具体代码如下:
```
PROGRAM MAIN
INTEGER R, K
REAL RESULT
WRITE(*,*) 'Enter the value of R:'
READ(*,*) R
WRITE(*,*) 'Enter the value of K:'
READ(*,*) K
IF (K .LT. 0 .OR. K .GT. R) THEN
WRITE(*,*) 'Error: K must be non-negative and less than or equal to R.'
STOP
END IF
RESULT = IFAC(R) / (IFAC(R-K) * IFAC(K))
WRITE(*,*) 'Result:', RESULT
END PROGRAM
```
在程序中,首先要求用户输入R和K的值。然后检查K是否不合理,如果不合理,则输出错误信息并停止程序。如果K合理,则调用IFAC函数计算R!/(R-K)!K!,并将结果输出到终端上。
阅读全文