24小时热门版块排行榜    

查看: 935  |  回复: 13
当前主题已经存档。

忘尘天空

银虫 (小有名气)

[交流] 【求助】关于fortran编程的

这是我有fortran编写的一个程序,就是执行不出来,请哪位高手指点一下是那个地方出错了,老是提示有一个错误
         PROGRAM
         SUBROUTINE FAC(I)
         COMMON RO(0:49)
         RO(0)=1
         DO 1 I1=1,I
         RO(I1)=RO(I1-1)*I1
1       CONTINUE
       RETURN
         END
c
谢谢!

[ Last edited by 忘尘天空 on 2009-2-9 at 17:20 ]
回复此楼

» 猜你喜欢

快乐生活,感恩!
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

holiday

铁杆木虫 (正式写手)

梨园园长

I定义了么?
子非鱼,安之鱼之乐?
2楼2009-02-09 16:58:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lianghust

铁杆木虫 (正式写手)

这是主程序还是子程序??没看出来
3楼2009-02-09 17:01:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

忘尘天空

银虫 (小有名气)

这是一个子程序,在运行的时候总是会出现:
dfor.lib(DFORMAIN.OBJ) : error LNK2001: unresolved external symbol _MAIN__
Debug/1.1.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.

1.1.exe - 2 error(s), 0 warning(s)
不知道是什么意思,该如何修改呢?谢谢
快乐生活,感恩!
4楼2009-02-09 17:29:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

忘尘天空

银虫 (小有名气)

I没有定义
要如何定义呢?
快乐生活,感恩!
5楼2009-02-09 17:31:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

holiday

铁杆木虫 (正式写手)

梨园园长


musi429(金币+1,VIP+0):多谢交流~ 2-18 01:01
引用回帖:
Originally posted by 忘尘天空 at 2009-2-9 17:31:
I没有定义
要如何定义呢?

你起码得告诉人家I的范围是多少啊
要不,怎么循环
子非鱼,安之鱼之乐?
6楼2009-02-09 17:48:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

小小虫虫5591

铜虫 (小有名气)


musi429(金币+1,VIP+0):多谢诶交流~ 2-18 01:02
子程序要运行也得加个main语句吧,不然运行不了
7楼2009-02-09 18:58:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

maomao1210

金虫 (正式写手)

★ ★ ★
musi429(金币+3,VIP+0):多谢交流~ 2-18 01:02
SUBROUTINE FAC(I)
        IMPLICIT REAL*8(A-H,O-Z)
         COMMON RO(0:49)
         RO(0)=1
         DO 1 I1=1,I
         RO(I1)=RO(I1-1)*I1
1       CONTINUE
       RETURN
         END
去掉program就行了。。。不过有些变量你没有声明。我给你补上了。
8楼2009-02-17 15:28:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

quantumfang

至尊木虫 (著名写手)

小木虫中医研究院院长

★ ★
musi429(金币+2,VIP+0):多谢交流~ 2-18 01:03
对于PROGRAM 和 SUBROUTINE 两个关键词,二者不能在同一个过程里面同时存在
或者是PROGRAM,或者是SUBROUTINE, 而且,PROGRAM要有个名字,例如
PROGRAM portal
IMPLICIT none
return
end PROGRAM portal

语法最好严禁
例如:最后一行END结束什么?如果涉及到f90 module用法这会出问题

提倡使用f90方式。
例如:
DO I1=1,I
         RO(I1)=RO(I1-1)*I1
enddo

隐含变量类型不被推荐。

尽管f77的代码可能会比f90的快那么一点点,但是f77很严格。f90除了自由之外,还加入了很多适合并行的特性
9楼2009-02-18 00:19:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

argo

铁杆木虫 (著名写手)

上善若水

引用回帖:
Originally posted by quantumfang at 2009-2-18 00:19:
对于PROGRAM 和 SUBROUTINE 两个关键词,二者不能在同一个过程里面同时存在
或者是PROGRAM,或者是SUBROUTINE, 而且,PROGRAM要有个名字,例如
PROGRAM portal
IMPLICIT none
return
end PROGRAM portal

...

最后一行END是SUBROUTINE结束用的呀
居善地,心善渊,与善仁,言善信,正善治,事善能,动善时。
10楼2009-02-18 09:30:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 忘尘天空 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见