24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 514  |  回复: 3

astringent

铜虫 (著名写手)


[交流] 【求助】浮点数作为判断条件对结果又影响吗?

有一数组好h(20),h的值不是0就是1,我在声明时设成浮点数了,但是我在程序后面用它作为了判断条件,请问时候会引起误差?程序是这样的:
program test
implicit none
real h(20)
integer i
real sum,
sum=0.0
do i=1,20
    if (h(i)/=0) then
       sum=sum+i
     endif
enddo
另外,我有数组a(5),b(5),均为整型,sum为浮点数型,先要将数组a,b相乘并累加,是不是将a乘b的值先转化乘浮点数型(采用real).然后累加就可以保证精度了,
integer ::a(5),b(5)
real :: sum=0.0
do i=1,5
    sum=sum+real(a(i)*b(i))
enddo
回复此楼

» 猜你喜欢

» 抢金币啦!回帖就可以得到:

查看全部散金贴

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hakekill

木虫 (小有名气)


★ ★
余泽成(金币+2): 谢谢参与应助! 2011-02-27 15:04:48
astringent(金币+20): 2011-03-01 16:01:27
最好是不要直接用浮点数来做判断,可以用(abs( h(i) ) < 1.0e-6)来代替。

第二个的real转换可以不用,在于sum相加的时候会自动完成这个过程。
2楼2011-02-23 09:11:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

astringent

铜虫 (著名写手)


引用回帖:
Originally posted by hakekill at 2011-02-23 01:11:08:
最好是不要直接用浮点数来做判断,可以用(abs( h(i) ) < 1.0e-6)来代替。

第二个的real转换可以不用,在于sum相加的时候会自动完成这个过程。

是这样的,对于第一个问题,我的完整程序为:
real ::h(20),sum
integer i
open (8,file='test.out',status='old')
h=0.0
do i=1,20
    read(8,*)  h(i)
    if(条件1) then
     h=1.0
    endif
enddo
do i=1,20
    if (h(i)/=0) then
请问这个判断条件会不会对结果又影响,谢谢
3楼2011-02-23 16:12:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hakekill

木虫 (小有名气)


★ ★
余泽成(金币+2): 谢谢参与应助! 2011-02-27 15:04:59
这个结果严格来说是不可预知的,不过现代编译器都这么强,说不定不会对结果造成影响。不过我还是建议将h(i)/=0改成abs(h(i)) < 1.0e-6。
4楼2011-02-24 12:50:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 astringent 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 319求调剂 +14 太容易1018 2026-04-01 14/700 2026-04-02 16:56 by zzsw+
[考研] 318求调剂,计算材料方向 +10 吸喵有害笙命 2026-04-01 11/550 2026-04-02 16:29 by oooqiao
[考研] 085600,材料与化工321分求调剂 +11 大馋小子 2026-03-28 11/550 2026-04-02 15:59 by yunlongyang
[考研] 一志愿南昌大学324求调剂 +12 hanamiko 2026-04-01 12/600 2026-04-02 14:51 by 5896
[考研] 材料调剂 +6 懒羊羊轻置玉臀 2026-04-02 6/300 2026-04-02 14:47 by 5896
[考研] 342求调剂 +13 Mary Keen 2026-03-28 14/700 2026-04-02 14:28 by olim
[考研] 化学308分调剂 +14 你好明天你好 2026-03-30 15/750 2026-04-02 13:39 by 嘻嘻笑22
[考研] 重庆大学材料与化工085600,初试370+,求求调剂建议 +5 shzhou_ 2026-04-01 6/300 2026-04-02 10:05 by olim
[考研] 270调剂 +7 maxjxbsk 2026-04-02 7/350 2026-04-02 09:50 by yulian1987
[考研] 英一数一408,总分284,二战真诚求调剂 +12 12.27 2026-03-30 14/700 2026-04-02 00:18 by 欣喜777
[考研] 292求调剂 +17 木虫er12138 2026-04-01 17/850 2026-04-01 21:37 by 七度不信任
[考研] 311求调剂 +10 李芷新1 2026-03-31 10/500 2026-04-01 14:38 by chenqifeng666
[考研] 267求调剂 +13 uiybh 2026-03-31 13/650 2026-04-01 10:25 by 探123
[考研] 352分-085602-一志愿985 +6 海纳百川Ly 2026-03-29 6/300 2026-03-31 21:06 by yuq
[考研] 085601 329分调剂 +6 yzsa12 2026-03-31 6/300 2026-03-31 15:23 by yanflower7133
[考研] 370求调剂 +3 080700调剂 2026-03-30 3/150 2026-03-31 01:09 by A_Zhe
[考研] 303求调剂 +7 DLkz1314. 2026-03-30 7/350 2026-03-30 16:05 by shuang5186
[考研] 291求调剂 +5 Y-cap 2026-03-29 6/300 2026-03-29 13:18 by mumin1990
[考研] 265求调剂 +8 小木虫085600 2026-03-27 8/400 2026-03-27 22:16 by 无际的草原
[考研] 272求调剂 +7 脚滑的守法公民 2026-03-27 7/350 2026-03-27 17:23 by laoshidan
信息提示
请填处理意见