在Fortran中,可以定义各种操作real类型数据的函数和子程序。可以编写一个计算实数平方根的函数: ```fortran real(kind=8) function sqrt_real(x) real(kind=8), intent(in) :: x sqrt_real = sqrt(x) end function sqrt_real ``` 在上面的例子中,sqrt_real是一个计算实数平方根的函数,接受一个实数作为...
real在Fortran中表示实数类型。其中有两种精度:单精准度(REAL*4)双精准度(REAL*8)相应的实数范围:real(kind=4):±1.18*10-38 ~ ±3.40*1038,有效6-7位 real(kind=8):±2.23*10-308 ~ ±1.79*10308,有效15位
real, intent(inout) :: x(2) real, intent(out) :: fval integer, intent(out) :: iter real :: x0(2), x1(2), x2(2), x3(2), f0, f1, f2, f3, xr(2), fr, xe(2), fe, xc(2), fc real :: alpha, beta, gamma integer :: i alpha = 1.0 beta = 0.5 gamma = 2.0 x0...
一种用法,是说明语句,即把变量定义成实型,例如\x0d\x0a REAL NA,NB,NC\x0d\x0a另一种用法是类型转换函数,即把变量值或者表达式的类型变成实型,例如\x0d\x0a A = REAL(B*C + NA)\x0d\x0a你问的应该是后一种用法,返回值是real型的,括号里可以是整型、实型、复数型...
real(8), intent(out) :: aii aii = a(1,1)+a(2,2) return end subroutine trace2x2 计算3*3矩阵的迹: subroutine trace3x3(a,aii) implicit none real(8), intent(in) :: a(3,3) real(8), intent(out) :: aii aii = a(1,1)+a(2,2)+a(3,3) ...
! 定义被微分函数 real(8) function f(x) implicit none real(8), intent(in) :: x f = sin(x) end function f ! 实现有限差分法 real(8) function finite_diff(x, h, f) implicit none real(8), intent(in) :: x, h real(8), external :: f ...
8. 自定义数据类型type::person! 类似C++的struct和classcharacter(10)::nameinteger::ageread::heightreal::weightcharacter(len=50)::addressend typeperson! person可以省略type(person)::a,ba=person("Peter",20,170,60,"China")! 类似构造函数b%name="Fortran"!类似属性赋值 ...
Fortran中常用函数列表 Y=INT(X) 转换为整数 ALL(所有型态) INTEGER Y=REAL(X) 转换为实数 INTEGER REAL Y=DREAL(X) 取复数实部(倍精度) COMPLEX*16REAL*8Y=DIMAG(X) 取复数虚部(倍精度) COMPLEX*16REAL*8Y=CONJG(X) 共轭复数 COMPLEX COMPLEX...
real, intent(in) :: x f = x**2 end function f end program trapezoidal_integration 代码解释 定义积分区间: 定义积分区间 [a, b],这里选择从 0.0 到 1.0。 步长计算: 计算步长 h。 积分计算: 使用梯形法计算积分值,并输出结果。 被积函数: 定义被积函数 f(x),这里选择 f(x) = x^2。
write(*,*) real(a)/b end 1. 2. 3. 4. 5. 6. real()函数可以将变量转化为浮点型变量 自定义数据类型 结构体,type定义结构体,%获得结构体数据成员 program main implicit none type:: person character(len=30) :: name integer :: age