24小时热门版块排行榜    

查看: 1954  |  回复: 11

lqhcxx

铜虫 (职业作家)

[交流] 【求助】Fortran的计算结果 已有5人参与

program main
real(8):: a
a=0.4
write(*,*) a
end


上面的程序输出结果为0.400000005960464

这是为什么呢?误差吗?
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

★
小木虫(金币+0.5):给个红包,谢谢回帖交流
是的,误差,或者说这是浮点数的规则决定的……
2楼2010-11-01 09:21:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

maomao1210

金虫 (正式写手)

★
小木虫(金币+0.5):给个红包,谢谢回帖交流
program main
      real(8):: a
      a=0.4d0
      write (*,*) a
      end
3楼2010-11-01 17:04:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

maomao1210

金虫 (正式写手)

★
小木虫(金币+0.5):给个红包,谢谢回帖交流
引用回帖:
Originally posted by lqhcxx at 2010-11-01 08:06:15:
program main
real(8):: a
a=0.4
write(*,*) a
end


上面的程序输出结果为0.400000005960464

这是为什么呢?误差吗?

a=0.4
a你定义的是双精度,却赋值了一个0.4单精度的值。
修改成 a=0.4d0就OK了。
4楼2010-11-01 17:07:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ykwang

金虫 (正式写手)

★
小木虫(金币+0.5):给个红包,谢谢回帖交流
主要原因是你定义a为实型量,而实型量是按单精度处理的,故其最大精度只有8位小数。要想得到比较好的结果,需要用双精度定义a

DOUBL PRECISON a

并将a=0.4改写为

a=0.4D0

才行。
Nothing_Is_Impossible!
5楼2010-11-01 17:14:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

holmescn

金虫 (正式写手)

★
小木虫(金币+0.5):给个红包,谢谢回帖交流
snoopyzhao的回答并不正确,尝试下面得程序:
CODE:
program test
    real(8) a
    a = 0.4
    print *, a
    a = 0.4d0
    print *, a
end program test

看結果,就就會知道,多出来得数据是单精度转换为双精度时,(随机)加进去得。单精度只有7位有效数字,不足得位数就是你看到得那些。所以,在给双精度赋值的时候,一定要用1.0d0这种格式,或者在选项里指定real的默认精度为双精度。
6楼2010-11-01 17:53:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

holmescn

金虫 (正式写手)

额,干了点活,回复得晚了。大家都回答了阿。:-)
7楼2010-11-01 17:54:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

★
小木虫(金币+0.5):给个红包,谢谢回帖交流
引用回帖:
Originally posted by holmescn at 2010-11-01 17:53:47:
snoopyzhao的回答并不正确,尝试下面得程序:
CODE:
program test
    real(8) a
    a = 0.4
    print *, a
    a = 0.4d0
    print *, a
end program test

看結果,就就會知道,多出来得 ...

咋不正确了,你单精转双精时这样的结果,不是误差是啥?
8楼2010-11-01 20:44:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

holmescn

金虫 (正式写手)

引用回帖:
Originally posted by snoopyzhao at 2010-11-01 20:44:00:


咋不正确了,你单精转双精时这样的结果,不是误差是啥?

我觉得这不叫误差
9楼2010-11-01 21:35:27
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

★
小木虫(金币+0.5):给个红包,谢谢回帖交流
哦,好吧。

不过,那应该叫啥?
10楼2010-11-01 21:52:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 lqhcxx 的主题更新
普通表情 龙 兔 虎 猫 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +8 zSbvVX9JFl9J 2026-11-09 9/450 2026-11-13 11:11 by Equinoxhua
[考博] 27博士 +5 锦鲤送福至 2026-11-10 5/250 2026-11-13 06:22 by wlf1982
[论文投稿] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 TgvkbZZl9tqB 2026-11-11 4/200 2026-11-12 13:02 by ECLTXnJnRSXf
[硕博家园] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +4 cdqGD6ftHmbl 2026-11-11 4/200 2026-11-12 12:26 by ECLTXnJnRSXf
[基金申请] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +4 Z7qfCsdIiD1T 2026-11-10 7/350 2026-11-12 11:33 by HajghKOMynmz
[基金申请] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +4 czAiolzR0IJC 2026-11-10 8/400 2026-11-12 11:00 by HajghKOMynmz
[考研] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +4 G2rhSvqvhNzl 2026-11-10 6/300 2026-11-12 10:41 by HajghKOMynmz
[考研] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +5 C6CRn66RYYXS 2026-11-10 7/350 2026-11-12 10:16 by HajghKOMynmz
[硕博家园] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +4 C6CRn66RYYXS 2026-11-10 6/300 2026-11-12 10:16 by HajghKOMynmz
[公派出国] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +7 FChKX8meu1ds 2026-11-09 9/450 2026-11-12 10:03 by HajghKOMynmz
[公派出国] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +6 FChKX8meu1ds 2026-11-09 11/550 2026-11-12 09:57 by HajghKOMynmz
[公派出国] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +5 FChKX8meu1ds 2026-11-09 10/500 2026-11-12 09:52 by HajghKOMynmz
[教师之家] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +7 FChKX8meu1ds 2026-11-09 12/600 2026-11-12 09:43 by HajghKOMynmz
[教师之家] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +3 TgvkbZZl9tqB 2026-11-11 3/150 2026-11-12 08:26 by HajghKOMynmz
[考研] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +4 C6CRn66RYYXS 2026-11-10 6/300 2026-11-12 06:03 by 9fOTqj074tIg
[考博] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 FChKX8meu1ds 2026-11-09 7/350 2026-11-12 05:30 by 9fOTqj074tIg
[教师之家] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +5 FChKX8meu1ds 2026-11-09 10/500 2026-11-12 05:19 by 9fOTqj074tIg
[考研] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +6 FChKX8meu1ds 2026-11-09 9/450 2026-11-12 05:19 by 9fOTqj074tIg
[教师之家] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +4 FChKX8meu1ds 2026-11-09 7/350 2026-11-12 05:19 by 9fOTqj074tIg
[文学芳草园] 厉娜 +3 张丹枫1991 2026-11-09 5/250 2026-11-09 16:53 by 张丹枫1991
信息提示
请填处理意见