开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 3848|回复: 15
收起左侧

[已解决] 两个数组求平均值,计算结果只有整数部分,怎么办?

 关闭 [复制链接]
结帖率:83% (5/6)
发表于 2011-9-21 23:43:45 | 显示全部楼层 |阅读模式   浙江省宁波市
2精币
本帖最后由 canaan 于 2011-9-21 23:46 编辑

前期计算完毕后得到两个数组数据比如
数组1:{1,5,6,8,7,6,7,6,5,8,5,4,1,2}
数组2:{5,8,5,4,2,7,5,6,6,4,1,1,7,2}
那么用一个计次循环,(数组1+数组22  '这里的2在计算式里不能写成2.0
结果是数组3{3,6,5,6,4,6,6,6,5,6,3,2,4,2}
(以上只是打个比方)

数组类型我改过小数型,双精度小数型,没有任何类型,但是输出结果依旧没有小数点后的数值
改成小数型后,结果纯粹从6变成6.0000,而不是变成6.5000
这样对我要的结果一点用处也没有
不知道这个问题怎么解决



我想解决的问题是:两个实际为正整数的数组,计算平均值后赋值到第三个数组中,第三数组里的数值中小数点右边部分怎么样才能显示出来,也就是显示xxxx.5。也就是要达到:(2+3)÷2的结果是2.5,而不是2,也不是2.0000。


百度了几下解决不了,上来求助了,谢谢易友解答!!bow~~


最佳答案

查看完整内容

计算机在计算小数时内存中始终会保存小数位数的零,所以2.5000000 可以直接看成2.5 只要结果正确就行了. [e].版本 2 .支持库 spec .子程序 _按钮1_被单击 .局部变量 数组1, 整数型, , "14" .局部变量 数组2, 整数型, , "14" .局部变量 数组3, 文本型, , "0" .局部变量 temp, 文本型 .局部变量 n, 整数型 数组1 = { 1, 5, 6, 8, 7, 6, 7, 6, 5, 8, 5, 4, 1, 2 } 数组2 = { 5, 8, 5, 4, 2, 7, 5, 6, 6, 4, 1, 1, 7, 2 } .计次循 ...

回答提醒:如果本帖被关闭无法回复,您有更好的答案帮助楼主解决,请发表至 源码区 可获得加分喔。
友情提醒:本版被采纳的主题可在 申请荣誉值 页面申请荣誉值,获得 1点 荣誉值,荣誉值可兑换荣誉会员、终身vip用户组。
快捷通道:申请荣誉值无答案申请取消悬赏投诉有答案未采纳为最佳
结帖率:96% (24/25)
发表于 2011-9-21 23:43:46 | 显示全部楼层   广东省深圳市
本帖最后由 qq578023708 于 2011-9-22 05:07 编辑

计算机在计算小数时内存中始终会保存小数位数的零,所以2.5000000 可以直接看成2.5 只要结果正确就行了.
QQ截图20110922050046.jpg

[e].版本 2
.支持库 spec

.子程序 _按钮1_被单击
.局部变量 数组1, 整数型, , "14"
.局部变量 数组2, 整数型, , "14"
.局部变量 数组3, 文本型, , "0"
.局部变量 temp, 文本型
.局部变量 n, 整数型

数组1 = { 1, 5, 6, 8, 7, 6, 7, 6, 5, 8, 5, 4, 1, 2 }
数组2 = { 5, 8, 5, 4, 2, 7, 5, 6, 6, 4, 1, 1, 7, 2 }
.计次循环首 (14, n)
    temp = 数值到格式文本 ((数组1 [n] + 数组2 [n]) ÷ 2, , 假)
    调试输出 (temp)
    插入成员 (数组3, n, temp)
.计次循环尾 ()
调试输出 (数组3)[/e]




回复

使用道具 举报

结帖率:83% (5/6)
 楼主| 发表于 2011-9-21 23:45:48 | 显示全部楼层   浙江省宁波市
需要达到的目的是
(2+3)÷2=2.5
回复

使用道具 举报

结帖率:100% (2/2)
发表于 2011-9-21 23:47:11 | 显示全部楼层   陕西省西安市
路过,帮顶
回复

使用道具 举报

结帖率:83% (5/6)
 楼主| 发表于 2011-9-21 23:49:09 | 显示全部楼层   浙江省宁波市


.计次循环首 (n, X)
    Y = (数组1 [X] + 数组2 [X]) ÷ 2

    插入成员 (数组3, X, Y)

.计次循环尾 ()

调试输出 (数组3)
回复

使用道具 举报

结帖率:84% (21/25)
发表于 2011-9-21 23:52:37 | 显示全部楼层   广东省湛江市
改成这样 到小数((数组1+数组2)÷2  ),然后把 结果数组的类型设置为小数型,
回复

使用道具 举报

结帖率:92% (12/13)
发表于 2011-9-22 00:03:23 | 显示全部楼层   湖南省湘潭市
大头佛 发表于 2011-9-21 23:52
改成这样 到小数((数组1+数组2)÷2  ),然后把 结果数组的类型设置为小数型,

QQ截图20110921233653.jpg

这个意思?
回复

使用道具 举报

结帖率:84% (21/25)
发表于 2011-9-22 00:11:16 | 显示全部楼层   广东省湛江市
a307 发表于 2011-9-22 00:03
这个意思?

那就把数组设成文本型的吧,然后加个判断如果尾数为零就删除后面的为零的文本!
回复

使用道具 举报

结帖率:0% (0/2)

签到天数: 6 天

发表于 2011-9-22 02:26:22 | 显示全部楼层   湖北省黄冈市
我设成小数类型.为什么可以直接输出小数部分 ?? 你把源码放出来呗
回复

使用道具 举报

结帖率:0% (0/3)
发表于 2011-9-22 08:35:41 | 显示全部楼层   广东省东莞市
.版本 2
.支持库 spec

.子程序 _按钮1_被单击
.局部变量 数组1, 整数型, , "14"
.局部变量 数组2, 整数型, , "14"
.局部变量 数组3, 双精度小数型, , "14"
.局部变量 n, 整数型

数组1 = { 1, 5, 6, 8, 7, 6, 7, 6, 5, 8, 5, 4, 1, 2 }
数组2 = { 5, 8, 5, 4, 2, 7, 5, 6, 6, 4, 1, 1, 7, 2 }
重定义数组 (数组3, 假, 取数组成员数 (数组1))
.计次循环首 (14, n)
    数组3 [n] = (数组1 [n] + 数组2 [n]) ÷ 2
    编辑框1.加入文本 (到文本 (数组3 [n]) + #换行符)
.计次循环尾 ()
调试输出 (数组3)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表