设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2833|回复: 9
打印 上一主题 下一主题

[原创发布] 用ruby做的小游戏和小工具

[复制链接]

Lv3.寻梦者

梦石
0
星屑
1934
在线时间
403 小时
注册时间
2015-8-30
帖子
395
跳转到指定楼层
1
发表于 2016-7-16 10:20:57 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 有丘直方 于 2016-7-16 10:23 编辑

解一次方程机
RUBY 代码复制
  1. loop do
  2.     print("    这是解一次方程机!\n    请输入方程的元的数量!\n")
  3.     @unknown = gets.to_f.to_i
  4.     if !@unknown.between?(1, 3)
  5.         print("    元的数量必须少于4且为正整数!\n\n")
  6.         next
  7.     end
  8.     print("    ax = b\n    请输入常数的值:\n    a = \n    b = \n    输入格式为“[a, b]”。\n") if @unknown == 1
  9.     print("    a1x + b1y = c1\n    a2x + b2y = c2\n    请输入常数的值:\n    a1 =     a2 = \n    b1 =     b2 = \n    c1 =     c2 = \n    输入格式为“[a1, a2, b1, b2, c1, c2]”。\n") if @unknown == 2
  10.     print("    a1x + b1y + c1z = d1\n    a2x + b2y + c2z = d2\n    a3x + b3y + c3z = d3\n    请输入常数的值:\n    a1 =     a2 =     a3 = \n    b1 =     b2 =     b3 = \n    c1 =     c2 =     c3 = \n    d1 =     d2 =     d3 = \n    输入格式为“[a1, a2, a3, b1, b2, b3, c1, c2, c3, d1, d2, d3]”。\n") if @unknown == 3
  11.     begin
  12.         @ary = eval(gets)
  13.     rescue
  14.         print("    非法的输入!\n\n")
  15.         next
  16.     end
  17.     if @ary.class != Array
  18.         print("    非法的输入!\n\n")
  19.         next
  20.     end
  21.     begin
  22.         @result = [@ary[1] / @ary[0].to_f] if @unknown == 1
  23.         @result = [((@ary[4] * @ary[3] - @ary[5] * @ary[2]) / (@ary[0] * @ary[3] - @ary[1] * @ary[2]).to_f), ((@ary[0] * @ary[5] - @ary[1] * @ary[4]) / (@ary[0] * @ary[3] - @ary[1] * @ary[2]).to_f)] if @unknown == 2
  24.         @result = [((@ary[9] * @ary[4] * @ary[8] + @ary[10] * @ary[5] * @ary[6] + @ary[11] * @ary[3] * @ary[7] - @ary[9] * @ary[5] * @ary[7] - @ary[10] * @ary[3] * @ary[8] - @ary[11] * @ary[4] * @ary[6]) / (@ary[0] * @ary[4] * @ary[8] + @ary[1] * @ary[5] * @ary[6] + @ary[2] * @ary[3] * @ary[7] - @ary[0] * @ary[5] * @ary[7] - @ary[1] * @ary[3] * @ary[8] - @ary[2] * @ary[4] * @ary[6]).to_f), ((@ary[0] * @ary[10] * @ary[8] + @ary[1] * @ary[11] * @ary[6] + @ary[2] * @ary[9] * @ary[7] - @ary[0] * @ary[11] * @ary[7] - @ary[1] * @ary[9] * @ary[8] - @ary[2] * @ary[10] * @ary[6]) / (@ary[0] * @ary[4] * @ary[8] + @ary[1] * @ary[5] * @ary[6] + @ary[2] * @ary[3] * @ary[7] - @ary[0] * @ary[5] * @ary[7] - @ary[1] * @ary[3] * @ary[8] - @ary[2] * @ary[4] * @ary[6]).to_f), ((@ary[0] * @ary[4] * @ary[11] + @ary[1] * @ary[5] * @ary[9] + @ary[2] * @ary[3] * @ary[10] - @ary[0] * @ary[5] * @ary[10] - @ary[1] * @ary[3] * @ary[11] - @ary[2] * @ary[4] * @ary[9]).to_f)] if @unknown == 3
  25.     rescue
  26.         print("    非法的输入!\n\n")
  27.         next
  28.     end
  29.     print("    解为\n")
  30.     print("    x = #{@result[0]}\n") if @unknown >= 1
  31.     print("    y = #{@result[1]}\n") if @unknown >= 2
  32.     print("    z = #{@result[2]}\n") if @unknown >= 3
  33.     print("    谢谢使用解一次方程机!\n\n")
  34. end
和两位数加减法小游戏
RUBY 代码复制
  1. def game
  2.     first_num = rand(100)
  3.     next_num = rand(100)
  4.     symbol = rand(2)
  5.     case symbol
  6.     when 0
  7.         symbol = '+'
  8.     when 1
  9.         symbol = '-'
  10.     end
  11.     sum = "#{first_num}#{symbol}#{next_num}"
  12.     print("    #{sum}是多少?\n")
  13.     if gets.include?(eval(sum).to_s)
  14.         @red_flowers += 1
  15.         print("    正确!奖励你#{1}朵小红花!\n")
  16.     else
  17.         print("    错误!正确答案是#{eval(sum)}!\n")
  18.     end
  19.     print("    你已经有了#{@red_flowers}朵小红花!\n    说“下一题”继续游戏。\n")
  20. end
  21. print("    两位数加减法算数游戏即将开始!\n    说“开始”进行游戏。\n")
  22. if gets.include?("开始")
  23.     @red_flowers = 0
  24.     game
  25. end
  26. while gets.include?("下一题")
  27.     game
  28. end
具体有什么用放进ruby运行之后就知道了。。
小仙女一枚~

Lv3.寻梦者

梦石
0
星屑
1487
在线时间
252 小时
注册时间
2016-1-12
帖子
97
2
发表于 2016-7-17 09:55:54 | 只看该作者
楼主一起做游戏吗。。。q513416191

点评

需要什么工作?  发表于 2016-9-2 23:01
不了  发表于 2016-7-17 10:11
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
100
在线时间
72 小时
注册时间
2016-7-13
帖子
109
3
发表于 2016-7-18 13:20:36 | 只看该作者
{:8_464:}...........................我一个都看不懂,除了end...............

点评

。。  发表于 2016-7-18 14:11
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
100
在线时间
72 小时
注册时间
2016-7-13
帖子
109
4
发表于 2016-7-19 09:04:42 | 只看该作者
CBKOLAJ 发表于 2016-7-18 13:20
...........................我一个都看不懂,除了end...............

所以我正在学啊。

360截图20160718144017109.jpg (20.18 KB, 下载次数: 6)

360截图20160718144017109.jpg
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
100
在线时间
72 小时
注册时间
2016-7-13
帖子
109
5
发表于 2016-7-19 09:05:44 | 只看该作者
CBKOLAJ 发表于 2016-7-19 09:04
所以我正在学啊。

自学的......我想我很久才能学会了.....

点评

我学了2年才弄懂一点!  发表于 2016-9-2 23:02
ruby很好学的,两个月就能把基础部分都学完  发表于 2016-7-20 14:08
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-5-2 05:40

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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