求500以内(含500)能被5或9整除的所有自然数的倒数之和.按四舍五入的方式精确

求500以内(含500)能被5或9整除的所有自然数的倒数之和.按四舍五入的方式精确
C语言
最熟悉发陌生人 1年前 已收到2个回答 举报

yhx1425 春芽

共回答了17个问题采纳率:88.2% 举报

建议先求完和在进行四舍五入(这个子函数估计挺难写的)
我来讲讲这点,其实C语言中不难,
b=(int)(a+0.5)
举例:
假如a=5.49999999
那么a+0.5=5.99999999,转为int,则b=10
如果a=5.500001
那么a+0.5=6.00001,转为int,则b=6
从而实现了四舍五入.
其次考虑到计算机的精度问题,因为你要去倒数,所以建议
b=(int)(a+0.5+1e-8)
这里1e-8代表一个很小的数,为了防止5.4999999……无限循环小数,实际上这个无限循环数是由电脑计算截断误差产生的,按理应该进位的,结果电脑计算结果就是不进位..

1年前

6

yoi3um 幼苗

共回答了362个问题 举报

看起来挺简单的,从1开始循环到500,判断是否被整除,是,则取倒数,四舍五入(这个子函数估计挺难写的),然后叠加就是了。
我没学过C,不知道具体程序要怎么写,C++的话倒是可以的~

1年前

2
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 17 q. 1.382 s. - webmaster@yulucn.com