Fortran Coder

查看: 10507|回复: 3
打印 上一主题 下一主题

[求助] 字符已经设置了类型,仍然提示需要定义类型

[复制链接]

5

帖子

2

主题

0

精华

新人

F 币
28 元
贡献
16 点
跳转到指定楼层
楼主
发表于 2019-12-6 08:58:12 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
[Fortran] 纯文本查看 复制代码
program Console12
    implicit none
   integer,parameter::N=400  !一共400个粒子,
    integer::posx(N),posy(N)
    integer ::t,i,j,L
    real::pi,cell(8,8)
    real :: z,s,k
   
    k=0
    do i=-10,9           !初始化400个粒子的位置,都在-10*-10的区域
                         !行走之前,格点上只有一个粒子,开始行走之后,格点上允许有多个粒子,
        do j=-10,9
            k=k+1
            posx(k)=i
            posy(k)=j
        end do 
    end do
    open (10,file='dis-0.txt')
    do i=1,N
        write(10,*)posx(i),posy(i)
    end do 
    do t=1,6000000    !总共进行多少次选择
        call RANDOM_SEED()
        call RANDOM_NUMBER(z)
        k=integer(z*N+1)     ! k表示第几个粒子
        L=integer(z*4+1)     ! l表示1,2,3,4,的哪一个数
        select case(l)        ! 随机选中的粒子往哪里走,行走的区域是一个-100*100的表格
        case(1)
            posy(k)=posy(k)+1
            if(posy(k)>=100) posy(k)=posy(k)-1
        case(2)
            posy(k)=posy(k)-1
            if(posy(k)<-100) posy(k)=posy(k)+1
        case(3)
            posx(k)=posx(k)-1
            if(posx(k)<-100)posx(k)=posx(k)+1
        case(4)
            posx(k)=posx(k)+1
            if(posx(k)>=100)posx(k)=posx(k)-1
        end select
        !2000步计算一下熵
        if(mod(t,2000)==0)then
        cell(i,j)=0   !cell(i,j)表示第几个格点区域有多少个粒子,相当于一个8*8的矩阵,
        do k=1,N
            i=(posx(k)+100)/25+1   !计算每个格子中的粒子数目
            j=(posy(k)+100)/25+1     
            cell(i,j)=cell(i,j)+1.0
        end do
        pi=cell(i,j)/N
        s=0
        do i=1,8
            do j=1,8
                if(pi<1.0/2000.0)cycle  !即在2000步的行走中,该格点区域仍然没有一个粒子
                s=s-pi*log(pi)
            end do 
        end do
        write (10,*)s
        end if 
    end do
    close(10)
    end program Console12

错误 1  error #6404: This name does not have a type, and must have an explicit type.   [INTEGER] C:\文件\FORTRAN\Console12\Console12\Console12.f90 41



分享到:  微信微信
收藏收藏 点赞点赞 点踩点踩

5

帖子

2

主题

0

精华

新人

F 币
28 元
贡献
16 点
沙发
 楼主| 发表于 2019-12-6 08:58:59 | 只看该作者
谢谢了,哪位指导一下啊,万分感谢

835

帖子

2

主题

0

精华

大宗师

F 币
3926 元
贡献
2334 点
板凳
发表于 2019-12-6 10:22:56 | 只看该作者
integer 改为 int; k为整型。

QQ截图20191206102134.png (84.26 KB, 下载次数: 252)

QQ截图20191206102134.png

5

帖子

2

主题

0

精华

新人

F 币
28 元
贡献
16 点
地板
 楼主| 发表于 2019-12-6 11:09:15 | 只看该作者
li913 发表于 2019-12-6 10:22
integer 改为 int; k为整型。

谢谢了,
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-12-24 00:27

Powered by Tencent X3.4

© 2013-2024 Tencent

快速回复 返回顶部 返回列表