赞 | 5 |
VIP | 52 |
好人卡 | 19 |
积分 | 6 |
经验 | 4394 |
最后登录 | 2023-5-29 |
在线时间 | 961 小时 |
Lv2.观梦者 铃铃塔的守护者
- 梦石
- 0
- 星屑
- 626
- 在线时间
- 961 小时
- 注册时间
- 2010-10-24
- 帖子
- 2768
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
本帖最后由 px.凤翔九天 于 2010-12-13 23:30 编辑
我终于在钻研1个小时后搞定了显示100内质数的写法...(我的ruby书上的一道题...)这个算是我自己写的第一个脚本了吧(虽然用在游戏里极其鸡肋.........)觉得还是比较有成就感的。但是问题来了,这个写法只能算100以内的,200以内,300以内,10000以内甚至更多就不好使了...会漏掉一些项目,继续想就不会了,貌似需要比较纠结的迭代写法...虽然书上的题目就是100以内,但是进一步的话,希望各大高手教我一下。谢了
以下是我的写法,喜欢的拿去用(估计没人会用吧...因为太没用了)- #100以内质数求法
- #作者 px.凤翔九天
- #说明:此脚本可以算出100以内的全部质数并返回到数组a
- def assure(n)
- tempi=n.to_i
- if n==tempi
- return true
- else
- return false
- end
- end
- a=[2,3,5,7]
- n=5
- x=4.0
- #无聊的定义了一个方法...
- while x<=100.0
- #这里直接省掉了1到3,因为1到3不用计算机算吧...
- get=x/2
- if assure(get)==false
- get=x/3
- if assure(get)==false
- get=x/5
- if assure(get)==false
- get=x/7
- if assure(get)==false
- a[n]=x
- n+=1
- end
- end
- end
- end
- x+=1.0
- end
- a.compact!
- a.collect!{|toi| toi.to_i}
- p a
复制代码 |
|