24小时热门版块排行榜    

查看: 327  |  回复: 2

zyj8119

木虫 (著名写手)

[交流] 【求助】一个FORTRAN程序问题【已完结】

CODE:
PROGRAM main
IMPLICIT NONE
LOGICAL::flag
INTEGER,DIMENSION(1:6)::number
INTEGER::i
OPEN(1,FILE='MYF1.OUT')
DO i=100,999
flag=find(i)
IF(flag)THEN
  WRITE(*,'(6I4)')number
  WRITE(1,'(6I4)')number
END IF
END DO
CONTAINS
    FUNCTION  find(n) RESULT(log)
    INTEGER::n,count,b,s,g,tmp,temp,number(1:6)
    LOGICAL::log
    log=.FALSE.
    count=1
    tmp=n
    number(count)=tmp
    DO WHILE(tmp/10/=0)
        count=count+1
        g=MOD(tmp,10)
        s=MOD(tmp/10,10)
        b=tmp/100
        IF(b/=0)THEN
           tmp=b*s*g
        ELSEIF(s/=0)THEN
          tmp=s*g
        ELSEIF(g/=0)THEN
          tmp=g
         END IF
         number(count)=tmp
    END DO
    IF(count==6.AND.number(6)/=0)log=.TRUE.
    END FUNCTION find
  END PROGRAM main

为什么要把那个number(1:6)去掉,程序才能运行?

[ Last edited by nono2009 on 2010-9-30 at 08:35 ]
回复此楼

» 猜你喜欢

好好学习,天天向上。
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fengyezhi

新虫 (小有名气)

zyj8119(金币+1):谢谢参与
nono2009(金币-1):专业版请勿灌水。谢谢 2010-09-30 08:35:56
恩,等待回答
2楼2010-09-28 19:50:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zyj8119

木虫 (著名写手)

我猜测是上面的number 已经定义了,不必再定义一次,此贴结贴。
好好学习,天天向上。
3楼2010-09-28 20:15:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 zyj8119 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见