一段fortran程序,用于生成随机数,哪里出问题了

学习 时间:2026-03-30 10:04:53 阅读:2982
一段fortran程序,用于生成随机数,哪里出问题了real*8 function random()implicit double precision(a-h,o-z)common/random_s/xx=dmod(x*1953125d0,8388593d0)random=(x+0.1d0)/8388593d0returnendblock datareal*8 xcommon/random_s/xdata x/235621d0/end block data另外,问题是The type of the function reference does not match the type of the function definition.有人说是形参和实参类型不一致,求问该怎么改动我在调用的时候语句是a=random()请问哪里出现什么问题了吗?该怎么解决?

最佳回答

明理的便当

怕孤独的钥匙

2026-03-30 10:04:53

你给出的 random 没有任何虚参,不存在类型不一致的情况。1。随机数,Fortran 有内置的函数random_number可以实现。2。如果你要找出你的问题,建议你给出完整代码。 再问: 完整代码很长,不便复制,问题就是那句The type of the function reference does not match the type of the function definition。 还有,这段子函数程序本身没有什么问题吗? 内置的暂且不要。如果需要的话我自行改动,大神还是帮我看看这段子函数。 再答: 这子程序没有语法问题。但能否实现随机数,我觉得够呛。为什么内置的不要呢?? The type of the function reference does not match the type of the function definition。 意思确实是实参和虚参类型不一致,但不是发生在你给出的子程序上。 你给出的子程序,根本没有虚参啊。 最后,我强烈建议你放弃使用 common 和 data 语句。

最新回答共有2条回答

  • 炙热的镜子
    回复
    2026-03-30 10:04:53

    你给出的 random 没有任何虚参,不存在类型不一致的情况。1。随机数,Fortran 有内置的函数random_number可以实现。2。如果你要找出你的问题,建议你给出完整代码。 再问: 完整代码很长,不便复制,问题就是那句The type of the function reference does not match the type of the function definition。 还有,这段子函数程序本身没有什么问题吗? 内置的暂且不要。如果需要的话我自行改动,大神还是帮我看看这段子函数。 再答: 这子程序没有语法问题。但能否实现随机数,我觉得够呛。为什么内置的不要呢?? The type of the function reference does not match the type of the function definition。 意思确实是实参和虚参类型不一致,但不是发生在你给出的子程序上。 你给出的子程序,根本没有虚参啊。 最后,我强烈建议你放弃使用 common 和 data 语句。

上一篇 形容冬景地 词语形容冬景的词语或成语都行!最好是那些很美的词

下一篇 一头大象加两匹马重4顿,4头大象加6匹马重6顿200千克