Fortran Coder

查看: 2869|回复: 2
打印 上一主题 下一主题

[流程控制] 疑问goto语句逻辑判断

[复制链接]

2

帖子

1

主题

0

精华

新人

F 币
35 元
贡献
9 点
跳转到指定楼层
楼主
发表于 2022-1-29 18:40:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
想做个逻辑判断 但是不知道语法怎么写 求指点
[Fortran] 纯文本查看 复制代码
PROGRAM AAA

IMPLICIT NONE
LOGICAL Y,N,NN

100 WRITE(*,*) "Y/N?"
    READ(*,*) NN
IF (Y=NN) THEN
    GOTO 200
ELSE IF (N=NN) THEN
    GOTO 300   
ELSE
     GOTO 100
END IF
200 WRITE(*,*) "200"
300 WRITE(*,*) "300"

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

1963

帖子

12

主题

5

精华

论坛跑堂

臭石头雪球

F 币
1357 元
贡献
574 点

美女勋章热心勋章星光勋章新人勋章贡献勋章管理勋章帅哥勋章爱心勋章规矩勋章元老勋章水王勋章

沙发
发表于 2022-1-31 14:58:22 | 只看该作者
1. 不建议全部大写。现代代码应该大小写混合。
2. 相等判断应该用 == 而非 =
3. 现代代码,尽量避免用语句标号。
4. NN应定义为字符类型。而非逻辑类型。Y 和 N 也建议用字符,并且用常量更便于理解。

[Fortran] 纯文本查看 复制代码
Program AAA
  Implicit None
  Character NN
  Do
    write(*,*) "Y/N?"
    read(*,*) NN
    If ( 'Y'==NN ) then
      write(*,*) "200"
    Else If ( 'N'==NN ) then
      write(*,*) "300"
    Else
      cycle
    End If
    exit
  End Do
End Program AAA

2

帖子

1

主题

0

精华

新人

F 币
35 元
贡献
9 点
板凳
 楼主| 发表于 2022-2-13 09:05:58 | 只看该作者
明白了  谢谢
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

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

GMT+8, 2024-4-27 16:47

Powered by Tencent X3.4

© 2013-2024 Tencent

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