Project1

标题: 问一个关于判断最大值的问题 [打印本页]

作者: 水晶凌    时间: 2008-12-2 20:35
提示: 作者被禁止或删除 内容自动屏蔽
作者: redant    时间: 2008-12-2 20:54
两个点 i的值 1到2 的范围变化
三个点 就不包括2

可以 p 一下试试嘛= =|

[LINE]1,#dddddd[/LINE]
换题了= =|
作者: 水晶凌    时间: 2008-12-2 20:55
提示: 作者被禁止或删除 内容自动屏蔽
作者: 菜鸟飞呀飞    时间: 2008-12-2 21:14
提示: 作者被禁止或删除 内容自动屏蔽
作者: redant    时间: 2008-12-2 21:16
  1. class Say_Something
  2.   def initialize
  3.     if $game_variables[1]<$game_variables[2]
  4.     if $game_variables[1]<$game_variables[3]
  5.     if $game_variables[2]<$game_variables[3]
  6.      print $game_variables[3]
  7.       end
  8.     end
  9.       elsif
  10.   $game_variables[1]>$game_variables[2]
  11.     if $game_variables[1]<$game_variables[3]
  12.     print $game_variables[3]
  13.   end
  14.    elsif
  15.   $game_variables[1]>$game_variables[2]
  16.     if $game_variables[1]>$game_variables[3]
  17.     print $game_variables[1]   
  18.     end
  19.   end
  20.   end
  21. end

复制代码


只是试验了 123的情况  
事件里新建my_object = Say_Something.new

[LINE]1,#dddddd[/LINE]
数组 就是哦  
脑子够死板的 上来想到就是IF = =|
[LINE]1,#dddddd[/LINE]系统信息:本贴获得楼主认可,66RPG感谢您的热情解答~
作者: 天圣的马甲    时间: 2008-12-2 21:25
那么麻烦,还要写个类?直接用max这个函数不就行了么- -
举例:
a =[$game_variables[1],$game_variables[2],$game_variables[3]]
$game_variables[4] = a.max

至于调用序号,可以使用Index函数。请查看F1帮助手册。

[LINE]1,#dddddd[/LINE]系统信息:本贴获得楼主认可,66RPG感谢您的热情解答~
作者: 水晶凌    时间: 2008-12-2 21:56
提示: 作者被禁止或删除 内容自动屏蔽
作者: 天圣的马甲    时间: 2008-12-2 21:58
index(val)
返回数组中第一个 ==val 的单元的位置。若没有与其相等的单元则返回 nil。

来自帮助,谢谢= =
一定非要我把啥都写给你么?好吧,无语。
$game_variables[5] = $game_variables.index($game_variables[4])

作者: 精灵使者    时间: 2008-12-2 21:59
精灵的问题更加复杂一些……如何判断5个数值的排序问题?
例如
1号=3
2号=8
3号=7
4号=6
5号=10

然后输出一个 5,2,3,4,1的序列呢?
作者: 水晶凌    时间: 2008-12-2 22:08
提示: 作者被禁止或删除 内容自动屏蔽
作者: 一路一风尘    时间: 2008-12-2 22:12
提示: 作者被禁止或删除 内容自动屏蔽
作者: 水晶凌    时间: 2008-12-2 22:15
提示: 作者被禁止或删除 内容自动屏蔽
作者: 精灵使者    时间: 2008-12-2 22:22
以下引用一路一风尘于2008-12-2 14:12:12的发言:

sort

你的意思是排序么?
也就是说,就是把数组里面的东西排序以后,然后输出一个从大到小的序号值?
作者: redant    时间: 2008-12-2 22:23
  1. class Say_Something
  2.   def initialize
  3.     a =[$game_variables[1],$game_variables[2],$game_variables[3],$game_variables[4],$game_variables[5]]

  4.     for j in 1..5
  5. j+=1
  6. for i in 1..(5-j)
  7. if a[i]>a[i+1]
  8. t=a[i]
  9. a[i]=a[i+1]
  10. a[i+1]=t
  11. end
  12. end
  13. end
  14. for i in -1..3
  15. i+=1
  16. print a[i]
  17. end
  18.   end
  19. end

复制代码


事件里新建my_object = Say_Something.new

…… 好像还有点问题 不过数值是能排出来 3 6 7 8 10

就是冒泡排序

作者: 精灵使者    时间: 2008-12-2 22:25
嗯哪。
我正在做游游人生的出发顺序(摇色子按大小决定出发顺序)和排名(最后按资金的多少来排行),所以感觉需要这些东西……




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