【问题标题】:How do you find sine, cosine, etc. in Minitran?您如何在 Minitran 中找到正弦、余弦等?
【发布时间】:2016-03-31 08:31:30
【问题描述】:

在使用Minitran language(1970 年左右被澳大利亚莫纳什大学用于教授 Fortran)时,您如何要求三角函数,如 Sin、Cos、Tan、Log、Sqrt 等?

您用来提交程序的卡片如下所示:

请注意,您可以(用回形针)“打出”的唯一字母字符是 A、B、I、J 和 F(F 位于每列的右下角)。

这些函数是通过使用(比如说)F1(对于 Sin)、F2(对于 Cos)还是什么来调用的?如果是这样,函数编号到底层函数的映射是什么?


算术如果

我想知道他们用什么来做逻辑运算符?

在一位上过同样课程的朋友的提示下,我解决了这个问题。

https://www.fortran.com/F77_std/rjcnf-11.html

11.4 算术 IF 语句 算术 IF 语句的形式为:

  IF (e) s1, s2, s3

地点:

e 是整数、实数或双精度表达式

s1、s2 和 s3 分别是与算术 IF 语句出现在同一程序单元中的可执行语句的语句标签。同一个语句标签可能在同一个算术 IF 语句中出现多次。

算术 IF 语句的执行会导致对表达式 e 求值,然后转移控制。接下来执行由 s1、s2 或 s3 标识的语句,因为 e 的值分别小于零、等于零或大于零。

【问题讨论】:

  • 一开始我回答你不能,但后来一些脑细胞复活了,我记得实现内置函数就像你猜的那样,F1,F2等。我不能记住哪些是哪些。
  • 不知道他们用什么逻辑运算符?
  • 好问题!我可以在那里看到=,但看不到<>
  • @agentp - 可能使用这样的东西? IF(100,200,300)A 表示 IF(A<0)GOTO 100IF(A=0)GOTO 200IF(A>0)GOTO 300。听起来有道理吗?
  • 我算出来了 - “算术 IF” - 请参阅修正后的问题。

标签: fortran trigonometry math.sqrt


【解决方案1】:

我很幸运能够联系到编写 Minitran 语言的 Len Whitehouse 博士。他确认Fn(parameter)是调用函数的方法,其中:

n = 1 for SIN
    2 for COS
    3 for ATAN
    4 for SQRT
    5 for ALOG
    6 for EXP
    7 for ABS
    8 for RAN
    9 for PLOT

参数是实常数或实简单变量。


此外,变量是字母和数字字符串(您可以从中选择A, B, I, J),其中第一个必须是字母。只有名称的前四个字符是重要的。正常的整数-实数规则适用,我假设这意味着以 A, B 开头的变量是实数,I, J 是整数。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-06-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-06
    • 1970-01-01
    相关资源
    最近更新 更多