TC官方合作论坛

 找回密码
 立即注册
查看: 1140|回复: 6

[问题] 我不是新手,但是遇到奇怪的问题,请帮我,谢谢

[复制链接]
发表于 2016-1-10 23:57:57 | 显示全部楼层 |阅读模式

马上加入TC

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
源代码片段如下:

功能 按钮0_点击()
变量 a=10
        a=a+((1150-a)/1150)*120
        调试输出(转字符型(a))
结束



就是点击一个按钮,在输出栏中显示被改变的变量a,但是实际上这个变量a没有被改变,还是等于10,我就搞不懂了,这个问题关系到一个很重要的脚本的开发,请告诉我为什么那个表达式a=a+((1150-a)/1150)*120没起作用,谢谢!

回复

使用道具 举报

发表于 2016-1-11 03:18:34 | 显示全部楼层
请将a = 10 改成 a = 10.0
回复 支持 反对

使用道具 举报

发表于 2016-1-11 03:22:43 | 显示全部楼层
因为计算没有4舍5入,默认计算的是整型,就是小数点后面的忽略.
应该是这样的,a=a+转浮点型(1150-a)/1150*120
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-1-11 06:30:46 | 显示全部楼层
今天早上一起床就看到你的消息,虽然现在还没有具体测试,但是首先要感谢你。希望就是你所说的这个原因造成计算结果出错,真的很感谢!
回复 支持 反对

使用道具 举报

发表于 2016-1-11 06:42:14 | 显示全部楼层
首先咱们先看看为什么等于10
第一步:1150-10=1140
第二步:1140/1150=0  //因为结果为0.9xxx,而整形不能显示小数点以后的位数的
第三部:0*120=0
第四部:10+0=10
所以结果为10

就像楼上所说,把变量a改为浮点型,整个公式才会带小数计算

变量 a=10.0
a=a+((1150-a)/1150)*120
调试输出(a)
调试输出(转整型(a))//四舍五入
调试输出(取整(a))
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-1-11 06:51:32 | 显示全部楼层
我做了测试了,2楼chen71512的方法是对的,民工唐子你的方法依然不能计算出正确结果,谢谢你们帮我找到解决方法!
回复 支持 反对

使用道具 举报

发表于 2016-1-11 08:32:56 | 显示全部楼层
新手!!!!!!!!!!!!!!!!!!!!!!!!!!
回复

使用道具 举报

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

本版积分规则

关闭

推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18045623号)

GMT+8, 2024-9-23 04:00 , Processed in 0.037967 second(s), 23 queries .

Powered by 海安简单软件服务部

© 2008-2019 版权所有 保留所有权利

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