如何阅读Fortran中的简单表达式?

时间:2014-06-18 03:38:57

标签: forms parsing fortran

在Fortran程序中,是否可以读取包含变量的表达式? 例如,输入文件是(如果需要,我们可以更改表达式的输入形式,例如二进制形式),  图2(a-4b)的 应该注意的是,输入表达式有一个非常简单的形式,它只包含整数或分数或一些变量,如列表中的以下内容, {0232,-2 / 5A,图3A-B,B / 9} 这里2a表示2 * a

Fortran计划

Program test
implicit none
real(kind=8)::a,b,exp 
a=10.
b=3.
! open file and read the input expression
! that is, exp=2*(a-4*b) 
write(*,*) exp  ! we can get exp=-4.0
end program 

对于复杂的表达式,对Fortran来说显然不是一个好主意。我只是想知道,在这个简单的输入表达式案例中,是否有可能找到更好的方法?

2 个答案:

答案 0 :(得分:0)

Fortran不能这样做,除非你编写的代码可以解析任意表达式,替换和解决,这有点工作(详见下面的评论)。 Fortran是编译好的,无法动态加载源代码,编译和运行它,这基本上就是你所要求的。您可能会研究一种像Lisp这样的语言,这样做应该有些微不足道。同样,任何脚本语言都有评估代码的工具,可以按照您的要求进行操作。

答案 1 :(得分:0)

在Fortran中测试三个表达式评估程序的网站是http://www.angelfire.com/ab5/extensao/report.htm。只有链接到“巴西”的链接有效。 还有一个Sourceforge项目fparser http://fparser.sourceforge.net/