51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 5259|回复: 12
打印 上一主题 下一主题

奇怪的计算问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-4-16 13:42:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我的表格是用Fpspread这个控件做的,输入2000时,它就是显示成2,000。我用obj_get_text提取它的文本,假如要用它乘以10,得到的结果是20,因为它并不是用2000*10=20000,而是2*10=20,它把2,000中的“,”当成结束符号,我如何将2,000变加原来的2000呢?请各位高手帮忙解决一下。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2007-4-17 14:36:45 | 只看该作者
有无人可以帮我解决一下啊,急用!!!sdlkfj4
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2007-4-18 11:45:55 | 只看该作者
楼主可否放个sample上来让大家玩玩sdlkfj3
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2007-4-18 17:23:08 | 只看该作者
我想,obj_get_text()函数得到的应该是一个字符串,并且含有",".所有会得到2*10=20
1.使用字符串处理函数,先把","符号替换为空,然后再做乘法,但是WR好象没有提供这种函数.楼主可以试着自己写一个函数进行处理.
2.不知道你们的软件中的数据的格式可不可以改变,输出时不以","格式显示,直接显示数字.
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2007-4-19 23:09:48 | 只看该作者
试试这个段脚本

teststring = "7,221,020,500";    '这个是你取得的字符串
elements = split(teststring,testarray,",");    '以逗号为分割,放到数组中
for(i=1;i<elements;i++)                            '重新组合数组
newstring = newstring & testarray;
result = newstring*2;                               '可以进行乘法

[ 本帖最后由 dionysus 于 2007-4-19 23:25 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2007-4-20 09:13:32 | 只看该作者
可以先delete一下阿!再输入不就行了
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2007-4-20 18:20:20 | 只看该作者
正确的方法是:
newstring=result="";
teststring = "7,221,020";   
elements = split(teststring,testarray,",");   
for(i=1;i<=elements;i++)                  
        newstring = newstring & testarray;
result = newstring;   
最后得到的结果是:7221020


谢谢各位的帮助!sdlkfj5
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2007-4-24 08:18:28 | 只看该作者
拓展了一种思路,学习中~~
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2007-5-15 09:50:27 | 只看该作者

好办法

使用“edit_text”行不行 呢
回复 支持 反对

使用道具 举报

该用户从未签到

10#
发表于 2007-5-31 00:43:24 | 只看该作者
提供一种思路: 首先将2跟000分别获取,使用的函数是substr,然后将2和000组成字符串,然后就可以直接跟10相乘。
回复 支持 反对

使用道具 举报

该用户从未签到

11#
发表于 2007-5-31 00:45:46 | 只看该作者
补充,获取的时候,先判断,的位置,使用的函数是index.截取的时候使用到的函数还有length.
回复 支持 反对

使用道具 举报

该用户从未签到

12#
发表于 2007-10-25 17:24:26 | 只看该作者
我试了一下二位的代码,在我本机上面我是运行不了。
只有在把“newstring = newstring & testarray;”
改为“newstring = newstring & testarray [ i ];”才可以正确的运行下来。
不知你们的代码为什么要少掉“[ i ]”,还是可以在代码中可以不用这个就可以运行呢。具体是在哪里设置后就可以省的旧"[ i ]"呢。谢谢。
回复 支持 反对

使用道具 举报

该用户从未签到

13#
发表于 2007-10-25 17:26:04 | 只看该作者
哦哦。原来是论坛的原因。。论坛自动把" [ i ]"给省了。。。。吓我。。。
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-25 05:54 , Processed in 0.073646 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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