首页 >

任意表达式求值模块

作者:fcode  日期:01-22
来源:Fortran.com
这是一套由 Fortran.com 上 Dr Stuart Midgley 书写的任意表达式求值模块,很牛很牛,基本上算包括了部分编译器的功能在你的应用程序里。很赞哦!!

包含附件中的模块(几百KB,较大,编译较慢,建议使用多文件,不要每次去单独编译它)



大图

主程序示范如下:

program www_fcode_cn
  use params
  use extrafunc
  use interpreter
  implicit none
  character(len=255) :: s, f,error1,error2
  real(fdp) ::  r
  real(fdp), dimension(:),allocatable :: varvals
  integer :: funcnum
  write(*,*)"依次输入函数的自变量:"
  read(*,'(a)')s
  allocate(varvals(f_numbervars(s))) ! f_numbervars(s)为自变量的个数
  write(*,*)"输入关于自变量的函数:"
  read(*,'(a)')f
  write(*,*)"依次输入对应自变量的值:"
  read(*,*)varvals
  call s_createfn(f, s, funcnum,error1) ! 创建函数
  write(*,'(a)')trim(error1) ! 提示出错信息
  call s_evaluatefn(funcnum, varvals, r,error2) ! 计算函数值
  write(*,'(a)')trim(error2) ! 提示出错信息
  write(*,*)"函数值等于:",r
  call s_destroyfn(funcnum) ! 销毁函数
  stop
end program www_fcode_cn

模块可通过本地下载获得:
/download/ExpressionEvaluation.zip
常规|工具|专业|读物|
代码|教学|算法|
首页 >
FortranCoder手机版-导航