讲到脚本语言,当下流行的无非是Ruby、Python、Perl和JSR正在讨论的Groovy,最近正在上人工智能要实现一些算法,没有规定实现语言,反正都是写,何不乘机看看脚本的魅力究竟在何处,于是我选择了在企业级应用上已经比较成熟的Ruby作为学习的第一个脚本语言,以便今后转向Ruby on Rails。
第一个程序不是Hello world!而是汉诺塔问题,看了看Ruby的变量、数字、函数和迭代。随后如果有时间我想应该整理一下Ruby的学习笔记。
hanoi.rb源代码:
$AXIS_COUNT = 3
$DISK_COUNT = 3
def recursion_hanoi(disks, from, to)
if disks > $DISK_COUNT || disks < 0 || from < 1 || from > $AXIS_COUNT || to < 1 || to > $AXIS_COUNT
print "Parameters may be wrong!"
return nil
end
if disks > 1
tmp = getTo(from, to)
recursion_hanoi(disks - 1, from, tmp)
recursion_hanoi(1, from, to)
recursion_hanoi(disks - 1, tmp, to)
elsif disks == 1
print "from:#{from} to:#{to} \n"
end
end
def getTo(from, to)
for i in 1..$AXIS_COUNT
if(i > 0 && i!=from && i!=to)
return i
end
end
end
recursion_hanoi($DISK_COUNT, 1, $AXIS_COUNT)
print "Press ENTER to return."
$stdin.gets
分享到:
相关推荐
在Ruby编程环境中,安装和配置Ruby是开始学习的第一步。Ruby可以在多种操作系统上运行,包括Windows和Linux。安装过程包括下载并执行安装程序,设置环境变量,确保Ruby解释器和相关工具如`gem`(Ruby的包管理器)...
- **编辑工具**:除了命令行外,还可以使用FreeRIDE、SciTE等编辑器进行Ruby程序的开发。 ##### §2.3 Ruby-irb - **交互式解释器**:irb是Ruby的一个交互式命令行环境,可以即时测试代码片段。 ##### §2.4 Ruby-...
第一部分:通过简单的Ruby程序来介绍程序的基本架构。 第二部分:介绍基础语法规则,以及类、模块等面向对象程序设计的思考方法与用词。 第三部分:对一些基础类逐一介绍其功能与用法。 第四部分:介绍一些...
9. **第一个Ruby程序 "Hello, World!"**:通过编写简单的程序,熟悉Ruby代码的编写和执行流程。 10. **Ruby社区和资源**:了解Ruby社区的重要资源,如RubyChina、GitHub上的开源项目,以及Stack Overflow等在线论坛...
1. **下载**:首先,你需要从Ruby官方网站或者第三方源获取Ruby 2.1.0的源代码包。 2. **解压**:使用解压缩工具(如WinRAR或7-Zip)打开并提取压缩包文件`ruby-2.1.0`。 3. **编译**:进入解压后的目录,使用`./...
编写第一个Ruby程序通常是从“Hello World”开始。 ```ruby puts "Hello, World!" ``` 这段代码将打印出“Hello, World!”到控制台。 通过上述介绍,我们对Ruby编程有了一个大致的了解。Ruby不仅易于学习,而且功能...
书中的第一章通常会介绍Ruby的基本语法,包括变量声明、数据类型(如整型、浮点型、字符串、布尔型、数组和哈希)以及控制结构(如条件语句if/else和循环for/while)。 接下来,书中的核心内容会深入到Ruby的面向...
2. **Ruby 1.9系列的改进**:Ruby 1.9.1是1.9系列的第一个稳定版本,引入了多项关键改进。例如,它引入了全新的Unicode字符串编码支持,提高了对不同字符集的处理能力;新的语法结构,如内联字符串插值(String ...
《Ruby程序设计(中文教程)》是一本专为中国读者编写的详细介绍Ruby编程语言的教程。该教程虽然在详细程度上可能略逊于经典的英文教材《Programming Ruby》,但其优势在于更加贴近中国读者的思维习惯,使得学习过程...
Ruby是一种高级、动态、面向对象的脚本语言,它的设计理念是强调代码的可读性和简洁性,使得开发者能够更高效地编写程序。Ruby由日本人松本行弘在1995年创建,它深受Perl、Smalltalk、Eiffel、Lisp和Python等语言的...
此外,还会介绍如何开始编写和运行第一个Ruby程序,以及推荐的集成开发环境(IDE)。 Ruby的语法快览部分将涵盖编程中的基础元素,如注释、分隔符、关键字、运算符、变量作用域、类库、数据类型、赋值语句和条件...
编写第一个Ruby程序 - **创建新项目**: - 打开RubyMine,选择新建项目。 - 指定项目名称和保存位置。 - 选择Ruby作为项目类型。 - **编写代码**: - 在项目中创建一个名为`hello.rb`的新文件。 - 编写以下...
编写第一个 Ruby 程序,通常都是从最简单的 “Hello, World!” 程序开始。创建一个名为 `hello.rb` 的文件,并输入以下代码: ```ruby puts 'Hello, World!' ``` 然后,在命令行中运行该文件: ```bash ruby hello....
#### 四、编写第一个Ruby程序:Hello, World! 1. **创建文件**:打开文本编辑器,新建一个文件,命名为`hello_world.rb`。 2. **编写代码**:在文件中输入以下代码: ```ruby puts "Hello, World!" ``` 3. **...
- Ruby有一个庞大的库系统,称为Gems,它提供了大量的第三方库和工具,方便开发者扩展功能。 总结来说,"ruby小程序2.rar"包含的两个文件可能是使用Ruby编写的脚本,它们可能实现了特定的功能或者逻辑。要了解这些...
Ruby-DataObjects是一个重要的Ruby库,它旨在提供一个统一的接口来访问各种不同的数据库系统,如MySQL、PostgreSQL、SQLite3等。这个项目的主要目标是让开发者能够在不改变代码的情况下,轻松地切换数据库后端,这极...
1. **文本预处理**:去除标点符号、数字和停用词,这是大多数NLP任务的第一步,因为这些元素通常不包含实质性的语义信息。 2. **词汇计数**:统计文本中每个单词出现的频率,这有助于识别文本的主题或关键词。 3. ...
1. **面向对象**:Ruby是纯面向对象的语言,每一个数据类型都是一个对象,包括基本类型如整数、字符串和布尔值。 2. **动态性**:Ruby支持动态类型,变量的类型在运行时决定,无需预先声明。 3. **强类型**:尽管是...
- **编写第一个 Ruby 程序**:使用文本编辑器创建一个 `.rb` 文件,编写简单的 “Hello, World!” 程序并运行。 - **集成开发环境 (IDE)**:推荐使用诸如 Visual Studio Code、Sublime Text 或 IntelliJ IDEA 等支持...