| 赞 | 33 |
| VIP | |
| 好人卡 | |
| 积分 | 17 |
| 经验 | |
| 最后登录 | 2026-9-19 |
| 在线时间 | 1359 小时 |
唯一的信徒
- 梦石
- 0
- 星屑
- 1697
- 在线时间
- 1359 小时
- 注册时间
- 2013-1-29
- 回帖
- 1537
|
发表于 2015-9-6 20:10:29
|
显示全部楼层
本帖最后由 LBQ 于 2015-9-6 20:35 编辑
Mandelbrot Set
[pre lang="ruby"]#red method
def red(i,j)
Kernel.const_set("W",1024);Kernel.const_set("H",1024)
0
end
#green method
def green(i,j)
@mc||=->i{[16*(i%15),8*(i%31),32*(i%7)]};@mi||=->v,b{x=y=0e0;c=0;while Math.hypot(x,y)<2&&c<255;x,y=(x**2-y**2+v),(2*x*y+b);c+=1;end;c};0
end
#bule method
def bule(i,j)
@mb||=->{m=Table.new W,H;W.times{|x|H.times{|y|o=(x-W*11/15.0)/W*3;l=(y-H/2.0)/H/3*10;m[x,y]=@mc[@mi[o,l]][0]}};m};@md||=@mb[];@md[i,j]
end
[/pre]
跟开作弊没什么两样了233
懒得解决那个讨厌的const_set了就那样吧。
说实话那些codegolf.stackexchange上的这些功底也够深厚,我是别想有那种能力了。
这个代码基本上就是基于Rosetta Code上面的,我只是一直把这个改短罢了
(并且别人有数学功底的可以用这个弄出更加可怕的图形我是没那个能力了 |
评分
-
查看全部评分
|