Project1

标题: rm计算器的实现(仅仅是想法) [打印本页]

作者: sizz123    时间: 2007-5-24 19:11
标题: rm计算器的实现(仅仅是想法)
导: 计算器本身不是个很神秘的东西,系统自带就有一个,只是用rm实现而已
一,界面
   9个数字,5个运算符号,等等控件,可以用事件代替.触发就表示按键----这样做就是为了体现出一种很卡通的效果,特别是把主角改成小手.
   
二,算法
输入一个数,就在数组中push一个数
a=[3,2,1],那么如何把[3,2,1]转化为321呢?
最高位就是:a[0]*10**(a.size-1)
次位是:a[1]*10**(a.size-2)
把数组中的数字连接起来的算法就是
B=0
for A in 0..a.size
B=a[A]*10**(a.size-A)+b

然后把从数组中转换的数相运算就好了




作者: sizz123    时间: 2007-5-24 19:11
标题: rm计算器的实现(仅仅是想法)
导: 计算器本身不是个很神秘的东西,系统自带就有一个,只是用rm实现而已
一,界面
   9个数字,5个运算符号,等等控件,可以用事件代替.触发就表示按键----这样做就是为了体现出一种很卡通的效果,特别是把主角改成小手.
   
二,算法
输入一个数,就在数组中push一个数
a=[3,2,1],那么如何把[3,2,1]转化为321呢?
最高位就是:a[0]*10**(a.size-1)
次位是:a[1]*10**(a.size-2)
把数组中的数字连接起来的算法就是
B=0
for A in 0..a.size
B=a[A]*10**(a.size-A)+b

然后把从数组中转换的数相运算就好了




作者: Flyingpww    时间: 2007-5-24 19:33

a = [3,2,1]
b = ""
for i in 0...a.size
  b += a.to_s
end
p b.to_i
作者: 亿万星辰    时间: 2007-5-24 19:41
[3,2,1].to_s的结果是什么?
"321".to_i的结果是什么?
作者: sizz123    时间: 2007-5-25 02:14
以下引用亿万星辰于2007-5-24 11:41:55的发言:

[3,2,1].to_s的结果是什么?
"321".to_i的结果是什么?


把这地给忘记了{/pz}
谢谢提醒





欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1