FORTRAN程序由一个主程序或一个主程序与若干个子程序组成。主程序与子程序都是一个独立的程序单位,称为一个程序模块。[1]
1、程序分段:一个程序由一个或若干个程序单位组成。主程序和每一个子程序分别是一个独立的程序单位。子程序是实现模块化的有效方法。
2、每一个程序单位都是以“END”语句结束。主程序段中的END语句作用是使程序“停止运行”;子程序段中的END语句是“使流程返回调用程序”。
3、一个程序有且仅有一个主程序段,可以有0个或若干个子程序段。
4、一个程序单位包括若干行。FORTRAN行分为两类:即语句行和非语句行。
其中语句行由一个FORTRAN语句组成。FORTRAN语句又可分为执行语句和非执行语句。非语句行,即为注释行。
5、FORTRAN程序的基本成份是语句。一行只能有一个语句。若一个语句太长,一行内写不下,可分写在几行上,但要用“续行标志”。
6、FORTRAN程序中语句允许有标号,以便被其他句引用。
7一个程序单位中各类语句的位置是有一定规则的。一般是非执行语句放在所有可执行语句之前。[2]
明知故问。鄙视楼主
Program
>
这是求素数的一个程序,k是为了减少循环次数,因为只要能被开方以前的整除,就能被后面的所有数整除。
如果j>k,说明上面的do循环全部执行完了,也就说明没被任何数整除,即该数未素数。
j =2,k,如果全部循环完,实际上j就等于k+1,所以j>k。
你需要更好的算法,然而不一定容易实现,计算机32位也好,64位也好,你用fortran
只能用这么多精度,你想想,2^32才多大,能装得下13^200吗,所以这个计算式单靠
fortran语言
是无解的,解出来也是溢出,所以你需要好的算法,我算法比较差,给你举个比较烂的想法,自写一个1000位的整数类,重载其加减乘除,然后计算,预计20分钟能算完,如果你只是想算出结果,用mathematica,他的算法很强
首先,你的这个程序貌似就有问题,就是最后一行的"end example ",应该是"end program example"。要记住,不管什么都要匹配,因为你开头是program,所以结尾也要放上。或者你干脆end就可以了。
然后,把这个源文件进行编译链接,生成可执行的程序,这个就要看你用什么编译器了,如果是visual fortran,那你看工具栏上是有build的。
我现在使用gfortran,那就要在终端输命令了,如:
>gfortran examplef90 -o firstapp
有问题再说。
以上就是关于fortran主程序和子程序怎么运行主程序全部的内容,包括:fortran主程序和子程序怎么运行主程序、fortran 程序(应该是很简单的小程序)、关于FORTRAN的程序解释等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)