Ruby 最常用指令和函数(备忘查询)

安装

# Debian, Ubuntu
$ sudo apt-get install ruby-full
# Windows
$ winget install RubyInstallerTeam.Ruby 
$ brew install ruby # macOS
$ docker run -it --rm ruby:latest # Docker
$ docker run -it --rm ruby:2.7

使用包管理器安装 rbenv

$ brew install rbenv ruby-build # macOS
# Debian、ubuntu 和其他衍生产品
$ sudo apt install rbenv

使用 rbenv 安装 ruby

# 列出最新的稳定版本
$ rbenv install -l
# 列出所有本地版本
$ rbenv install -L
# 安装 Ruby 版本
$ rbenv install 3.1.2
$ rbenv global 3.1.2 # 为这台机器设置默认Ruby版本
# 或者
$ rbenv local 3.1.2 # 设置此目录的 Ruby 版本
$ rbenv local --unset
$ rbenv version # 显示当前活动的 Ruby 版本
=> 1.9.3-p327 (set by /Users/sam/.rbenv/version)

使用 RVM 安装 ruby

$ curl -sSL https://get.rvm.io | bash -s stable
$ rvm list          # Ruby 版本列表
$ rvm install 3.0.1 # 安装 3.0.1
$ rvm use 3.0.1     # 使用 3.0.1

如何安装 ruby gem 管理器, bundler gem

# 访问 bash 以执行以下命令
$ docker run -it --rm ruby:latest bash
$ gem install bundler
$ bundle -v
$ gem update bundler
$ gem uninstall bundler

什么是 Gemfile 和 Gemfile.lock

Gemfile 是 Bundler(也是 gem)的配置文件,其中包含项目的 gem 列表(依赖项)

# 在项目根目录的 Gemfile 中指定 gem
ruby '2.5.6'

source 'https://rubygems.org'
gem 'nokogiri'
gem 'rack', '~>1.1'
gem 'rspec', :require => 'spec'

安装 Gemfile 中的所有 gem

$ bundle install

安装特定 ruby gem 的特定版本

$ gem install bundler -v 1.17
$ gem install minitest -v 5.8.4

使用 Bundler 更新 gem

# 使用 Bundler 更新单个 gem
$ bundle update nokogiri
# 使用 Bundler 更新 Gemfile 中的每个 gem
$ bundle update

保留字

__ENCODING__

当前文件的脚本编码

__LINE__

当前文件中此关键字的行号

__FILE__

当前文件的路径

BEGIN

包含在 { } 中的代码在程序运行之前运行

END

包含在 { } 中以在程序结束时运行

alias

为现有方法、运算符、全局变量创建别名

and

逻辑与运算符

begin

开始一段代码

break

终止循环

case

将表达式与匹配的 when 子句进行比较,其中以 end 结束

定义一个类

def

定义函数/方法

defined?

检查某个变量、函数是否存在

do

开始一个代码块并执行块中的代码,以 end关键字结束

else

如果先前的条件不成立,则执行以下代码

elsif

if 表达式的替代条件

end

用于结束以 begin、class、def、do、if 等关键字开头的代码块

ensure

总是在块终止时执行

false

逻辑布尔假值

for

开始一个 for 循环

if

如果 if 的条件语句为 true,则执行代码块

in

与 for 循环一起使用

module

定义一个模块

next

跳转到循环条件评估之前的点

nil

为空或无效或始终为假

not

逻辑否定运算符

or

逻辑或运算符

redo

条件循环后跳转

rescue

在引发异常后评估表达式

retry

• 在救援之外调用时,重复方法调用• 在救援内部调用时,跳转到块顶部

return

从方法或代码块返回值

self

当前对象

super

调用超类中的同名方法

then

与 if、unless、when、case、rescue 一起使用的分隔符

true

逻辑布尔真

undef

使当前类中的方法/函数未定义

until

在条件语句为假时执行代码块

when

在 case 语句下开始一个子句

while

执行代码块,直到条件语句变为假

yield

执行传递给方法的代码块

注释

# 单行注释
=begin
多行
注释
=end
=begin 注释第 1 行 =end
puts "Hello world!"  # 代码的内联注释

运算符

逻辑运算符

  • and
  • or
  • not
  • &&
  • ||
  • !

位运算符

  • &
  • |
  • ^
  • ~
  • <<
  • >>

算术运算符

  • +
  • -
  • *
  • /
  • %
  • **

比较运算符

  • ==
  • !=
  • >
  • <
  • >=
  • <=
  • <=>
  • ===
  • eql?
  • equal?

运算符示例

# 添加
1 + 1   #=> 2
# 减法
2 - 1   #=> 1
# 乘法
2 * 2   #=> 4
# 分配
10 / 5  #=> 2
17 / 5    #=> 3, not 3.4
17 / 5.0  #=> 3.4
# 指数
2 ** 2  #=> 4
3 ** 4  #=> 81
# 模数(求除法的余数)
8 % 2   #=> 0  (8 / 2 = 4; 没有剩余)
10 % 4  #=> 2  (10 / 4 = 2 余数为 2)
a = 10
b = 20
a == b #=> false
a != b #=> true
a > b #=> false
a < b #=> true
a >= b #=> false
a <= b #=> true

# 比较运算符
a <=> b #=> -1
c = 20
c <=> b #=> 0
c <=> a  #=> 1
# 用于测试 case 语句的 when 子句中的相等性
(1...10) === 5 #=> true
# 如果接收者和参数具有相同的类型和相等的值,则为真
1.eql?(1.0) #=> false
c = a + b  #=> 30
c += a #=> 40
c -= a #=> 30
c *= a #=> 300
c /= a #=> 30
c %= a #=> 3
c **= a #=> 59049

# Ruby 并行赋值
a = 10
b = 20
c = 30
a, b, c = 10, 20, 30
# Ruby 位运算符
a = 60
b = 13
# & 如果两个操作数中都存在,则二进制 AND 运算符将位复制到结果中。
a & b #=> 12
# | 如果二进制或运算符存在于任一操作数中,则复制一个位。
a | b #=> 61
# ^ 二元异或操作符如果在一个操作数中设置,则复制该位,但不能同时在两个操作数中设置。
a ^ b #=> 49
# ~ 二进制补码运算符是一元的,具有“翻转”位的效果。
~a
# << 二进制左移运算符。 左操作数的值被移动
# 左操作数指定的位数。
a << 2
# >> 二进制右移运算符。 左操作数的值被移动
# 右操作数指定的位数。
a >> 2

# Ruby 逻辑运算符
a and b #=> true.
a or b #=> true.
a && b #=> true.
(a || b) #=> true.
!(a && b) #=> false.
not(a && b) #=> false.
# Ruby 三元运算符
# ? :
# 如果条件为真? 然后值 X :否则值 Y
a == 10 ? puts 'Right' : puts 'Wrong'
# Ruby 范围运算符
# .. 创建从起点到终点的范围(含)
1..10 #=> 创建从 1 到 10 的范围(包括 1 到 10)
# ... 创建一个从起点到终点的范围,不包括在内
1...10 #=> 创建一个从 1 到 10 的独占范围

运算符优先级表

  • !, ~, unary +
  • **
  • unary -
  • *, /, %
  • +, -
  • <<, >>
  • &
  • ^
  • >, >=, <, <=
  • <=>, ==, ===, !=, =~, !~
  • &&
  • ?, :
  • modifier-rescue
  • =, +=, -=, *=, /=, %=
  • defined
  • not
  • or, and
  • modifier-if, modifier-unless, modifier-while, modifier-until
  • { } 块
  • do ... end 块

变量和范围

[a-z] 或 _

本地的

count = 10 或 _count = 10

必须初始化局部变量

@

实例变量

@id = []

实例变量在初始化之前具有“nil”值

@@

类变量

@@name = []

必须初始化类变量

$

全局变量

$version = "0.8.9"

全局变量在初始化之前具有“nil”值

[A-Z]

持续的

PI = 3.14

常量变量必须初始化,您可以更改常量,但您会收到警告

有五种不同类型的变量。第一个字符确定范围

局部变量

current_weather = "rainy"
_weather = "sunny"

必须以下划线或小写字母开头

实例变量

# 实例类变量
@current_weather = "rainy"
# 全局变量
$current_weather = "rainy"
# 常量变量
WEATHER = "rainy".freeze

伪变量

self

当前方法的接收者对象

true

TrueClass 的实例

false

FalseClass 的实例

nil

NilClass 的实例

__FILE__

当前源文件名

__LINE__

当前源文件的当前行号

选项变量

$-0

$/ 的别名

$-a

如果设置了选项 -a,则为真。只读变量

$-d

$DEBUG 的别名

$-F

$; 的别名

$-i

在就地编辑模式下,此变量保存扩展,否则为零可以指定启用(或禁用)就地编辑模式

$-I

$: 的别名

$-l

如果选项 -lis 设置为真。只读变量

$-p

如果选项 -pi 设置为真。只读变量

$-v

$VERBOSE 的别名

预定义变量

$!

异常信息消息。raise 设置此变量

$@

最后一个异常的回溯,它是 String 的数组,指示调用方法的位置。格式中的元素如:“filename:line”或“filename:line:in `methodname'”(助记符:发生异常的地方)

与此范围内最后一次成功的模式匹配匹配的字符串,如果最后一次模式匹配失败,则返回 nil。 (助记符:在某些编辑器中类似于 &)这个变量是只读的

Ruby 最常用指令和函数(备忘查询)-*今条头日** {"@context":"https://schema.org","@type":"NewsArticle","mainEntityOfPage":{"@type":"WebPage","@id":"https://www.toutiao.com/article/7168631586974843399/"},"headline":"Ruby 最常用指令和函数(备忘查询)","description":"使用 rbenv 安装 ruby。如何安装 ruby gem 管理器, bundler gem。包含在 { } 中的代码在程序运行之前运行。","image":[],"datePublished":"2022-11-22T01:01:49.000Z","dateModified":"2024-01-02T02:09:05.000Z","author":{"@type":"Person","name":"Web3软件开发","url":"https://www.toutiao.com/c/user/token/MS4wLjABAAAAdfVpTeVPCYdG7S2OB-B_OBqsBdYchGkRwQLoLwi6a7AdPmp0ilaHf4rO_gkbjlpC/"},"publisher":{"@type":"Organization","name":"*今条头日**","logo":{"@type":"ImageObject","url":"https://lf3-static.bytednsdoc.com/obj/eden-cn/uhbfnupkbps/216.png"}}} !function(r,e,t,n,s,a,o,i,c,l,d,p,m,f){a="precollect",o="getAttribute",i="addEventListener",(l=function(e){(d=[].slice.call(arguments)).push(Date.now(),location.href),(e==a?l.p.a:l.q).push(d)}).q=[],l.p={a:[]},r[s]=l,(p=document.createElement("script")).src=t+"?bid=toutiao_web_pc&globalName="+s,p.crossOrigin=0 window.Slardar&&window.Slardar("init",{bid:"toutiao_web_pc",pid:"news_article_detail",release:"1.0.0.1974",env:"online",sample:{sample_rate:1},plugins:{ajax:{ignoreUrls:["mcs.snssdk.com","mcs.zijieapi.com","i.snssdk.com","verify.snssdk.com","vcs.snssdk.com","mon.zijieapi.com","mon.snssdk.com"]},pageview:{routeMode:"manual"},blankScreen:{rootSelector:"#root"}}}) !function(n,t){if(n.LogAnalyticsObject=t,!n[t]){function c(){c.q.push(arguments)}c.q=c.q||[],n[t]=c}n[t].l=+new Date}(window,"collectEvent") window.collectEvent("usePlugin","autotrack"),window.collectEvent("usePlugin","stay"),window.collectEvent("init",{app_id:24,channel:"cn",autotrack:{custom:"tea",text:!0},enable_stay_duration:!0}),window.collectEvent("config",{evtParams:{url:window.location.href,screen_width:window.screen.width,screen_height:window.screen.height,screen_inner_width:window.innerWidth,screen_inner_height:window.innerHeight}}) window.byted_acrawler&&window.byted_acrawler.init({aid:24,dfp:!0}) window.TTGCaptcha&&window.TTGCaptcha.init({commonOptions:{aid:24,iid:"0",did:"0"}}) window.secsdk&&window.secsdk.csrf.setProtectedHost({"www.toutiao.com":{GET:[],POST:[/^\/api\/pc\/user\/fans_digg/,/^\/api\/pc\/user\/delete/,/^\/api\/pc\/user\/follow/,/^\/c\/ugc\/content\/repost/,/^\/group\/repin/,/^\/group\/unrepin/,/^\/api\/pc\/user\/stick/,/^\/api\/pc\/user\/unstick/,/^\/c\/user\/unfollow/,/^\/wenda\/v5\/interact\/followanswer/,/^\/wenda\/v5\/interact\/followquestion/,/^\/wenda\/v5\/interact\/digganswer/,/^\/wenda\/v5\/interact\/deleteanswer/,/^\/user_data\/batch_action/,/^\/action\/api\/v1\/do_action/],PUT:[],PATCH:[],DELETE:[]}}) "undefined"!=typeof window&&"serviceWorker"in navigator&&window.addEventListener("load",function(){navigator.serviceWorker.register("/sw.js").catch(function(e){window.Slardar&&window.Slardar("emit","counter",{name:"sw-register-error",value:1})})}) function gtag(){dataLayer.push(arguments)}window.dataLayer=window.dataLayer||[],gtag("js",new Date),gtag("config","G-QEHZPBE5HH") %7B%22data%22%3A%7B%22title%22%3A%22Ruby%20%E6%9C%80%E5%B8%B8%E7%94%A8%E6%8C%87%E4%BB%A4%E5%92%8C%E5%87%BD%E6%95%B0%EF%BC%88%E5%A4%87%E5%BF%98%E6%9F%A5%E8%AF%A2%EF%BC%89%22%2C%22abstract%22%3A%22%E4%BD%BF%E7%94%A8%20rbenv%20%E5%AE%89%E8%A3%85%20ruby%E3%80%82%E5%A6%82%E4%BD%95%E5%AE%89%E8%A3%85%20ruby%20gem%20%E7%AE%A1%E7%90%86%E5%99%A8%EF%BC%8C%20bundler%20gem%E3%80%82%E5%8C%85%E5%90%AB%E5%9C%A8%20%7B%20%7D%20%E4%B8%AD%E7%9A%84%E4%BB%A3%E7%A0%81%E5%9C%A8%E7%A8%8B%E5%BA%8F%E8%BF%90%E8%A1%8C%E4%B9%8B%E5%89%8D%E8%BF%90%E8%A1%8C%E3%80%82%22%2C%22articleType%22%3A%22article%22%2C%22itemId%22%3A%227168631586974843399%22%2C%22groupId%22%3A%227168631586974843399%22%2C%22groupSource%22%3A2%2C%22isOriginal%22%3Afalse%2C%22banComment%22%3Afalse%2C%22publishTime%22%3A%222022-11-22%2009%3A01%22%2C%22source%22%3A%22Web3%E8%BD%AF%E4%BB%B6%E5%BC%80%E5%8F%91%22%2C%22tag%22%3A%22technique%22%2C%22mediaSite%22%3Anull%2C%22pathname%22%3A%22%2Farticle%2F7168631586974843399%2F%22%2C%22useCandle%22%3Afalse%2C%22isExclusive%22%3Afalse%2C%22favorite%22%3Afalse%2C%22relation%22%3A%7B%22isFollowing%22%3Afalse%2C%22isFollowed%22%3Afalse%7D%2C%22likeData%22%3A%7B%22userLikeStatus%22%3A0%2C%22count%22%3A1%7D%2C%22isSelf%22%3Afalse%2C%22content%22%3A%22%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%221%5C%22%3E%E5%AE%89%E8%A3%85%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E%23%20Debian%2C%20Ubuntu%5Cn%24%20sudo%20apt-get%20install%20ruby-full%5Cn%23%20Windows%5Cn%24%20winget%20install%20RubyInstallerTeam.Ruby%20%5Cn%24%20brew%20install%20ruby%20%23%20macOS%5Cn%24%20docker%20run%20-it%20--rm%20ruby%3Alatest%20%23%20Docker%5Cn%24%20docker%20run%20-it%20--rm%20ruby%3A2.7%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%224%5C%22%3E%E4%BD%BF%E7%94%A8%E5%8C%85%E7%AE%A1%E7%90%86%E5%99%A8%E5%AE%89%E8%A3%85%20rbenv%3C%2Fp%3E%3Cpre%3E%3Ccode%3E%24%20brew%20install%20rbenv%20ruby-build%20%23%20macOS%5Cn%23%20Debian%E3%80%81ubuntu%20%E5%92%8C%E5%85%B6%E4%BB%96%E8%A1%8D%E7%94%9F%E4%BA%A7%E5%93%81%5Cn%24%20sudo%20apt%20install%20rbenv%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%226%5C%22%3E%E4%BD%BF%E7%94%A8%20rbenv%20%E5%AE%89%E8%A3%85%20ruby%3C%2Fp%3E%3Cpre%3E%3Ccode%3E%23%20%E5%88%97%E5%87%BA%E6%9C%80%E6%96%B0%E7%9A%84%E7%A8%B3%E5%AE%9A%E7%89%88%E6%9C%AC%5Cn%24%20rbenv%20install%20-l%5Cn%23%20%E5%88%97%E5%87%BA%E6%89%80%E6%9C%89%E6%9C%AC%E5%9C%B0%E7%89%88%E6%9C%AC%5Cn%24%20rbenv%20install%20-L%5Cn%23%20%E5%AE%89%E8%A3%85%20Ruby%20%E7%89%88%E6%9C%AC%5Cn%24%20rbenv%20install%203.1.2%5Cn%24%20rbenv%20global%203.1.2%20%23%20%E4%B8%BA%E8%BF%99%E5%8F%B0%E6%9C%BA%E5%99%A8%E8%AE%BE%E7%BD%AE%E9%BB%98%E8%AE%A4Ruby%E7%89%88%E6%9C%AC%5Cn%23%20%E6%88%96%E8%80%85%5Cn%24%20rbenv%20local%203.1.2%20%23%20%E8%AE%BE%E7%BD%AE%E6%AD%A4%E7%9B%AE%E5%BD%95%E7%9A%84%20Ruby%20%E7%89%88%E6%9C%AC%5Cn%24%20rbenv%20local%20--unset%5Cn%24%20rbenv%20version%20%23%20%E6%98%BE%E7%A4%BA%E5%BD%93%E5%89%8D%E6%B4%BB%E5%8A%A8%E7%9A%84%20Ruby%20%E7%89%88%E6%9C%AC%5Cn%3D%26gt%3B%201.9.3-p327%20(set%20by%20%2FUsers%2Fsam%2F.rbenv%2Fversion)%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%228%5C%22%3E%E4%BD%BF%E7%94%A8%20RVM%20%E5%AE%89%E8%A3%85%20ruby%3C%2Fp%3E%3Cpre%3E%3Ccode%3E%24%20curl%20-sSL%20https%3A%2F%2Fget.rvm.io%20%7C%20bash%20-s%20stable%5Cn%24%20rvm%20list%20%20%20%20%20%20%20%20%20%20%23%20Ruby%20%E7%89%88%E6%9C%AC%E5%88%97%E8%A1%A8%5Cn%24%20rvm%20install%203.0.1%20%23%20%E5%AE%89%E8%A3%85%203.0.1%5Cn%24%20rvm%20use%203.0.1%20%20%20%20%20%23%20%E4%BD%BF%E7%94%A8%203.0.1%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%2210%5C%22%3E%E5%A6%82%E4%BD%95%E5%AE%89%E8%A3%85%20ruby%20gem%20%E7%AE%A1%E7%90%86%E5%99%A8%2C%20bundler%20gem%3C%2Fp%3E%3Cpre%3E%3Ccode%3E%23%20%E8%AE%BF%E9%97%AE%20bash%20%E4%BB%A5%E6%89%A7%E8%A1%8C%E4%BB%A5%E4%B8%8B%E5%91%BD%E4%BB%A4%5Cn%24%20docker%20run%20-it%20--rm%20ruby%3Alatest%20bash%5Cn%24%20gem%20install%20bundler%5Cn%24%20bundle%20-v%5Cn%24%20gem%20update%20bundler%5Cn%24%20gem%20uninstall%20bundler%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%2212%5C%22%3E%E4%BB%80%E4%B9%88%E6%98%AF%20Gemfile%20%E5%92%8C%20Gemfile.lock%3C%2Fh1%3E%3Cp%20data-track%3D%5C%2213%5C%22%3EGemfile%20%E6%98%AF%20Bundler(%E4%B9%9F%E6%98%AF%20gem)%E7%9A%84%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6%EF%BC%8C%E5%85%B6%E4%B8%AD%E5%8C%85%E5%90%AB%E9%A1%B9%E7%9B%AE%E7%9A%84%20gem%20%E5%88%97%E8%A1%A8(%E4%BE%9D%E8%B5%96%E9%A1%B9)%3C%2Fp%3E%3Cpre%3E%3Ccode%3E%23%20%E5%9C%A8%E9%A1%B9%E7%9B%AE%E6%A0%B9%E7%9B%AE%E5%BD%95%E7%9A%84%20Gemfile%20%E4%B8%AD%E6%8C%87%E5%AE%9A%20gem%5Cnruby%20%26%2339%3B2.5.6%26%2339%3B%5Cn%5Cnsource%20%26%2339%3Bhttps%3A%2F%2Frubygems.org%26%2339%3B%5Cngem%20%26%2339%3Bnokogiri%26%2339%3B%5Cngem%20%26%2339%3Brack%26%2339%3B%2C%20%26%2339%3B~%26gt%3B1.1%26%2339%3B%5Cngem%20%26%2339%3Brspec%26%2339%3B%2C%20%3Arequire%20%3D%26gt%3B%20%26%2339%3Bspec%26%2339%3B%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%2215%5C%22%3E%E5%AE%89%E8%A3%85%20Gemfile%20%E4%B8%AD%E7%9A%84%E6%89%80%E6%9C%89%20gem%3C%2Fp%3E%3Cpre%3E%3Ccode%3E%24%20bundle%20install%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%2217%5C%22%3E%E5%AE%89%E8%A3%85%E7%89%B9%E5%AE%9A%20ruby%20gem%20%E7%9A%84%E7%89%B9%E5%AE%9A%E7%89%88%E6%9C%AC%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E%24%20gem%20install%20bundler%20-v%201.17%5Cn%24%20gem%20install%20minitest%20-v%205.8.4%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%2219%5C%22%3E%E4%BD%BF%E7%94%A8%20Bundler%20%E6%9B%B4%E6%96%B0%20gem%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E%23%20%E4%BD%BF%E7%94%A8%20Bundler%20%E6%9B%B4%E6%96%B0%E5%8D%95%E4%B8%AA%20gem%5Cn%24%20bundle%20update%20nokogiri%5Cn%23%20%E4%BD%BF%E7%94%A8%20Bundler%20%E6%9B%B4%E6%96%B0%20Gemfile%20%E4%B8%AD%E7%9A%84%E6%AF%8F%E4%B8%AA%20gem%5Cn%24%20bundle%20update%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%2221%5C%22%3E%E4%BF%9D%E7%95%99%E5%AD%97%3C%2Fh1%3E%3Cdiv%20class%3D%5C%22tableWrapper%5C%22%3E%3Ctable%20style%3D%5C%22min-width%3A%20112px%3B%5C%22%3E%3Ccolgroup%3E%3Ccol%3E%3Ccol%3E%3C%2Fcolgroup%3E%3Ctbody%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2222%5C%22%3E__ENCODING__%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2223%5C%22%3E%E5%BD%93%E5%89%8D%E6%96%87%E4%BB%B6%E7%9A%84%E8%84%9A%E6%9C%AC%E7%BC%96%E7%A0%81%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2224%5C%22%3E__LINE__%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2225%5C%22%3E%E5%BD%93%E5%89%8D%E6%96%87%E4%BB%B6%E4%B8%AD%E6%AD%A4%E5%85%B3%E9%94%AE%E5%AD%97%E7%9A%84%E8%A1%8C%E5%8F%B7%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2226%5C%22%3E__FILE__%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2227%5C%22%3E%E5%BD%93%E5%89%8D%E6%96%87%E4%BB%B6%E7%9A%84%E8%B7%AF%E5%BE%84%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2228%5C%22%3EBEGIN%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2229%5C%22%3E%E5%8C%85%E5%90%AB%E5%9C%A8%20%7B%20%7D%20%E4%B8%AD%E7%9A%84%E4%BB%A3%E7%A0%81%E5%9C%A8%E7%A8%8B%E5%BA%8F%E8%BF%90%E8%A1%8C%E4%B9%8B%E5%89%8D%E8%BF%90%E8%A1%8C%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2230%5C%22%3EEND%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2231%5C%22%3E%E5%8C%85%E5%90%AB%E5%9C%A8%20%7B%20%7D%20%E4%B8%AD%E4%BB%A5%E5%9C%A8%E7%A8%8B%E5%BA%8F%E7%BB%93%E6%9D%9F%E6%97%B6%E8%BF%90%E8%A1%8C%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2232%5C%22%3Ealias%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2233%5C%22%3E%E4%B8%BA%E7%8E%B0%E6%9C%89%E6%96%B9%E6%B3%95%E3%80%81%E8%BF%90%E7%AE%97%E7%AC%A6%E3%80%81%E5%85%A8%E5%B1%80%E5%8F%98%E9%87%8F%E5%88%9B%E5%BB%BA%E5%88%AB%E5%90%8D%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2234%5C%22%3Eand%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2235%5C%22%3E%E9%80%BB%E8%BE%91%E4%B8%8E%E8%BF%90%E7%AE%97%E7%AC%A6%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2236%5C%22%3Ebegin%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2237%5C%22%3E%E5%BC%80%E5%A7%8B%E4%B8%80%E6%AE%B5%E4%BB%A3%E7%A0%81%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2238%5C%22%3Ebreak%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2239%5C%22%3E%E7%BB%88%E6%AD%A2%E5%BE%AA%E7%8E%AF%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2240%5C%22%3Ecase%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2241%5C%22%3E%E5%B0%86%E8%A1%A8%E8%BE%BE%E5%BC%8F%E4%B8%8E%E5%8C%B9%E9%85%8D%E7%9A%84%20when%20%E5%AD%90%E5%8F%A5%E8%BF%9B%E8%A1%8C%E6%AF%94%E8%BE%83%EF%BC%8C%E5%85%B6%E4%B8%AD%3Cbr%3E%E4%BB%A5%20end%20%E7%BB%93%E6%9D%9F%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2242%5C%22%3Eclass%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2243%5C%22%3E%E5%AE%9A%E4%B9%89%E4%B8%80%E4%B8%AA%E7%B1%BB%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2244%5C%22%3Edef%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2245%5C%22%3E%E5%AE%9A%E4%B9%89%E5%87%BD%E6%95%B0%2F%E6%96%B9%E6%B3%95%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2246%5C%22%3Edefined%3F%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2247%5C%22%3E%E6%A3%80%E6%9F%A5%E6%9F%90%E4%B8%AA%E5%8F%98%E9%87%8F%E3%80%81%E5%87%BD%E6%95%B0%E6%98%AF%E5%90%A6%E5%AD%98%E5%9C%A8%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2248%5C%22%3Edo%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2249%5C%22%3E%E5%BC%80%E5%A7%8B%E4%B8%80%E4%B8%AA%E4%BB%A3%E7%A0%81%E5%9D%97%E5%B9%B6%E6%89%A7%E8%A1%8C%E5%9D%97%E4%B8%AD%E7%9A%84%E4%BB%A3%E7%A0%81%EF%BC%8C%E4%BB%A5%3Cbr%3E%3Cstrong%3Eend%E5%85%B3%E9%94%AE%E5%AD%97%3C%2Fstrong%3E%E7%BB%93%E6%9D%9F%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2250%5C%22%3Eelse%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2251%5C%22%3E%E5%A6%82%E6%9E%9C%E5%85%88%E5%89%8D%E7%9A%84%E6%9D%A1%E4%BB%B6%E4%B8%8D%E6%88%90%E7%AB%8B%EF%BC%8C%E5%88%99%E6%89%A7%E8%A1%8C%E4%BB%A5%E4%B8%8B%E4%BB%A3%E7%A0%81%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2252%5C%22%3Eelsif%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2253%5C%22%3Eif%20%E8%A1%A8%E8%BE%BE%E5%BC%8F%E7%9A%84%E6%9B%BF%E4%BB%A3%E6%9D%A1%E4%BB%B6%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2254%5C%22%3Eend%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2255%5C%22%3E%E7%94%A8%E4%BA%8E%E7%BB%93%E6%9D%9F%E4%BB%A5%20begin%E3%80%81class%E3%80%81def%E3%80%81do%E3%80%81if%20%E7%AD%89%E5%85%B3%E9%94%AE%E5%AD%97%E5%BC%80%E5%A4%B4%E7%9A%84%E4%BB%A3%E7%A0%81%E5%9D%97%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2256%5C%22%3Eensure%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2257%5C%22%3E%E6%80%BB%E6%98%AF%E5%9C%A8%E5%9D%97%E7%BB%88%E6%AD%A2%E6%97%B6%E6%89%A7%E8%A1%8C%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2258%5C%22%3Efalse%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2259%5C%22%3E%E9%80%BB%E8%BE%91%E5%B8%83%E5%B0%94%E5%81%87%E5%80%BC%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2260%5C%22%3Efor%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2261%5C%22%3E%E5%BC%80%E5%A7%8B%E4%B8%80%E4%B8%AA%20for%20%E5%BE%AA%E7%8E%AF%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2262%5C%22%3Eif%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2263%5C%22%3E%E5%A6%82%E6%9E%9C%20if%20%E7%9A%84%E6%9D%A1%E4%BB%B6%E8%AF%AD%E5%8F%A5%E4%B8%BA%20true%EF%BC%8C%E5%88%99%E6%89%A7%E8%A1%8C%E4%BB%A3%E7%A0%81%E5%9D%97%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2264%5C%22%3Ein%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2265%5C%22%3E%E4%B8%8E%20for%20%E5%BE%AA%E7%8E%AF%E4%B8%80%E8%B5%B7%E4%BD%BF%E7%94%A8%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2266%5C%22%3Emodule%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2267%5C%22%3E%E5%AE%9A%E4%B9%89%E4%B8%80%E4%B8%AA%E6%A8%A1%E5%9D%97%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2268%5C%22%3Enext%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2269%5C%22%3E%E8%B7%B3%E8%BD%AC%E5%88%B0%E5%BE%AA%E7%8E%AF%E6%9D%A1%E4%BB%B6%E8%AF%84%E4%BC%B0%E4%B9%8B%E5%89%8D%E7%9A%84%E7%82%B9%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2270%5C%22%3Enil%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2271%5C%22%3E%E4%B8%BA%E7%A9%BA%E6%88%96%E6%97%A0%E6%95%88%E6%88%96%E5%A7%8B%E7%BB%88%E4%B8%BA%E5%81%87%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2272%5C%22%3Enot%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2273%5C%22%3E%E9%80%BB%E8%BE%91%E5%90%A6%E5%AE%9A%E8%BF%90%E7%AE%97%E7%AC%A6%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2274%5C%22%3Eor%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2275%5C%22%3E%E9%80%BB%E8%BE%91%E6%88%96%E8%BF%90%E7%AE%97%E7%AC%A6%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2276%5C%22%3Eredo%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2277%5C%22%3E%E6%9D%A1%E4%BB%B6%E5%BE%AA%E7%8E%AF%E5%90%8E%E8%B7%B3%E8%BD%AC%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2278%5C%22%3Erescue%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2279%5C%22%3E%E5%9C%A8%E5%BC%95%E5%8F%91%E5%BC%82%E5%B8%B8%E5%90%8E%E8%AF%84%E4%BC%B0%E8%A1%A8%E8%BE%BE%E5%BC%8F%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2280%5C%22%3Eretry%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2281%5C%22%3E%E2%80%A2%20%E5%9C%A8%E6%95%91%E6%8F%B4%E4%B9%8B%E5%A4%96%E8%B0%83%E7%94%A8%E6%97%B6%EF%BC%8C%E9%87%8D%E5%A4%8D%E6%96%B9%E6%B3%95%E8%B0%83%E7%94%A8%3Cbr%3E%E2%80%A2%20%E5%9C%A8%E6%95%91%E6%8F%B4%E5%86%85%E9%83%A8%E8%B0%83%E7%94%A8%E6%97%B6%EF%BC%8C%E8%B7%B3%E8%BD%AC%E5%88%B0%E5%9D%97%E9%A1%B6%E9%83%A8%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2282%5C%22%3Ereturn%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2283%5C%22%3E%E4%BB%8E%E6%96%B9%E6%B3%95%E6%88%96%E4%BB%A3%E7%A0%81%E5%9D%97%E8%BF%94%E5%9B%9E%E5%80%BC%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2284%5C%22%3Eself%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2285%5C%22%3E%E5%BD%93%E5%89%8D%E5%AF%B9%E8%B1%A1%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2286%5C%22%3Esuper%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2287%5C%22%3E%E8%B0%83%E7%94%A8%E8%B6%85%E7%B1%BB%E4%B8%AD%E7%9A%84%E5%90%8C%E5%90%8D%E6%96%B9%E6%B3%95%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2288%5C%22%3Ethen%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2289%5C%22%3E%E4%B8%8E%20if%E3%80%81unless%E3%80%81when%E3%80%81case%E3%80%81rescue%20%E4%B8%80%E8%B5%B7%E4%BD%BF%E7%94%A8%E7%9A%84%E5%88%86%E9%9A%94%E7%AC%A6%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2290%5C%22%3Etrue%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2291%5C%22%3E%E9%80%BB%E8%BE%91%E5%B8%83%E5%B0%94%E7%9C%9F%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2292%5C%22%3Eundef%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2293%5C%22%3E%E4%BD%BF%E5%BD%93%E5%89%8D%E7%B1%BB%E4%B8%AD%E7%9A%84%E6%96%B9%E6%B3%95%2F%E5%87%BD%E6%95%B0%E6%9C%AA%E5%AE%9A%E4%B9%89%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2294%5C%22%3Euntil%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2295%5C%22%3E%E5%9C%A8%E6%9D%A1%E4%BB%B6%E8%AF%AD%E5%8F%A5%E4%B8%BA%E5%81%87%E6%97%B6%E6%89%A7%E8%A1%8C%E4%BB%A3%E7%A0%81%E5%9D%97%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2296%5C%22%3Ewhen%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2297%5C%22%3E%E5%9C%A8%20case%20%E8%AF%AD%E5%8F%A5%E4%B8%8B%E5%BC%80%E5%A7%8B%E4%B8%80%E4%B8%AA%E5%AD%90%E5%8F%A5%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2298%5C%22%3Ewhile%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%2299%5C%22%3E%E6%89%A7%E8%A1%8C%E4%BB%A3%E7%A0%81%E5%9D%97%EF%BC%8C%E7%9B%B4%E5%88%B0%E6%9D%A1%E4%BB%B6%E8%AF%AD%E5%8F%A5%E5%8F%98%E4%B8%BA%E5%81%87%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22100%5C%22%3Eyield%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22101%5C%22%3E%E6%89%A7%E8%A1%8C%E4%BC%A0%E9%80%92%E7%BB%99%E6%96%B9%E6%B3%95%E7%9A%84%E4%BB%A3%E7%A0%81%E5%9D%97%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3C%2Ftbody%3E%3C%2Ftable%3E%3C%2Fdiv%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22102%5C%22%3E%E6%B3%A8%E9%87%8A%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E%23%20%E5%8D%95%E8%A1%8C%E6%B3%A8%E9%87%8A%5Cn%3Dbegin%5Cn%E5%A4%9A%E8%A1%8C%5Cn%E6%B3%A8%E9%87%8A%5Cn%3Dend%5Cn%3Dbegin%20%E6%B3%A8%E9%87%8A%E7%AC%AC%201%20%E8%A1%8C%20%3Dend%5Cnputs%20%26%2334%3BHello%20world!%26%2334%3B%20%20%23%20%E4%BB%A3%E7%A0%81%E7%9A%84%E5%86%85%E8%81%94%E6%B3%A8%E9%87%8A%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22104%5C%22%3E%E8%BF%90%E7%AE%97%E7%AC%A6%3C%2Fh1%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22105%5C%22%3E%E9%80%BB%E8%BE%91%E8%BF%90%E7%AE%97%E7%AC%A6%3C%2Fh1%3E%3Cul%3E%3Cli%20data-track%3D%5C%22106%5C%22%3Eand%3C%2Fli%3E%3Cli%20data-track%3D%5C%22107%5C%22%3Eor%3C%2Fli%3E%3Cli%20data-track%3D%5C%22108%5C%22%3Enot%3C%2Fli%3E%3Cli%20data-track%3D%5C%22109%5C%22%3E%26%26%3C%2Fli%3E%3Cli%20data-track%3D%5C%22110%5C%22%3E%7C%7C%3C%2Fli%3E%3Cli%20data-track%3D%5C%22111%5C%22%3E!%3C%2Fli%3E%3C%2Ful%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22112%5C%22%3E%E4%BD%8D%E8%BF%90%E7%AE%97%E7%AC%A6%3C%2Fh1%3E%3Cul%3E%3Cli%20data-track%3D%5C%22113%5C%22%3E%26%3C%2Fli%3E%3Cli%20data-track%3D%5C%22114%5C%22%3E%7C%3C%2Fli%3E%3Cli%20data-track%3D%5C%22115%5C%22%3E%5E%3C%2Fli%3E%3Cli%20data-track%3D%5C%22116%5C%22%3E~%3C%2Fli%3E%3Cli%20data-track%3D%5C%22117%5C%22%3E%26lt%3B%26lt%3B%3C%2Fli%3E%3Cli%20data-track%3D%5C%22118%5C%22%3E%26gt%3B%26gt%3B%3C%2Fli%3E%3C%2Ful%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22119%5C%22%3E%E7%AE%97%E6%9C%AF%E8%BF%90%E7%AE%97%E7%AC%A6%3C%2Fh1%3E%3Cul%3E%3Cli%20data-track%3D%5C%22120%5C%22%3E%2B%3C%2Fli%3E%3Cli%20data-track%3D%5C%22121%5C%22%3E-%3C%2Fli%3E%3Cli%20data-track%3D%5C%22122%5C%22%3E*%3C%2Fli%3E%3Cli%20data-track%3D%5C%22123%5C%22%3E%2F%3C%2Fli%3E%3Cli%20data-track%3D%5C%22124%5C%22%3E%25%3C%2Fli%3E%3Cli%20data-track%3D%5C%22125%5C%22%3E**%3C%2Fli%3E%3C%2Ful%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22126%5C%22%3E%E6%AF%94%E8%BE%83%E8%BF%90%E7%AE%97%E7%AC%A6%3C%2Fh1%3E%3Cul%3E%3Cli%20data-track%3D%5C%22127%5C%22%3E%3D%3D%3C%2Fli%3E%3Cli%20data-track%3D%5C%22128%5C%22%3E!%3D%3C%2Fli%3E%3Cli%20data-track%3D%5C%22129%5C%22%3E%26gt%3B%3C%2Fli%3E%3Cli%20data-track%3D%5C%22130%5C%22%3E%26lt%3B%3C%2Fli%3E%3Cli%20data-track%3D%5C%22131%5C%22%3E%26gt%3B%3D%3C%2Fli%3E%3Cli%20data-track%3D%5C%22132%5C%22%3E%26lt%3B%3D%3C%2Fli%3E%3Cli%20data-track%3D%5C%22133%5C%22%3E%26lt%3B%3D%26gt%3B%3C%2Fli%3E%3Cli%20data-track%3D%5C%22134%5C%22%3E%3D%3D%3D%3C%2Fli%3E%3Cli%20data-track%3D%5C%22135%5C%22%3Eeql%3F%3C%2Fli%3E%3Cli%20data-track%3D%5C%22136%5C%22%3Eequal%3F%3C%2Fli%3E%3C%2Ful%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22137%5C%22%3E%E8%BF%90%E7%AE%97%E7%AC%A6%E7%A4%BA%E4%BE%8B%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E%23%20%E6%B7%BB%E5%8A%A0%5Cn1%20%2B%201%20%20%20%23%3D%26gt%3B%202%5Cn%23%20%E5%87%8F%E6%B3%95%5Cn2%20-%201%20%20%20%23%3D%26gt%3B%201%5Cn%23%20%E4%B9%98%E6%B3%95%5Cn2%20*%202%20%20%20%23%3D%26gt%3B%204%5Cn%23%20%E5%88%86%E9%85%8D%5Cn10%20%2F%205%20%20%23%3D%26gt%3B%202%5Cn17%20%2F%205%20%20%20%20%23%3D%26gt%3B%203%2C%20not%203.4%5Cn17%20%2F%205.0%20%20%23%3D%26gt%3B%203.4%5Cn%23%20%E6%8C%87%E6%95%B0%5Cn2%20**%202%20%20%23%3D%26gt%3B%204%5Cn3%20**%204%20%20%23%3D%26gt%3B%2081%5Cn%23%20%E6%A8%A1%E6%95%B0(%E6%B1%82%E9%99%A4%E6%B3%95%E7%9A%84%E4%BD%99%E6%95%B0)%5Cn8%20%25%202%20%20%20%23%3D%26gt%3B%200%20%20(8%20%2F%202%20%3D%204%3B%20%E6%B2%A1%E6%9C%89%E5%89%A9%E4%BD%99)%5Cn10%20%25%204%20%20%23%3D%26gt%3B%202%20%20(10%20%2F%204%20%3D%202%20%E4%BD%99%E6%95%B0%E4%B8%BA%202)%5Cna%20%3D%2010%5Cnb%20%3D%2020%5Cna%20%3D%3D%20b%20%23%3D%26gt%3B%20false%5Cna%20!%3D%20b%20%23%3D%26gt%3B%20true%5Cna%20%26gt%3B%20b%20%23%3D%26gt%3B%20false%5Cna%20%26lt%3B%20b%20%23%3D%26gt%3B%20true%5Cna%20%26gt%3B%3D%20b%20%23%3D%26gt%3B%20false%5Cna%20%26lt%3B%3D%20b%20%23%3D%26gt%3B%20true%5Cn%5Cn%23%20%E6%AF%94%E8%BE%83%E8%BF%90%E7%AE%97%E7%AC%A6%5Cna%20%26lt%3B%3D%26gt%3B%20b%20%23%3D%26gt%3B%20-1%5Cnc%20%3D%2020%5Cnc%20%26lt%3B%3D%26gt%3B%20b%20%23%3D%26gt%3B%200%5Cnc%20%26lt%3B%3D%26gt%3B%20a%20%20%23%3D%26gt%3B%201%5Cn%23%20%E7%94%A8%E4%BA%8E%E6%B5%8B%E8%AF%95%20case%20%E8%AF%AD%E5%8F%A5%E7%9A%84%20when%20%E5%AD%90%E5%8F%A5%E4%B8%AD%E7%9A%84%E7%9B%B8%E7%AD%89%E6%80%A7%5Cn(1...10)%20%3D%3D%3D%205%20%23%3D%26gt%3B%20true%5Cn%23%20%E5%A6%82%E6%9E%9C%E6%8E%A5%E6%94%B6%E8%80%85%E5%92%8C%E5%8F%82%E6%95%B0%E5%85%B7%E6%9C%89%E7%9B%B8%E5%90%8C%E7%9A%84%E7%B1%BB%E5%9E%8B%E5%92%8C%E7%9B%B8%E7%AD%89%E7%9A%84%E5%80%BC%EF%BC%8C%E5%88%99%E4%B8%BA%E7%9C%9F%5Cn1.eql%3F(1.0)%20%23%3D%26gt%3B%20false%5Cnc%20%3D%20a%20%2B%20b%20%20%23%3D%26gt%3B%2030%5Cnc%20%2B%3D%20a%20%23%3D%26gt%3B%2040%5Cnc%20-%3D%20a%20%23%3D%26gt%3B%2030%5Cnc%20*%3D%20a%20%23%3D%26gt%3B%20300%5Cnc%20%2F%3D%20a%20%23%3D%26gt%3B%2030%5Cnc%20%25%3D%20a%20%23%3D%26gt%3B%203%5Cnc%20**%3D%20a%20%23%3D%26gt%3B%2059049%5Cn%5Cn%23%20Ruby%20%E5%B9%B6%E8%A1%8C%E8%B5%8B%E5%80%BC%5Cna%20%3D%2010%5Cnb%20%3D%2020%5Cnc%20%3D%2030%5Cna%2C%20b%2C%20c%20%3D%2010%2C%2020%2C%2030%5Cn%23%20Ruby%20%E4%BD%8D%E8%BF%90%E7%AE%97%E7%AC%A6%5Cna%20%3D%2060%5Cnb%20%3D%2013%5Cn%23%20%26%20%E5%A6%82%E6%9E%9C%E4%B8%A4%E4%B8%AA%E6%93%8D%E4%BD%9C%E6%95%B0%E4%B8%AD%E9%83%BD%E5%AD%98%E5%9C%A8%EF%BC%8C%E5%88%99%E4%BA%8C%E8%BF%9B%E5%88%B6%20AND%20%E8%BF%90%E7%AE%97%E7%AC%A6%E5%B0%86%E4%BD%8D%E5%A4%8D%E5%88%B6%E5%88%B0%E7%BB%93%E6%9E%9C%E4%B8%AD%E3%80%82%5Cna%20%26%20b%20%23%3D%26gt%3B%2012%5Cn%23%20%7C%20%E5%A6%82%E6%9E%9C%E4%BA%8C%E8%BF%9B%E5%88%B6%E6%88%96%E8%BF%90%E7%AE%97%E7%AC%A6%E5%AD%98%E5%9C%A8%E4%BA%8E%E4%BB%BB%E4%B8%80%E6%93%8D%E4%BD%9C%E6%95%B0%E4%B8%AD%EF%BC%8C%E5%88%99%E5%A4%8D%E5%88%B6%E4%B8%80%E4%B8%AA%E4%BD%8D%E3%80%82%5Cna%20%7C%20b%20%23%3D%26gt%3B%2061%5Cn%23%20%5E%20%E4%BA%8C%E5%85%83%E5%BC%82%E6%88%96%E6%93%8D%E4%BD%9C%E7%AC%A6%E5%A6%82%E6%9E%9C%E5%9C%A8%E4%B8%80%E4%B8%AA%E6%93%8D%E4%BD%9C%E6%95%B0%E4%B8%AD%E8%AE%BE%E7%BD%AE%EF%BC%8C%E5%88%99%E5%A4%8D%E5%88%B6%E8%AF%A5%E4%BD%8D%EF%BC%8C%E4%BD%86%E4%B8%8D%E8%83%BD%E5%90%8C%E6%97%B6%E5%9C%A8%E4%B8%A4%E4%B8%AA%E6%93%8D%E4%BD%9C%E6%95%B0%E4%B8%AD%E8%AE%BE%E7%BD%AE%E3%80%82%5Cna%20%5E%20b%20%23%3D%26gt%3B%2049%5Cn%23%20~%20%E4%BA%8C%E8%BF%9B%E5%88%B6%E8%A1%A5%E7%A0%81%E8%BF%90%E7%AE%97%E7%AC%A6%E6%98%AF%E4%B8%80%E5%85%83%E7%9A%84%EF%BC%8C%E5%85%B7%E6%9C%89%E2%80%9C%E7%BF%BB%E8%BD%AC%E2%80%9D%E4%BD%8D%E7%9A%84%E6%95%88%E6%9E%9C%E3%80%82%5Cn~a%5Cn%23%20%26lt%3B%26lt%3B%20%E4%BA%8C%E8%BF%9B%E5%88%B6%E5%B7%A6%E7%A7%BB%E8%BF%90%E7%AE%97%E7%AC%A6%E3%80%82%20%E5%B7%A6%E6%93%8D%E4%BD%9C%E6%95%B0%E7%9A%84%E5%80%BC%E8%A2%AB%E7%A7%BB%E5%8A%A8%5Cn%23%20%E5%B7%A6%E6%93%8D%E4%BD%9C%E6%95%B0%E6%8C%87%E5%AE%9A%E7%9A%84%E4%BD%8D%E6%95%B0%E3%80%82%5Cna%20%26lt%3B%26lt%3B%202%5Cn%23%20%26gt%3B%26gt%3B%20%E4%BA%8C%E8%BF%9B%E5%88%B6%E5%8F%B3%E7%A7%BB%E8%BF%90%E7%AE%97%E7%AC%A6%E3%80%82%20%E5%B7%A6%E6%93%8D%E4%BD%9C%E6%95%B0%E7%9A%84%E5%80%BC%E8%A2%AB%E7%A7%BB%E5%8A%A8%5Cn%23%20%E5%8F%B3%E6%93%8D%E4%BD%9C%E6%95%B0%E6%8C%87%E5%AE%9A%E7%9A%84%E4%BD%8D%E6%95%B0%E3%80%82%5Cna%20%26gt%3B%26gt%3B%202%5Cn%5Cn%23%20Ruby%20%E9%80%BB%E8%BE%91%E8%BF%90%E7%AE%97%E7%AC%A6%5Cna%20and%20b%20%23%3D%26gt%3B%20true.%5Cna%20or%20b%20%23%3D%26gt%3B%20true.%5Cna%20%26%26%20b%20%23%3D%26gt%3B%20true.%5Cn(a%20%7C%7C%20b)%20%23%3D%26gt%3B%20true.%5Cn!(a%20%26%26%20b)%20%23%3D%26gt%3B%20false.%5Cnnot(a%20%26%26%20b)%20%23%3D%26gt%3B%20false.%5Cn%23%20Ruby%20%E4%B8%89%E5%85%83%E8%BF%90%E7%AE%97%E7%AC%A6%5Cn%23%20%3F%20%3A%5Cn%23%20%E5%A6%82%E6%9E%9C%E6%9D%A1%E4%BB%B6%E4%B8%BA%E7%9C%9F%EF%BC%9F%20%E7%84%B6%E5%90%8E%E5%80%BC%20X%20%EF%BC%9A%E5%90%A6%E5%88%99%E5%80%BC%20Y%5Cna%20%3D%3D%2010%20%3F%20puts%20%26%2339%3BRight%26%2339%3B%20%3A%20puts%20%26%2339%3BWrong%26%2339%3B%5Cn%23%20Ruby%20%E8%8C%83%E5%9B%B4%E8%BF%90%E7%AE%97%E7%AC%A6%5Cn%23%20..%20%E5%88%9B%E5%BB%BA%E4%BB%8E%E8%B5%B7%E7%82%B9%E5%88%B0%E7%BB%88%E7%82%B9%E7%9A%84%E8%8C%83%E5%9B%B4(%E5%90%AB)%5Cn1..10%20%23%3D%26gt%3B%20%E5%88%9B%E5%BB%BA%E4%BB%8E%201%20%E5%88%B0%2010%20%E7%9A%84%E8%8C%83%E5%9B%B4(%E5%8C%85%E6%8B%AC%201%20%E5%88%B0%2010)%5Cn%23%20...%20%E5%88%9B%E5%BB%BA%E4%B8%80%E4%B8%AA%E4%BB%8E%E8%B5%B7%E7%82%B9%E5%88%B0%E7%BB%88%E7%82%B9%E7%9A%84%E8%8C%83%E5%9B%B4%EF%BC%8C%E4%B8%8D%E5%8C%85%E6%8B%AC%E5%9C%A8%E5%86%85%5Cn1...10%20%23%3D%26gt%3B%20%E5%88%9B%E5%BB%BA%E4%B8%80%E4%B8%AA%E4%BB%8E%201%20%E5%88%B0%2010%20%E7%9A%84%E7%8B%AC%E5%8D%A0%E8%8C%83%E5%9B%B4%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22139%5C%22%3E%E8%BF%90%E7%AE%97%E7%AC%A6%E4%BC%98%E5%85%88%E7%BA%A7%E8%A1%A8%3C%2Fh1%3E%3Cul%3E%3Cli%20data-track%3D%5C%22140%5C%22%3E!%2C%20~%2C%20unary%20%2B%3C%2Fli%3E%3Cli%20data-track%3D%5C%22141%5C%22%3E**%3C%2Fli%3E%3Cli%20data-track%3D%5C%22142%5C%22%3Eunary%20-%3C%2Fli%3E%3Cli%20data-track%3D%5C%22143%5C%22%3E*%2C%20%2F%2C%20%25%3C%2Fli%3E%3Cli%20data-track%3D%5C%22144%5C%22%3E%2B%2C%20-%3C%2Fli%3E%3Cli%20data-track%3D%5C%22145%5C%22%3E%26lt%3B%26lt%3B%2C%20%26gt%3B%26gt%3B%3C%2Fli%3E%3Cli%20data-track%3D%5C%22146%5C%22%3E%26%3C%2Fli%3E%3Cli%20data-track%3D%5C%22147%5C%22%3E%5E%3C%2Fli%3E%3Cli%20data-track%3D%5C%22148%5C%22%3E%26gt%3B%2C%20%26gt%3B%3D%2C%20%26lt%3B%2C%20%26lt%3B%3D%3C%2Fli%3E%3Cli%20data-track%3D%5C%22149%5C%22%3E%26lt%3B%3D%26gt%3B%2C%20%3D%3D%2C%20%3D%3D%3D%2C%20!%3D%2C%20%3D~%2C%20!~%3C%2Fli%3E%3Cli%20data-track%3D%5C%22150%5C%22%3E%26%26%3C%2Fli%3E%3Cli%20data-track%3D%5C%22151%5C%22%3E%3F%2C%20%3A%3C%2Fli%3E%3Cli%20data-track%3D%5C%22152%5C%22%3Emodifier-rescue%3C%2Fli%3E%3Cli%20data-track%3D%5C%22153%5C%22%3E%3D%2C%20%2B%3D%2C%20-%3D%2C%20*%3D%2C%20%2F%3D%2C%20%25%3D%3C%2Fli%3E%3Cli%20data-track%3D%5C%22154%5C%22%3Edefined%3C%2Fli%3E%3Cli%20data-track%3D%5C%22155%5C%22%3Enot%3C%2Fli%3E%3Cli%20data-track%3D%5C%22156%5C%22%3Eor%2C%20and%3C%2Fli%3E%3Cli%20data-track%3D%5C%22157%5C%22%3Emodifier-if%2C%20modifier-unless%2C%20modifier-while%2C%20modifier-until%3C%2Fli%3E%3Cli%20data-track%3D%5C%22158%5C%22%3E%7B%20%7D%20%E5%9D%97%3C%2Fli%3E%3Cli%20data-track%3D%5C%22159%5C%22%3Edo%20...%20end%20%E5%9D%97%3C%2Fli%3E%3C%2Ful%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22160%5C%22%3E%E5%8F%98%E9%87%8F%E5%92%8C%E8%8C%83%E5%9B%B4%3C%2Fh1%3E%3Cdiv%20class%3D%5C%22tableWrapper%5C%22%3E%3Ctable%20style%3D%5C%22min-width%3A%20224px%3B%5C%22%3E%3Ccolgroup%3E%3Ccol%3E%3Ccol%3E%3Ccol%3E%3Ccol%3E%3C%2Fcolgroup%3E%3Ctbody%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22161%5C%22%3E%5Ba-z%5D%20%E6%88%96%20_%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22162%5C%22%3E%E6%9C%AC%E5%9C%B0%E7%9A%84%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22163%5C%22%3Ecount%20%3D%2010%20%E6%88%96%20_count%20%3D%2010%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22164%5C%22%3E%E5%BF%85%E9%A1%BB%E5%88%9D%E5%A7%8B%E5%8C%96%E5%B1%80%E9%83%A8%E5%8F%98%E9%87%8F%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22165%5C%22%3E%40%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22166%5C%22%3E%E5%AE%9E%E4%BE%8B%E5%8F%98%E9%87%8F%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22167%5C%22%3E%40id%20%3D%20%5B%5D%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22168%5C%22%3E%E5%AE%9E%E4%BE%8B%E5%8F%98%E9%87%8F%E5%9C%A8%E5%88%9D%E5%A7%8B%E5%8C%96%E4%B9%8B%E5%89%8D%E5%85%B7%E6%9C%89%E2%80%9Cnil%E2%80%9D%E5%80%BC%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22169%5C%22%3E%40%40%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22170%5C%22%3E%E7%B1%BB%E5%8F%98%E9%87%8F%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22171%5C%22%3E%40%40name%20%3D%20%5B%5D%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22172%5C%22%3E%E5%BF%85%E9%A1%BB%E5%88%9D%E5%A7%8B%E5%8C%96%E7%B1%BB%E5%8F%98%E9%87%8F%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22173%5C%22%3E%24%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22174%5C%22%3E%E5%85%A8%E5%B1%80%E5%8F%98%E9%87%8F%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22175%5C%22%3E%24version%20%3D%20%26%2334%3B0.8.9%26%2334%3B%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22176%5C%22%3E%E5%85%A8%E5%B1%80%E5%8F%98%E9%87%8F%E5%9C%A8%E5%88%9D%E5%A7%8B%E5%8C%96%E4%B9%8B%E5%89%8D%E5%85%B7%E6%9C%89%E2%80%9Cnil%E2%80%9D%E5%80%BC%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22177%5C%22%3E%5BA-Z%5D%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22178%5C%22%3E%E6%8C%81%E7%BB%AD%E7%9A%84%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22179%5C%22%3EPI%20%3D%203.14%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22180%5C%22%3E%E5%B8%B8%E9%87%8F%E5%8F%98%E9%87%8F%E5%BF%85%E9%A1%BB%E5%88%9D%E5%A7%8B%E5%8C%96%EF%BC%8C%E6%82%A8%E5%8F%AF%E4%BB%A5%E6%9B%B4%E6%94%B9%E5%B8%B8%E9%87%8F%EF%BC%8C%E4%BD%86%E6%82%A8%E4%BC%9A%E6%94%B6%E5%88%B0%E8%AD%A6%E5%91%8A%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3C%2Ftbody%3E%3C%2Ftable%3E%3C%2Fdiv%3E%3Cp%20data-track%3D%5C%22181%5C%22%3E%E6%9C%89%E4%BA%94%E7%A7%8D%E4%B8%8D%E5%90%8C%E7%B1%BB%E5%9E%8B%E7%9A%84%E5%8F%98%E9%87%8F%E3%80%82%E7%AC%AC%E4%B8%80%E4%B8%AA%E5%AD%97%E7%AC%A6%E7%A1%AE%E5%AE%9A%E8%8C%83%E5%9B%B4%3C%2Fp%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22182%5C%22%3E%E5%B1%80%E9%83%A8%E5%8F%98%E9%87%8F%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Ecurrent_weather%20%3D%20%26%2334%3Brainy%26%2334%3B%5Cn_weather%20%3D%20%26%2334%3Bsunny%26%2334%3B%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%22184%5C%22%3E%E5%BF%85%E9%A1%BB%E4%BB%A5%E4%B8%8B%E5%88%92%E7%BA%BF%E6%88%96%E5%B0%8F%E5%86%99%E5%AD%97%E6%AF%8D%E5%BC%80%E5%A4%B4%3C%2Fp%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22185%5C%22%3E%E5%AE%9E%E4%BE%8B%E5%8F%98%E9%87%8F%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E%23%20%E5%AE%9E%E4%BE%8B%E7%B1%BB%E5%8F%98%E9%87%8F%5Cn%40current_weather%20%3D%20%26%2334%3Brainy%26%2334%3B%5Cn%23%20%E5%85%A8%E5%B1%80%E5%8F%98%E9%87%8F%5Cn%24current_weather%20%3D%20%26%2334%3Brainy%26%2334%3B%5Cn%23%20%E5%B8%B8%E9%87%8F%E5%8F%98%E9%87%8F%5CnWEATHER%20%3D%20%26%2334%3Brainy%26%2334%3B.freeze%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22187%5C%22%3E%E4%BC%AA%E5%8F%98%E9%87%8F%3C%2Fh1%3E%3Cdiv%20class%3D%5C%22tableWrapper%5C%22%3E%3Ctable%20style%3D%5C%22min-width%3A%20112px%3B%5C%22%3E%3Ccolgroup%3E%3Ccol%3E%3Ccol%3E%3C%2Fcolgroup%3E%3Ctbody%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22188%5C%22%3Eself%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22189%5C%22%3E%E5%BD%93%E5%89%8D%E6%96%B9%E6%B3%95%E7%9A%84%E6%8E%A5%E6%94%B6%E8%80%85%E5%AF%B9%E8%B1%A1%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22190%5C%22%3Etrue%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22191%5C%22%3ETrueClass%20%E7%9A%84%E5%AE%9E%E4%BE%8B%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22192%5C%22%3Efalse%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22193%5C%22%3EFalseClass%20%E7%9A%84%E5%AE%9E%E4%BE%8B%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22194%5C%22%3Enil%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22195%5C%22%3ENilClass%20%E7%9A%84%E5%AE%9E%E4%BE%8B%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22196%5C%22%3E__FILE__%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22197%5C%22%3E%E5%BD%93%E5%89%8D%E6%BA%90%E6%96%87%E4%BB%B6%E5%90%8D%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22198%5C%22%3E__LINE__%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22199%5C%22%3E%E5%BD%93%E5%89%8D%E6%BA%90%E6%96%87%E4%BB%B6%E7%9A%84%E5%BD%93%E5%89%8D%E8%A1%8C%E5%8F%B7%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3C%2Ftbody%3E%3C%2Ftable%3E%3C%2Fdiv%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22200%5C%22%3E%E9%80%89%E9%A1%B9%E5%8F%98%E9%87%8F%3C%2Fh1%3E%3Cdiv%20class%3D%5C%22tableWrapper%5C%22%3E%3Ctable%20style%3D%5C%22min-width%3A%20112px%3B%5C%22%3E%3Ccolgroup%3E%3Ccol%3E%3Ccol%3E%3C%2Fcolgroup%3E%3Ctbody%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22201%5C%22%3E%24-0%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22202%5C%22%3E%24%2F%20%E7%9A%84%E5%88%AB%E5%90%8D%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22203%5C%22%3E%24-a%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22204%5C%22%3E%E5%A6%82%E6%9E%9C%E8%AE%BE%E7%BD%AE%E4%BA%86%E9%80%89%E9%A1%B9%20-a%EF%BC%8C%E5%88%99%E4%B8%BA%E7%9C%9F%E3%80%82%E5%8F%AA%E8%AF%BB%E5%8F%98%E9%87%8F%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22205%5C%22%3E%24-d%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22206%5C%22%3E%24DEBUG%20%E7%9A%84%E5%88%AB%E5%90%8D%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22207%5C%22%3E%24-F%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22208%5C%22%3E%24%3B%20%E7%9A%84%E5%88%AB%E5%90%8D%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22209%5C%22%3E%24-i%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22210%5C%22%3E%E5%9C%A8%E5%B0%B1%E5%9C%B0%E7%BC%96%E8%BE%91%E6%A8%A1%E5%BC%8F%E4%B8%8B%EF%BC%8C%E6%AD%A4%E5%8F%98%E9%87%8F%E4%BF%9D%E5%AD%98%E6%89%A9%E5%B1%95%EF%BC%8C%E5%90%A6%E5%88%99%E4%B8%BA%E9%9B%B6%3Cbr%3E%E5%8F%AF%E4%BB%A5%E6%8C%87%E5%AE%9A%E5%90%AF%E7%94%A8%EF%BC%88%E6%88%96%E7%A6%81%E7%94%A8%EF%BC%89%E5%B0%B1%E5%9C%B0%E7%BC%96%E8%BE%91%E6%A8%A1%E5%BC%8F%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22211%5C%22%3E%24-I%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22212%5C%22%3E%24%3A%20%E7%9A%84%E5%88%AB%E5%90%8D%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22213%5C%22%3E%24-l%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22214%5C%22%3E%E5%A6%82%E6%9E%9C%E9%80%89%E9%A1%B9%20-lis%20%E8%AE%BE%E7%BD%AE%E4%B8%BA%E7%9C%9F%E3%80%82%E5%8F%AA%E8%AF%BB%E5%8F%98%E9%87%8F%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22215%5C%22%3E%24-p%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22216%5C%22%3E%E5%A6%82%E6%9E%9C%E9%80%89%E9%A1%B9%20-pi%20%E8%AE%BE%E7%BD%AE%E4%B8%BA%E7%9C%9F%E3%80%82%E5%8F%AA%E8%AF%BB%E5%8F%98%E9%87%8F%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22217%5C%22%3E%24-v%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22218%5C%22%3E%24VERBOSE%20%E7%9A%84%E5%88%AB%E5%90%8D%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3C%2Ftbody%3E%3C%2Ftable%3E%3C%2Fdiv%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22219%5C%22%3E%E9%A2%84%E5%AE%9A%E4%B9%89%E5%8F%98%E9%87%8F%3C%2Fh1%3E%3Cdiv%20class%3D%5C%22tableWrapper%5C%22%3E%3Ctable%20style%3D%5C%22min-width%3A%20112px%3B%5C%22%3E%3Ccolgroup%3E%3Ccol%3E%3Ccol%3E%3C%2Fcolgroup%3E%3Ctbody%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22220%5C%22%3E%24!%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22221%5C%22%3E%E5%BC%82%E5%B8%B8%E4%BF%A1%E6%81%AF%E6%B6%88%E6%81%AF%E3%80%82raise%20%E8%AE%BE%E7%BD%AE%E6%AD%A4%E5%8F%98%E9%87%8F%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22222%5C%22%3E%24%40%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22223%5C%22%3E%E6%9C%80%E5%90%8E%E4%B8%80%E4%B8%AA%E5%BC%82%E5%B8%B8%E7%9A%84%E5%9B%9E%E6%BA%AF%EF%BC%8C%E5%AE%83%E6%98%AF%20String%20%E7%9A%84%E6%95%B0%E7%BB%84%EF%BC%8C%E6%8C%87%E7%A4%BA%E8%B0%83%E7%94%A8%E6%96%B9%E6%B3%95%E7%9A%84%E4%BD%8D%E7%BD%AE%E3%80%82%E6%A0%BC%E5%BC%8F%E4%B8%AD%E7%9A%84%E5%85%83%E7%B4%A0%E5%A6%82%EF%BC%9A%E2%80%9Cfilename%3Aline%E2%80%9D%E6%88%96%E2%80%9Cfilename%3Aline%3Ain%20%60methodname%26%2339%3B%E2%80%9D(%E5%8A%A9%E8%AE%B0%E7%AC%A6%EF%BC%9A%E5%8F%91%E7%94%9F%E5%BC%82%E5%B8%B8%E7%9A%84%E5%9C%B0%E6%96%B9)%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22224%5C%22%3E%24%26%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22225%5C%22%3E%E4%B8%8E%E6%AD%A4%E8%8C%83%E5%9B%B4%E5%86%85%E6%9C%80%E5%90%8E%E4%B8%80%E6%AC%A1%E6%88%90%E5%8A%9F%E7%9A%84%E6%A8%A1%E5%BC%8F%E5%8C%B9%E9%85%8D%E5%8C%B9%E9%85%8D%E7%9A%84%E5%AD%97%E7%AC%A6%E4%B8%B2%EF%BC%8C%E5%A6%82%E6%9E%9C%E6%9C%80%E5%90%8E%E4%B8%80%E6%AC%A1%E6%A8%A1%E5%BC%8F%E5%8C%B9%E9%85%8D%E5%A4%B1%E8%B4%A5%EF%BC%8C%E5%88%99%E8%BF%94%E5%9B%9E%20nil%E3%80%82%20(%E5%8A%A9%E8%AE%B0%E7%AC%A6%EF%BC%9A%E5%9C%A8%E6%9F%90%E4%BA%9B%E7%BC%96%E8%BE%91%E5%99%A8%E4%B8%AD%E7%B1%BB%E4%BC%BC%E4%BA%8E%20%26)%E8%BF%99%E4%B8%AA%E5%8F%98%E9%87%8F%E6%98%AF%E5%8F%AA%E8%AF%BB%E7%9A%84%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22226%5C%22%3E%24%60%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22227%5C%22%3E%E5%BD%93%E5%89%8D%E8%8C%83%E5%9B%B4%E5%86%85%E6%9C%80%E5%90%8E%E4%B8%80%E6%AC%A1%E6%88%90%E5%8A%9F%E7%9A%84%E6%A8%A1%E5%BC%8F%E5%8C%B9%E9%85%8D%E6%89%80%E5%8C%B9%E9%85%8D%E7%9A%84%E4%BB%BB%E4%BD%95%E5%86%85%E5%AE%B9%E4%B9%8B%E5%89%8D%E7%9A%84%E5%AD%97%E7%AC%A6%E4%B8%B2%EF%BC%8C%E5%A6%82%E6%9E%9C%E6%9C%80%E5%90%8E%E4%B8%80%E6%AC%A1%E6%A8%A1%E5%BC%8F%E5%8C%B9%E9%85%8D%E5%A4%B1%E8%B4%A5%EF%BC%8C%E5%88%99%E4%B8%BA%20nil%E3%80%82%20(%E5%8A%A9%E8%AE%B0%E7%AC%A6%EF%BC%9A%60%20%E9%80%9A%E5%B8%B8%E5%9C%A8%E5%B8%A6%E5%BC%95%E5%8F%B7%E7%9A%84%E5%AD%97%E7%AC%A6%E4%B8%B2%E4%B9%8B%E5%89%8D)%E6%AD%A4%E5%8F%98%E9%87%8F%E6%98%AF%E5%8F%AA%E8%AF%BB%E7%9A%84%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22228%5C%22%3E%24%26%2339%3B%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22229%5C%22%3E%E5%BD%93%E5%89%8D%E8%8C%83%E5%9B%B4%E5%86%85%E6%9C%80%E5%90%8E%E4%B8%80%E6%AC%A1%E6%88%90%E5%8A%9F%E7%9A%84%E6%A8%A1%E5%BC%8F%E5%8C%B9%E9%85%8D%E6%89%80%E5%8C%B9%E9%85%8D%E7%9A%84%E5%AD%97%E7%AC%A6%E4%B8%B2%E5%90%8E%E9%9D%A2%E7%9A%84%E5%AD%97%E7%AC%A6%E4%B8%B2%EF%BC%8C%E5%A6%82%E6%9E%9C%E6%9C%80%E5%90%8E%E4%B8%80%E6%AC%A1%E6%A8%A1%E5%BC%8F%E5%8C%B9%E9%85%8D%E5%A4%B1%E8%B4%A5%EF%BC%8C%E5%88%99%E4%B8%BA%20nil%E3%80%82%20(%E5%8A%A9%E8%AE%B0%E7%AC%A6%EF%BC%9A%26%2339%3B%20%E9%80%9A%E5%B8%B8%E8%B7%9F%E5%9C%A8%E5%B8%A6%E5%BC%95%E5%8F%B7%E7%9A%84%E5%AD%97%E7%AC%A6%E4%B8%B2%E4%B9%8B%E5%90%8E)%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22230%5C%22%3E%24%2B%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22231%5C%22%3E%E6%9C%80%E5%90%8E%E4%B8%80%E4%B8%AA%E6%88%90%E5%8A%9F%E7%9A%84%E6%90%9C%E7%B4%A2%E6%A8%A1%E5%BC%8F%E5%8C%B9%E9%85%8D%E7%9A%84%E6%9C%80%E5%90%8E%E4%B8%80%E4%B8%AA%E6%8B%AC%E5%8F%B7%EF%BC%8C%E5%A6%82%E6%9E%9C%E6%9C%80%E5%90%8E%E4%B8%80%E4%B8%AA%E6%A8%A1%E5%BC%8F%E5%8C%B9%E9%85%8D%E5%A4%B1%E8%B4%A5%EF%BC%8C%E5%88%99%E4%B8%BA%20nil%E3%80%82%E5%A6%82%E6%9E%9C%E6%82%A8%E4%B8%8D%E7%9F%A5%E9%81%93%E4%B8%80%E7%BB%84%E6%9B%BF%E4%BB%A3%E6%A8%A1%E5%BC%8F%E4%B8%AD%E7%9A%84%E5%93%AA%E4%B8%80%E4%B8%AA%E5%8C%B9%E9%85%8D%EF%BC%8C%E8%BF%99%E5%BE%88%E6%9C%89%E7%94%A8%E3%80%82%20(%E5%8A%A9%E8%AE%B0%EF%BC%9A%E7%A7%AF%E6%9E%81%E5%90%91%E4%B8%8A)%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22232%5C%22%3E%241%2C%20%242...%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22233%5C%22%3E%E5%8C%85%E5%90%AB%E4%B8%8A%E4%B8%80%E6%AC%A1%E6%88%90%E5%8A%9F%E5%8C%B9%E9%85%8D%E7%9A%84%E6%A8%A1%E5%BC%8F%E4%B8%AD%E7%9B%B8%E5%BA%94%E6%8B%AC%E5%8F%B7%E9%9B%86%E4%B8%AD%E7%9A%84%E5%AD%90%E6%A8%A1%E5%BC%8F%EF%BC%8C%E4%B8%8D%E8%AE%A1%E7%AE%97%E5%B7%B2%E7%BB%8F%E9%80%80%E5%87%BA%E7%9A%84%E5%B5%8C%E5%A5%97%E5%9D%97%E4%B8%AD%E5%8C%B9%E9%85%8D%E7%9A%84%E6%A8%A1%E5%BC%8F%EF%BC%8C%E6%88%96%E8%80%85%E5%A6%82%E6%9E%9C%E6%9C%80%E5%90%8E%E4%B8%80%E6%AC%A1%E6%A8%A1%E5%BC%8F%E5%8C%B9%E9%85%8D%E5%A4%B1%E8%B4%A5%EF%BC%8C%E5%88%99%E4%B8%BA%20nil%E3%80%82%20(%E5%8A%A9%E8%AE%B0%E7%AC%A6%EF%BC%9A%E5%A6%82%20%5C%5Cdigit)%E8%BF%99%E4%BA%9B%E5%8F%98%E9%87%8F%E9%83%BD%E6%98%AF%E5%8F%AA%E8%AF%BB%E7%9A%84%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22234%5C%22%3E%24~%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22235%5C%22%3E%E5%BD%93%E5%89%8D%E8%8C%83%E5%9B%B4%E5%86%85%E6%9C%80%E5%90%8E%E4%B8%80%E4%B8%AA%E5%8C%B9%E9%85%8D%E7%9A%84%E4%BF%A1%E6%81%AF%E3%80%82%E8%AE%BE%E7%BD%AE%E6%AD%A4%E5%8F%98%E9%87%8F%E4%BC%9A%E5%BD%B1%E5%93%8D%E5%8C%B9%E9%85%8D%E5%8F%98%E9%87%8F%EF%BC%8C%E5%A6%82%20%24%26%E3%80%81%24%2B%E3%80%81%241%E3%80%81%242..%20%E7%AD%89%E3%80%82%E7%AC%AC%20n%20%E4%B8%AA%E5%AD%90%E8%A1%A8%E8%BE%BE%E5%BC%8F%E5%8F%AF%E4%BB%A5%E9%80%9A%E8%BF%87%20%24~%5Bnth%5D%20%E6%A3%80%E7%B4%A2%E3%80%82%20(%E5%8A%A9%E8%AE%B0%E7%AC%A6%EF%BC%9A~%20%E7%94%A8%E4%BA%8E%E5%8C%B9%E9%85%8D)%E8%BF%99%E4%B8%AA%E5%8F%98%E9%87%8F%E6%98%AF%E5%B1%80%E9%83%A8%E4%BD%9C%E7%94%A8%E5%9F%9F%E7%9A%84%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22236%5C%22%3E%24%3D%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22237%5C%22%3E%E4%B8%8D%E5%8C%BA%E5%88%86%E5%A4%A7%E5%B0%8F%E5%86%99%E7%9A%84%E6%A0%87%E5%BF%97%EF%BC%8C%E9%BB%98%E8%AE%A4%E4%B8%BA%20nil%E3%80%82%20(%E5%8A%A9%E8%AE%B0%E7%AC%A6%EF%BC%9A%3D%20%E7%94%A8%E4%BA%8E%E6%AF%94%E8%BE%83)%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22238%5C%22%3E%24%2F%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22239%5C%22%3E%E8%BE%93%E5%85%A5%E8%AE%B0%E5%BD%95%E5%88%86%E9%9A%94%E7%AC%A6%EF%BC%8C%E9%BB%98%E8%AE%A4%E4%B8%BA%E6%8D%A2%E8%A1%8C%E7%AC%A6%E3%80%82%E5%83%8F%20awk%20%E7%9A%84%20RS%20%E5%8F%98%E9%87%8F%E4%B8%80%E6%A0%B7%E5%B7%A5%E4%BD%9C%E3%80%82%E5%A6%82%E6%9E%9C%E8%AE%BE%E7%BD%AE%E4%B8%BA%20nil%EF%BC%8C%E5%88%99%E5%B0%86%E7%AB%8B%E5%8D%B3%E8%AF%BB%E5%8F%96%E6%95%B4%E4%B8%AA%E6%96%87%E4%BB%B6%E3%80%82%20(%E5%8A%A9%E8%AE%B0%E7%AC%A6%EF%BC%9A%2F%20%E7%94%A8%E4%BA%8E%E5%9C%A8%E5%BC%95%E7%94%A8%E8%AF%97%E6%AD%8C%E6%97%B6%E5%88%92%E5%AE%9A%E8%A1%8C%E7%95%8C)%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22240%5C%22%3E%24%5C%5C%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22241%5C%22%3Eprint%20%E5%92%8C%20IO%23write%20%E7%9A%84%E8%BE%93%E5%87%BA%E8%AE%B0%E5%BD%95%E5%88%86%E9%9A%94%E7%AC%A6%E3%80%82%E9%BB%98%E8%AE%A4%E5%80%BC%E4%B8%BA%E6%97%A0%E3%80%82%20(%E5%8A%A9%E8%AE%B0%E7%AC%A6%EF%BC%9A%E5%AE%83%E5%B0%B1%E5%83%8F%20%2F%EF%BC%8C%E4%BD%86%E5%AE%83%E6%98%AF%E4%BD%A0%E4%BB%8E%20Ruby%20%E4%B8%AD%E2%80%9C%E8%BF%94%E5%9B%9E%E2%80%9D%E7%9A%84%E4%B8%9C%E8%A5%BF)%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22242%5C%22%3E%24%2C%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22243%5C%22%3E%E6%89%93%E5%8D%B0%E7%9A%84%E8%BE%93%E5%87%BA%E5%AD%97%E6%AE%B5%E5%88%86%E9%9A%94%E7%AC%A6%E3%80%82%E6%AD%A4%E5%A4%96%EF%BC%8C%E5%AE%83%E6%98%AF%20Array%23join%20%E7%9A%84%E9%BB%98%E8%AE%A4%E5%88%86%E9%9A%94%E7%AC%A6%E3%80%82%20(%E5%8A%A9%E8%AE%B0%E7%AC%A6%EF%BC%9A%E5%BD%93%E6%82%A8%E7%9A%84%E6%89%93%E5%8D%B0%E8%AF%AD%E5%8F%A5%E4%B8%AD%E6%9C%89%20%2C%20%E6%97%B6%E6%89%93%E5%8D%B0%E7%9A%84%E5%86%85%E5%AE%B9)%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22244%5C%22%3E%24%3B%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22245%5C%22%3EString%23split%20%E7%9A%84%E9%BB%98%E8%AE%A4%E5%88%86%E9%9A%94%E7%AC%A6%E3%80%82%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22246%5C%22%3E%24.%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22247%5C%22%3E%E8%AF%BB%E5%8F%96%E7%9A%84%E6%9C%80%E5%90%8E%E4%B8%80%E4%B8%AA%E6%96%87%E4%BB%B6%E7%9A%84%E5%BD%93%E5%89%8D%E8%BE%93%E5%85%A5%E8%A1%8C%E5%8F%B7%E3%80%82%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22248%5C%22%3E%24%26lt%3B%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22249%5C%22%3E%E7%94%B1%E5%91%BD%E4%BB%A4%E8%A1%8C%E5%8F%82%E6%95%B0%E6%88%96%E6%A0%87%E5%87%86%E8%BE%93%E5%85%A5%E7%BB%99%E5%87%BA%E7%9A%84%E6%96%87%E4%BB%B6%E7%9A%84%E8%99%9A%E6%8B%9F%E8%BF%9E%E6%8E%A5%E6%96%87%E4%BB%B6(%E5%A6%82%E6%9E%9C%E6%B2%A1%E6%9C%89%E6%8F%90%E4%BE%9B%E5%8F%82%E6%95%B0%E6%96%87%E4%BB%B6)%E3%80%82%20%24%26lt%3B.file%20%E8%BF%94%E5%9B%9E%E5%BD%93%E5%89%8D%E6%96%87%E4%BB%B6%E5%90%8D%E3%80%82%20(%E5%8A%A9%E8%AE%B0%E7%AC%A6%EF%BC%9A%24%26lt%3B%20%E6%98%AF%E4%B8%80%E4%B8%AA%20shell%20%E8%BE%93%E5%85%A5%E6%BA%90)%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22250%5C%22%3E%24%26gt%3B%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22251%5C%22%3Eprint%20%E7%9A%84%E9%BB%98%E8%AE%A4%E8%BE%93%E5%87%BA%EF%BC%8Cprintf%E3%80%82%20%24stdout%20%E9%BB%98%E8%AE%A4%E6%83%85%E5%86%B5%E4%B8%8B%E3%80%82%20(%E5%8A%A9%E8%AE%B0%E7%AC%A6%EF%BC%9A%24%26gt%3B%20%E7%94%A8%E4%BA%8E%20shell%20%E8%BE%93%E5%87%BA)%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22252%5C%22%3E%24_%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22253%5C%22%3E%E9%80%9A%E8%BF%87gets%E6%88%96readline%E8%BE%93%E5%85%A5String%E7%9A%84%E6%9C%80%E5%90%8E%E4%B8%80%E8%A1%8C%E3%80%82%E5%A6%82%E6%9E%9Cgets%2Freadline%20%E9%81%87%E5%88%B0EOF%EF%BC%8C%E5%AE%83%E8%A2%AB%E8%AE%BE%E7%BD%AE%E4%B8%BAnil%E3%80%82%E8%BF%99%E4%B8%AA%E5%8F%98%E9%87%8F%E6%98%AF%E5%B1%80%E9%83%A8%E4%BD%9C%E7%94%A8%E5%9F%9F%E7%9A%84%E3%80%82%20(%E5%8A%A9%E8%AE%B0%E7%AC%A6%EF%BC%9A%E9%83%A8%E5%88%86%E4%B8%8E%20Perl%20%E7%9B%B8%E5%90%8C)%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22254%5C%22%3E%240%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22255%5C%22%3E%E5%8C%85%E5%90%AB%E5%8C%85%E5%90%AB%E6%AD%A3%E5%9C%A8%E6%89%A7%E8%A1%8C%E7%9A%84%20Ruby%20%E8%84%9A%E6%9C%AC%E7%9A%84%E6%96%87%E4%BB%B6%E7%9A%84%E5%90%8D%E7%A7%B0%E3%80%82%E5%9C%A8%E6%9F%90%E4%BA%9B%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F%E4%B8%8A%EF%BC%8C%E5%88%86%E9%85%8D%E7%BB%99%20%240%20%E4%BC%9A%E4%BF%AE%E6%94%B9%20ps(1)%20%E7%A8%8B%E5%BA%8F%E7%9C%8B%E5%88%B0%E7%9A%84%E5%8F%82%E6%95%B0%E5%8C%BA%E5%9F%9F%E3%80%82%E4%BD%9C%E4%B8%BA%E4%B8%80%E7%A7%8D%E6%8C%87%E7%A4%BA%E5%BD%93%E5%89%8D%E7%A8%8B%E5%BA%8F%E7%8A%B6%E6%80%81%E7%9A%84%E6%96%B9%E5%BC%8F%EF%BC%8C%E8%BF%99%E6%AF%94%E9%9A%90%E8%97%8F%E6%82%A8%E6%AD%A3%E5%9C%A8%E8%BF%90%E8%A1%8C%E7%9A%84%E7%A8%8B%E5%BA%8F%E6%9B%B4%E6%9C%89%E7%94%A8%E3%80%82%20(%E5%8A%A9%E8%AE%B0%E7%AC%A6%EF%BC%9A%E4%B8%8E%20sh%20%E5%92%8C%20ksh%20%E7%9B%B8%E5%90%8C)%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22256%5C%22%3E%24*%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22257%5C%22%3E%E4%B8%BA%E8%84%9A%E6%9C%AC%E6%8F%90%E4%BE%9B%E7%9A%84%E5%91%BD%E4%BB%A4%E8%A1%8C%E5%8F%82%E6%95%B0%E3%80%82%20Ruby%20%E8%A7%A3%E9%87%8A%E5%99%A8%E7%9A%84%E9%80%89%E9%A1%B9%E5%B7%B2%E8%A2%AB%E5%88%A0%E9%99%A4%E3%80%82%20(%E5%8A%A9%E8%AE%B0%E7%AC%A6%EF%BC%9A%E4%B8%8E%20sh%20%E5%92%8C%20ksh%20%E7%9B%B8%E5%90%8C)%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22258%5C%22%3E%24%24%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22259%5C%22%3E%E8%BF%90%E8%A1%8C%E6%AD%A4%E8%84%9A%E6%9C%AC%E7%9A%84%20Ruby%20%E7%9A%84%E8%BF%9B%E7%A8%8B%E5%8F%B7%E3%80%82(%E5%8A%A9%E8%AE%B0%E7%AC%A6%EF%BC%9A%E4%B8%8E%E8%B4%9D%E5%A3%B3%E7%9B%B8%E5%90%8C)%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22260%5C%22%3E%24%3F%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22261%5C%22%3E%E6%9C%80%E5%90%8E%E6%89%A7%E8%A1%8C%E7%9A%84%E5%AD%90%E8%BF%9B%E7%A8%8B%E7%9A%84%E7%8A%B6%E6%80%81%E3%80%82%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22262%5C%22%3E%24%3A%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22263%5C%22%3E%E8%AF%A5%E6%95%B0%E7%BB%84%E5%8C%85%E5%90%AB%E9%80%9A%E8%BF%87%20load%20%E6%88%96%20require%20%E6%9F%A5%E6%89%BE%20Ruby%20%E8%84%9A%E6%9C%AC%E5%92%8C%E4%BA%8C%E8%BF%9B%E5%88%B6%E6%A8%A1%E5%9D%97%E7%9A%84%E4%BD%8D%E7%BD%AE%E5%88%97%E8%A1%A8%E3%80%82%20%E5%AE%83%E6%9C%80%E5%88%9D%E7%94%B1%E4%BB%BB%E4%BD%95%20-I%20%E5%91%BD%E4%BB%A4%E8%A1%8C%E5%BC%80%E5%85%B3%E7%9A%84%E5%8F%82%E6%95%B0%E7%BB%84%E6%88%90%EF%BC%8C%E7%84%B6%E5%90%8E%E6%98%AF%E9%BB%98%E8%AE%A4%E7%9A%84%20Ruby%20%E5%BA%93%EF%BC%8Cprobabl%20%26%2334%3B%2Fusr%2Flocal%2Flib%2Fruby%26%2334%3B%EF%BC%8C%E7%84%B6%E5%90%8E%E6%98%AF%20%26%2334%3B.%26%2334%3B%EF%BC%8C%E8%A1%A8%E7%A4%BA%E5%BD%93%E5%89%8D%E7%9B%AE%E5%BD%95%20.%20(%E5%8A%A9%E8%AE%B0%E7%AC%A6%EF%BC%9A%E5%86%92%E5%8F%B7%E6%98%AF%20PATH%20%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F%E7%9A%84%E5%88%86%E9%9A%94%E7%AC%A6)%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22264%5C%22%3E%24%26%2334%3B%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22265%5C%22%3E%E8%AF%A5%E6%95%B0%E7%BB%84%E5%8C%85%E5%90%AB%E7%94%B1%20require%20%E5%8A%A0%E8%BD%BD%E7%9A%84%E6%A8%A1%E5%9D%97%E5%90%8D%E7%A7%B0%E3%80%82%20%E7%94%A8%E4%BA%8E%E9%98%B2%E6%AD%A2%20require%20%E4%B8%A4%E6%AC%A1%E5%8A%A0%E8%BD%BD%E6%A8%A1%E5%9D%97%E3%80%82%E5%8A%A9%E8%AE%B0%E7%AC%A6%EF%BC%9A%E9%98%B2%E6%AD%A2%E6%96%87%E4%BB%B6%E8%A2%AB%E5%8F%8C%E5%BC%95%E5%8F%B7(%E5%8A%A0%E8%BD%BD)%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22266%5C%22%3E%24DEBUG%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22267%5C%22%3E-d%20%E5%BC%80%E5%85%B3%E7%9A%84%E7%8A%B6%E6%80%81%E3%80%82%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22268%5C%22%3E%24FILENAME%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22269%5C%22%3E%E4%B8%8E%24%26lt%3B.filename%20%E7%9B%B8%E5%90%8C%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22270%5C%22%3E%24LOAD_PATH%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22271%5C%22%3E%24%3A%20%E7%9A%84%E5%88%AB%E5%90%8D%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22272%5C%22%3E%24stdin%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22273%5C%22%3E%E5%BD%93%E5%89%8D%E7%9A%84%E6%A0%87%E5%87%86%E8%BE%93%E5%85%A5%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22274%5C%22%3E%24stdout%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22275%5C%22%3E%E5%BD%93%E5%89%8D%E7%9A%84%E6%A0%87%E5%87%86%E8%BE%93%E5%87%BA%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22276%5C%22%3E%24stderr%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22277%5C%22%3E%E5%BD%93%E5%89%8D%E6%A0%87%E5%87%86%E9%94%99%E8%AF%AF%E8%BE%93%E5%87%BA%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22278%5C%22%3E%24VERBOSE%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22279%5C%22%3E%E8%AF%A6%E7%BB%86%E6%A0%87%E5%BF%97%EF%BC%8C%E7%94%B1%20-v%20%E5%BC%80%E5%85%B3%E8%AE%BE%E7%BD%AE%E5%88%B0%20Ruby%20%E8%A7%A3%E9%87%8A%E5%99%A8%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3C%2Ftbody%3E%3C%2Ftable%3E%3C%2Fdiv%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22280%5C%22%3E%E9%A2%84%E5%AE%9A%E4%B9%89%E7%9A%84%E5%85%A8%E5%B1%80%E5%B8%B8%E9%87%8F%3C%2Fh1%3E%3Cdiv%20class%3D%5C%22tableWrapper%5C%22%3E%3Ctable%20style%3D%5C%22min-width%3A%20112px%3B%5C%22%3E%3Ccolgroup%3E%3Ccol%3E%3Ccol%3E%3C%2Fcolgroup%3E%3Ctbody%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22281%5C%22%3ETRUE%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22282%5C%22%3E%E5%85%B8%E5%9E%8B%E7%9A%84%E7%9C%9F%E5%80%BC%E3%80%82%E5%9C%A8%20Ruby%20%E4%B8%AD%EF%BC%8C%E6%89%80%E6%9C%89%E9%9D%9E%20false%20%E5%80%BC%EF%BC%88%E9%99%A4%E4%BA%86%20nil%20%E5%92%8C%20false%20%E4%B9%8B%E5%A4%96%E7%9A%84%E6%89%80%E6%9C%89%E5%80%BC%EF%BC%89%E9%83%BD%E6%98%AF%20true%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22283%5C%22%3EFALSE%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22284%5C%22%3E%E8%99%9A%E5%81%87%E6%9C%AC%E8%BA%AB%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22285%5C%22%3ENIL%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22286%5C%22%3E%E9%9B%B6%E6%9C%AC%E8%BA%AB%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22287%5C%22%3ESTDIN%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22288%5C%22%3E%E6%A0%87%E5%87%86%E8%BE%93%E5%85%A5%E3%80%82%24stdin%20%E9%BB%98%E8%AE%A4%E5%80%BC%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22289%5C%22%3ESTDOUT%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22290%5C%22%3E%E6%A0%87%E5%87%86%E8%BE%93%E5%87%BA%E3%80%82%24stdout%20%E9%BB%98%E8%AE%A4%E5%80%BC%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22291%5C%22%3ESTDERR%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22292%5C%22%3E%E6%A0%87%E5%87%86%E9%94%99%E8%AF%AF%E8%BE%93%E5%87%BA%E3%80%82%24stderr%20%E9%BB%98%E8%AE%A4%E5%80%BC%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22293%5C%22%3EENV%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22294%5C%22%3E%E7%B1%BB%E5%93%88%E5%B8%8C%E5%AF%B9%E8%B1%A1%E5%8C%85%E5%90%AB%E5%BD%93%E5%89%8D%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F%E3%80%82%20%E5%9C%A8%20ENV%20%E4%B8%AD%E8%AE%BE%E7%BD%AE%E5%80%BC%E4%BC%9A%E6%9B%B4%E6%94%B9%E5%AD%90%E8%BF%9B%E7%A8%8B%E7%9A%84%E7%8E%AF%E5%A2%83%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22295%5C%22%3EARGF%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22296%5C%22%3E%24%26lt%3B%20%E7%9A%84%E5%88%AB%E5%90%8D%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22297%5C%22%3EARGV%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22298%5C%22%3E%24*%20%E7%9A%84%E5%88%AB%E5%90%8D%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22299%5C%22%3EDATA%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22300%5C%22%3E%E8%84%9A%E6%9C%AC%E7%9A%84%E6%96%87%E4%BB%B6%E5%AF%B9%E8%B1%A1%EF%BC%8C%E5%B0%B1%E5%9C%A8%20%3Cstrong%3EEND%3C%2Fstrong%3E%20%E4%B9%8B%E5%90%8E%E3%80%82%20%E9%99%A4%E9%9D%9E%E6%9C%AA%E4%BB%8E%E6%96%87%E4%BB%B6%E4%B8%AD%E8%AF%BB%E5%8F%96%E8%84%9A%E6%9C%AC%EF%BC%8C%E5%90%A6%E5%88%99%E6%9C%AA%E5%AE%9A%E4%B9%89%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22301%5C%22%3EVERSION%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22302%5C%22%3ERuby%20%E7%89%88%E6%9C%AC%E5%AD%97%E7%AC%A6%E4%B8%B2%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22303%5C%22%3ERUBY_RELEASE_DATE%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22304%5C%22%3E%E5%8F%91%E5%B8%83%E6%97%A5%E6%9C%9F%E5%AD%97%E7%AC%A6%E4%B8%B2%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22305%5C%22%3ERUBY_PLATFORM%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22306%5C%22%3E%E5%B9%B3%E5%8F%B0%E6%A0%87%E8%AF%86%E7%AC%A6%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3C%2Ftbody%3E%3C%2Ftable%3E%3C%2Fdiv%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22307%5C%22%3E%E6%A3%80%E6%9F%A5%E5%8F%98%E9%87%8F%E7%9A%84%E8%8C%83%E5%9B%B4%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Edefined%3F%20count%5Cn%26%2334%3Blocal-variable%26%2334%3B%5Cndefined%3F%20%40id%5Cn%26%2334%3Binstance-variable%26%2334%3B%5Cndefined%3F%20%40%40name%5Cn%26%2334%3Bclass%20variable%26%2334%3B%5Cndefined%3F%20%24version%5Cn%26%2334%3Bglobal-variable%26%2334%3B%5Cndefined%3F%20PI%5Cn%26%2334%3Bconstant%26%2334%3B%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22309%5C%22%3E%E6%95%B0%E6%8D%AE%E7%B1%BB%E5%9E%8B%3C%2Fh1%3E%3Cdiv%20class%3D%5C%22tableWrapper%5C%22%3E%3Ctable%20style%3D%5C%22min-width%3A%20224px%3B%5C%22%3E%3Ccolgroup%3E%3Ccol%3E%3Ccol%3E%3Ccol%3E%3Ccol%3E%3C%2Fcolgroup%3E%3Ctbody%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22310%5C%22%3E%3Cspan%20style%3D%5C%22color%3A%20%2310B981%3B%20--tt-darkmode-color%3A%20%2310B981%3B%5C%22%3E%E7%B1%BB%E5%9E%8B%3C%2Fspan%3E%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22311%5C%22%3E%3Cspan%20style%3D%5C%22color%3A%20%2310B981%3B%20--tt-darkmode-color%3A%20%2310B981%3B%5C%22%3E%E7%A4%BA%E4%BE%8B%3C%2Fspan%3E%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22312%5C%22%3E%3Cspan%20style%3D%5C%22color%3A%20%2310B981%3B%20--tt-darkmode-color%3A%20%2310B981%3B%5C%22%3EClass%3C%2Fspan%3E%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22313%5C%22%3E%3Cspan%20style%3D%5C%22color%3A%20%2310B981%3B%20--tt-darkmode-color%3A%20%2310B981%3B%5C%22%3E%E6%96%87%E6%A1%A3%3C%2Fspan%3E%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22314%5C%22%3EInteger%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22315%5C%22%3Ea%20%3D%2017%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22316%5C%22%3Ea.class%20%26gt%3B%20Integer%3Cbr%3Ea.class.superclass%20%26gt%3B%20Numeric%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22317%5C%22%3E%23%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22318%5C%22%3EFloat%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22319%5C%22%3Ea%20%3D%2087.23%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22320%5C%22%3Ea.class%20%26gt%3B%20Float%3Cbr%3Ea.class.superclass%20%26gt%3B%20Numeric%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22321%5C%22%3E%23%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22322%5C%22%3EString%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22323%5C%22%3Ea%20%3D%20%26%2334%3BHello%20universe%26%2334%3B%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22324%5C%22%3Ea.class%20%26gt%3B%20String%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22325%5C%22%3E%23%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22326%5C%22%3EArray%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22327%5C%22%3Ea%20%3D%20%5B12%2C%2034%5D%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22328%5C%22%3Ea.class%20%26gt%3B%20Array%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22329%5C%22%3E%23%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22330%5C%22%3EHash%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22331%5C%22%3Ea%20%3D%20%7Btype%3A%20%26%2334%3Btea%26%2334%3B%2C%20count%3A%2010%7D%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22332%5C%22%3Ea.class%20%26gt%3B%20Hash%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22333%5C%22%3E%23%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22334%5C%22%3EBoolean%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22335%5C%22%3Ea%20%3D%20false%3Cbr%3Ea%20%3D%20true%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22336%5C%22%3Ea.class%20%26gt%3B%20FalseClass%3Cbr%3Ea.class%20%26gt%3B%20TrueClass%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22337%5C%22%3ETrueClass%20FalseClass%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22338%5C%22%3ESymbol%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22339%5C%22%3Ea%20%3D%20%3Astatus%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22340%5C%22%3Ea.class%20%26gt%3B%20Symbol%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22341%5C%22%3E%23%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22342%5C%22%3ERange%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22343%5C%22%3Ea%20%3D%201..3%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22344%5C%22%3Ea.class%20%26gt%3B%20Range%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22345%5C%22%3E%23%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22346%5C%22%3ENil%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22347%5C%22%3Ea%20%3D%20nil%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22348%5C%22%3Ea.class%20%26gt%3B%20NilClass%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22349%5C%22%3E%23%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3C%2Ftbody%3E%3C%2Ftable%3E%3C%2Fdiv%3E%3Cp%20data-track%3D%5C%22350%5C%22%3E%E8%BF%9B%E4%B8%80%E6%AD%A5%E9%98%85%E8%AF%BB%3C%2Fp%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22351%5C%22%3E%E6%A3%80%E6%9F%A5%E6%95%B0%E6%8D%AE%E7%B1%BB%E5%9E%8B%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E%23%20%E4%B8%A4%E8%80%85%E9%83%BD%E6%98%AF%E5%90%8C%E4%B9%89%E8%AF%8D%5Cna%20%3D%2037%5Cna.kind_of%3F%20Integer%5Cn%23%20true%5Cna.is_a%3F%20Integer%5Cn%23%20true%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22353%5C%22%3ESymbol%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Eweek_days%20%3D%20%7Bsunday%3A%2011%2C%20monday%3A%20222%7D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22355%5C%22%3E%E6%95%B4%E6%95%B0%E6%9C%89%E7%94%A8%E7%9A%84%E6%96%B9%E6%B3%95%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E2.even%3F%5Cn%23%20true%5Cn3.even%3F%5Cn%23%20false%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22357%5C%22%3E%E8%8C%83%E5%9B%B4%3C%2Fh1%3E%3Cp%20data-track%3D%5C%22358%5C%22%3E..%20%E7%94%A8%E4%BA%8E%E5%88%9B%E5%BB%BA%E5%8C%85%E5%90%AB%E8%8C%83%E5%9B%B4%3C%2Fp%3E%3Cpre%3E%3Ccode%3Erange%20%3D%201..10%5Cnrange.to_a%5Cn%23%20%E8%BE%93%E5%87%BA%20%3D%26gt%3B%20%5B1%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%2C%2010%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%22360%5C%22%3E...%20%E7%94%A8%E4%BA%8E%E5%88%9B%E5%BB%BA%E4%B8%93%E5%B1%9E%E8%8C%83%E5%9B%B4%3C%2Fp%3E%3Cpre%3E%3Ccode%3Erange%20%3D%201...10%5Cnrange.to_a%5Cn%23%20%E8%BE%93%E5%87%BA%20%3D%26gt%3B%20%5B1%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%22362%5C%22%3E%E4%B8%80%E4%BA%9B%E6%9C%89%E7%94%A8%E7%9A%84%E6%96%B9%E6%B3%95%3C%2Fp%3E%3Cdiv%20class%3D%5C%22tableWrapper%5C%22%3E%3Ctable%20style%3D%5C%22min-width%3A%20112px%3B%5C%22%3E%3Ccolgroup%3E%3Ccol%3E%3Ccol%3E%3C%2Fcolgroup%3E%3Ctbody%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22363%5C%22%3Ecover%3F%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22364%5C%22%3E(1..5).cover%3F(5)%20%3D%26gt%3B%20true%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22365%5C%22%3Eend%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22366%5C%22%3E(%26%2339%3Ba%26%2339%3B..%26%2339%3Bz%26%2339%3B).end%20%3D%26gt%3B%20%26%2334%3Bz%26%2334%3B%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22367%5C%22%3Efirst%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22368%5C%22%3E(1..5).first%20%3D%26gt%3B%201%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22369%5C%22%3Efirst(3)%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22370%5C%22%3E(%26%2339%3BA%26%2339%3B..%26%2339%3BZ%26%2339%3B).first(2)%20%3D%26gt%3B%20%5B%26%2334%3BA%26%2334%3B%2C%20%26%2334%3BB%26%2334%3B%5D%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22371%5C%22%3Eeql%3F%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22372%5C%22%3E((0..2).eql%3F(0..5)%20%3D%26gt%3B%20false%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3C%2Ftbody%3E%3C%2Ftable%3E%3C%2Fdiv%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22373%5C%22%3E%E5%9C%A8%20Range%20%E4%B8%AD%E4%BD%BF%E7%94%A8%20step%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E(1..20).step(2)%20%7B%20%7Cnumber%7C%20puts%20%26%2334%3B%23%7Bnumber%7D%26%2334%3B%7D%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%201%5Cn%23%203%5Cn%23%205%5Cn%23%207%5Cn%23%209%5Cn%23%2011%5Cn%23%2013%5Cn%23%2015%5Cn%23%2017%5Cn%23%2019%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22375%5C%22%3E%E6%9D%A1%E4%BB%B6%E7%BB%93%E6%9E%84%3C%2Fh1%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22376%5C%22%3Eif%20%E4%BF%AE%E9%A5%B0%E7%AC%A6%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Enum%20%3D%202%5Cnputs%20%26%2339%3Btwo%26%2339%3B%20if%20num%20%3D%3D%202%20%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%22378%5C%22%3E%E5%A6%82%E6%9E%9C%E6%9D%A1%E4%BB%B6%E4%B8%BA%E7%9C%9F%EF%BC%8C%E5%88%99%E6%89%A7%E8%A1%8C%E4%BB%A3%E7%A0%81%3C%2Fp%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22379%5C%22%3Eif%20elsif%20else%20%E8%AF%AD%E5%8F%A5%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Etemp%20%3D%2019%5Cnif%20temp%20%26gt%3B%3D%2025%5Cn%20%20puts%20%26%2334%3Bhot%26%2334%3B%5Cnelsif%20temp%20%26lt%3B%2025%20%26%26%20temp%20%26gt%3B%3D%2018%5Cn%20%20puts%20%26%2334%3Bnormal%26%2334%3B%5Cnelse%5Cn%20%20puts%20%26%2334%3Bcold%26%2334%3B%5Cnend%5Cn%23%20%E8%BE%93%E5%87%BA%20%3D%26gt%3B%20normal%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22381%5C%22%3E%E9%99%A4%E9%9D%9E%E8%AF%AD%E5%8F%A5%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E%23%20%E9%99%A4%E9%9D%9E%E4%B8%8E%20if%20%E7%9B%B8%E5%8F%8D%EF%BC%8C%E5%BD%93%E8%AF%AD%E5%8F%A5%E4%B8%BA%E5%81%87%E6%97%B6%E8%BF%9B%E8%A1%8C%E8%AF%84%E4%BC%B0%5Cnname%20%3D%20%26%2334%3Brob%26%2334%3B%5Cn%23%20if%20name%20!%3D%20%26%2334%3Bbob%26%2334%3B%5Cnunless%20name%20%3D%3D%20%26%2334%3Bbob%26%2334%3B%5Cn%20%20puts%20%26%2334%3Bhello%20stranger%26%2334%3B%5Cnelse%5Cn%20%20puts%20%26%2334%3Bhello%20bob%26%2334%3B%5Cnend%5Cn%23%20%E8%BE%93%E5%87%BA%20%3D%26gt%3B%20hello%20stranger%5Cnnum%20%3D%206%5Cnputs%20%26%2339%3Bnot%20two%26%2339%3B%20unless%20num%20%3D%3D%202%5Cn%23%20%E8%BE%93%E5%87%BA%20%3D%26gt%3B%20not%20two%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22383%5C%22%3Ecase%20%E9%99%88%E8%BF%B0%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E%23%20case%20%E8%BF%94%E5%9B%9E%E6%9C%80%E5%90%8E%E6%89%A7%E8%A1%8C%E7%9A%84%E8%A1%A8%E8%BE%BE%E5%BC%8F%E7%9A%84%E5%80%BC%5Cncase%20input%5Cn%23%20%E6%A3%80%E6%9F%A5%E4%B8%80%E4%B8%AA%E6%95%B4%E6%95%B0%EF%BC%8C19%5Cnwhen%2019%5Cn%20%20puts%20%26%2334%3BIt%26%2339%3Bs%2019%26%2334%3B%5Cn%20%20%23%20%E6%A3%80%E6%9F%A5%E6%B5%AE%E7%82%B9%E6%95%B0%EF%BC%8C33.3%5Cnwhen%2033.3%5Cn%20%20puts%20%26%2334%3BIt%26%2339%3Bs%2033.3%26%2334%3B%5Cn%20%20%23%20%E6%A3%80%E6%9F%A5%E4%B8%80%E4%B8%AA%E7%A1%AE%E5%88%87%E7%9A%84%E5%AD%97%E7%AC%A6%E4%B8%B2%EF%BC%8C%E2%80%9CZaman%E2%80%9D%5Cnwhen%20%26%2334%3BZaman%26%2334%3B%5Cn%20%20puts%20%26%2334%3BHi%20Zaman%26%2334%3B%5Cnwhen%2010%5Cn%20%20puts%20%26%2334%3BIt%26%2339%3Bs%2010%26%2334%3B%5Cn%20%20%23%20%E6%A3%80%E6%9F%A5%E8%8C%83%E5%9B%B4%5Cnwhen%207..11%5Cn%20%20puts%20%26%2334%3BIt%26%2339%3Bs%20between%207%20and%2011%26%2334%3B%5Cn%20%20%23%20%E6%A3%80%E6%9F%A5%E5%A4%9A%E4%B8%AA%E5%80%BC%EF%BC%8C%E2%80%9C%E5%92%96%E5%95%A1%E2%80%9D%5Cnwhen%20%26%2334%3Btea%26%2334%3B%2C%20%26%2334%3Bcoffee%26%2334%3B%5Cn%20%20puts%20%26%2334%3BHappy%20days%26%2334%3B%5Cn%20%20%23%20%E6%A3%80%E6%9F%A5%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%BC%8F%E2%80%9CaA6%E2%80%9D%5Cnwhen%20%2F%5Ea%5BA-Z%5D%2B%5B0-6%5D%2B%24%2F%5Cn%20%20puts%20%26%2334%3BIt%26%2339%3Bs%20a%20valid%20match%26%2334%3B%5Cn%20%20%23%20%E9%80%9A%E8%BF%87%E4%B8%8E%20String%20%E7%B1%BB%E2%80%9C%E4%BB%BB%E4%BD%95%E5%AD%97%E7%AC%A6%E4%B8%B2%E2%80%9D%5Cn%20%20%23%20%E8%BF%9B%E8%A1%8C%E6%AF%94%E8%BE%83%E6%9D%A5%E6%A3%80%E6%9F%A5%E4%BB%BB%E4%BD%95%E5%AD%97%E7%AC%A6%E4%B8%B2%5Cnwhen%20String%5Cn%20%20puts%20%26%2334%3BIt%26%2339%3Bs%20a%20String%26%2334%3B%5Cnend%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22385%5C%22%3Ecase%20%E7%AE%80%E7%9F%AD%E7%9A%84%E8%AF%AD%E6%B3%95%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Ecase%20input%5Cn%20%20when%2019%20then%20puts%20%26%2334%3BIt%26%2339%3Bs%2019%26%2334%3B%5Cnend%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22387%5C%22%3Ecase%20%E5%8F%AF%E9%80%89%E7%9A%84%E5%A4%B1%E8%B4%A5%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Ecase%20input%5Cn%20%20when%2019%20then%20puts%20%26%2334%3BIt%26%2339%3Bs%2019%26%2334%3B%5Cnelse%5Cn%20%20puts%20%26%2334%3BIt%26%2339%3Bs%20not%2019%26%2334%3B%5Cnend%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22389%5C%22%3Ecase%20%E8%8E%B7%E5%8F%96%E8%BF%94%E5%9B%9E%E5%80%BC%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Emarks%20%3D%2086%5Cnresult%20%3D%20case%20marks%5Cn%20%20%20%20%20%20%20%20when%200..49%20then%20%26%2334%3BFail%26%2334%3B%5Cn%20%20%20%20%20%20%20%20when%2050..64%20then%20%26%2334%3BPass%26%2334%3B%5Cn%20%20%20%20%20%20%20%20when%2065..74%20then%20%26%2334%3BCredit%26%2334%3B%5Cn%20%20%20%20%20%20%20%20when%2075..84%20then%20%26%2334%3BDistinction%26%2334%3B%5Cn%20%20%20%20%20%20%20%20when%2085..100%20then%20%26%2334%3BHigh%20Distinction%26%2334%3B%5Cn%20%20%20%20%20%20%20%20else%20%26%2334%3BInvalid%20marks%26%2334%3B%5Cn%20%20%20%20%20%20%20%20end%5Cn%5Cnputs%20result%5Cn%23%20High%20Distinction%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22391%5C%22%3E%E5%AD%97%E7%AC%A6%E4%B8%B2%3C%2Fh1%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22392%5C%22%3E%E5%AD%97%E7%AC%A6%E4%B8%B2%E6%8F%92%E5%80%BC%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Ename%20%3D%20%26%2334%3BWorld%26%2334%3B%5Cnputs%20%26%2334%3BHello%20%23%7Bname%7D%26%2334%3B%5Cnputs%20%26%2334%3BThe%20total%20is%20%23%7B1%2B1%7D%26%2334%3B%5Cn%23%20%26%2334%3Bthe%20total%20is%202%26%2334%3B%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%22394%5C%22%3E%E5%AD%97%E7%AC%A6%E4%B8%B2%E6%8F%92%E5%80%BC%E5%85%81%E8%AE%B8%E6%82%A8%E5%B0%86%E5%AD%97%E7%AC%A6%E4%B8%B2%E7%BB%84%E5%90%88%E5%9C%A8%E4%B8%80%E8%B5%B7%3C%2Fp%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22395%5C%22%3E%E6%8F%90%E5%8F%96%E5%AD%90%E5%AD%97%E7%AC%A6%E4%B8%B2%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Estring%20%3D%20%26%2334%3Babc123%26%2334%3B%5Cnstring%5B0%2C3%5D%5Cn%23%20%26%2334%3Babc%26%2334%3B%5Cnstring%5B3%2C3%5D%5Cn%23%20%26%2334%3B123%26%2334%3B%5Cnstring%5B0..-2%5D%5Cn%23%20%26%2334%3Babc12%26%2334%3B%5Cn%23remove%20or%20replace%20the%20substring%5Cnstring%5B0..2%5D%20%3D%20%26%2334%3B%26%2334%3B%5Cnputs%20string%5Cn%23%20%26%2334%3B123%26%2334%3B%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%22397%5C%22%3E%E5%AD%90%E5%AD%97%E7%AC%A6%E4%B8%B2%E6%98%AF%E5%AD%97%E7%AC%A6%E4%B8%B2%E7%9A%84%E4%B8%80%E5%B0%8F%E9%83%A8%E5%88%86%EF%BC%8C%E5%A6%82%E6%9E%9C%E4%BD%A0%E5%8F%AA%E6%83%B3%E8%A6%81%E9%82%A3%E4%B8%AA%E7%89%B9%E5%AE%9A%E7%9A%84%E9%83%A8%E5%88%86%EF%BC%8C%E5%AE%83%E4%BC%9A%E5%BE%88%E6%9C%89%E7%94%A8%EF%BC%8C%E6%AF%94%E5%A6%82%E5%BC%80%E5%A4%B4%E3%80%81%E4%B8%AD%E9%97%B4%E6%88%96%E7%BB%93%E5%B0%BE%3C%2Fp%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22398%5C%22%3E%E5%B0%86%E5%AD%97%E7%AC%A6%E4%B8%B2%E8%BD%AC%E6%8D%A2%E4%B8%BA%E5%B0%8F%E5%86%99%E6%88%96%E5%A4%A7%E5%86%99%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E%26%2334%3BHELLO%20World%26%2334%3B.downcase%20%20%23%20%26%2334%3Bhello%20world%26%2334%3B%5Cn%26%2334%3Bhello%20worlD%26%2334%3B.upcase%20%20%20%20%23%20%26%2334%3BHELLO%20WORLD%26%2334%3B%5Cn%26%2334%3BhEllo%20wOrlD%26%2334%3B.capitalize%20%23%20%26%2334%3BHello%20world%26%2334%3B%5Cn%26%2334%3BhEllo%20WOrlD%26%2334%3B.swapcase%20%20%23%20%26%2334%3BHeLLO%20woRLd%26%2334%3B%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22400%5C%22%3E%E6%9C%89%E7%94%A8%E7%9A%84%E6%96%B9%E6%B3%95%3C%2Fh1%3E%3Cdiv%20class%3D%5C%22tableWrapper%5C%22%3E%3Ctable%20style%3D%5C%22min-width%3A%20168px%3B%5C%22%3E%3Ccolgroup%3E%3Ccol%3E%3Ccol%3E%3Ccol%3E%3C%2Fcolgroup%3E%3Ctbody%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22401%5C%22%3Elength%20or%20size%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22402%5C%22%3E%26%2334%3BHELLO%20World%26%2334%3B.length%20%3D%26gt%3B%2011%3Cbr%3E%26%2334%3BHELLO%20World%26%2334%3B.size%20%3D%26gt%3B%2011%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22403%5C%22%3E%E8%BF%94%E5%9B%9E%E5%AD%97%E7%AC%A6%E4%B8%B2%E7%9A%84%E9%95%BF%E5%BA%A6%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22404%5C%22%3Ereverse%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22405%5C%22%3E%26%2334%3Bhello%20worlD%26%2334%3B.reverse%20%3D%26gt%3B%20%26%2334%3BDlrow%20olleh%26%2334%3B%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22406%5C%22%3E%E8%BF%94%E5%9B%9E%E5%8F%8D%E8%BD%AC%E7%9A%84%E5%AD%97%E7%AC%A6%E4%B8%B2%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22407%5C%22%3Einclude%3F%20other_str%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22408%5C%22%3E%26%2334%3BhEllo%20wOrlD%26%2334%3B.include%3F%20%26%2334%3Bw%26%2334%3B%20%3D%26gt%3B%20true%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22409%5C%22%3E%E5%A6%82%E6%9E%9C%E5%AD%97%E7%AC%A6%E4%B8%B2%E6%88%96%E5%AD%97%E7%AC%A6%E5%AD%98%E5%9C%A8%E5%88%99%E8%BF%94%E5%9B%9E%20true%EF%BC%8C%E5%90%A6%E5%88%99%E8%BF%94%E5%9B%9E%20false%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22410%5C%22%3Egsub(pattern%2C%20replacement)%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22411%5C%22%3E%26%2334%3BhEllo%20wOrlD%26%2334%3B.gsub(%26%2334%3B%20%26%2334%3B%2C%20%26%2334%3B_%26%2334%3B)%20%3D%26gt%3B%20%26%2334%3BhEllo_wOrlD%26%2334%3B%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22412%5C%22%3Egsub%20%E6%88%96%E5%85%A8%E5%B1%80%E6%9B%BF%E6%8D%A2%E7%94%A8%E6%8F%90%E4%BE%9B%E7%9A%84%E5%AD%97%E7%AC%A6%E4%B8%B2%E6%9B%BF%E6%8D%A2%E4%B8%80%E4%B8%AA%E6%88%96%E5%A4%9A%E4%B8%AA%E5%AD%97%E7%AC%A6%E4%B8%B2%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22413%5C%22%3Egsub(pattern%2C%20hash)%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22414%5C%22%3E%26%2334%3Borganization%26%2334%3B.gsub(%26%2334%3Bz%26%2334%3B%2C%20%26%2339%3Bz%26%2339%3B%20%3D%26gt%3B%20%26%2339%3Bs%26%2339%3B)%20%3D%26gt%3B%20%26%2334%3Borganisation%26%2334%3B%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22415%5C%22%3Egsub%20%E6%88%96%E5%85%A8%E5%B1%80%E6%9B%BF%E6%8D%A2%E7%94%A8%E6%8F%90%E4%BE%9B%E7%9A%84%E5%93%88%E5%B8%8C%E6%9B%BF%E6%8D%A2%E4%B8%80%E4%B8%AA%E6%88%96%E5%A4%9A%E4%B8%AA%E5%AD%97%E7%AC%A6%E4%B8%B2%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22416%5C%22%3Egsub(pattern)%20%7B%20%7Cmatch%7C%20block%7D%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22417%5C%22%3E%26%2334%3BPrice%20of%20the%20phone%20is%201000%20AUD%26%2334%3B.gsub(%2F%5C%5Cd%2B%2F)%20%7B%20%7Cs%7C%20%26%2339%3B%24%26%2339%3B%2Bs%20%7D%3Cbr%3E%26%2334%3BPrice%20of%20the%20phone%20is%20%241000%20AUD%26%2334%3B%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22418%5C%22%3Egsub%20%E6%88%96%E5%85%A8%E5%B1%80%E6%9B%BF%E6%8D%A2%E7%94%A8%E6%8F%90%E4%BE%9B%E7%9A%84%E5%9D%97%E6%9B%BF%E6%8D%A2%E4%B8%80%E4%B8%AA%E6%88%96%E5%A4%9A%E4%B8%AA%E5%AD%97%E7%AC%A6%E4%B8%B2%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22419%5C%22%3Estrip%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22420%5C%22%3E%26%2334%3B%20hEllo%20WOrlD%20%26%2334%3B.strip%3Cbr%3E%26%2334%3BhEllo%20WOrlD%26%2334%3B%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22421%5C%22%3E%E5%AE%83%E5%B0%86%E5%88%A0%E9%99%A4%EF%BC%88%E4%BF%AE%E5%89%AA%EF%BC%89%E4%BB%A5%E4%B8%8B%E4%BB%BB%E4%BD%95%E5%89%8D%E5%AF%BC%E5%92%8C%E5%B0%BE%E9%9A%8F%E5%AD%97%E7%AC%A6%EF%BC%9Anull%EF%BC%88%E2%80%9C%5C%5Cx00%E2%80%9D%EF%BC%89%E3%80%81%E6%B0%B4%E5%B9%B3%E5%88%B6%E8%A1%A8%E7%AC%A6%EF%BC%88%E2%80%9C%5C%5Ct%E2%80%9D%EF%BC%89%E3%80%81%E6%8D%A2%E8%A1%8C%E7%AC%A6%EF%BC%88%5C%5Cn%EF%BC%89%E3%80%81%E5%9E%82%E7%9B%B4%E5%88%B6%E8%A1%A8%E7%AC%A6%EF%BC%88%E2%80%9C%5C%5Cv%E2%80%9D%EF%BC%89%E3%80%81%E6%8D%A2%E9%A1%B5%E7%AC%A6(f)%E3%80%81%E5%9B%9E%E8%BD%A6(%5C%5Cr)%E3%80%81%E7%A9%BA%E6%A0%BC(%26%2334%3B%20%26%2334%3B)%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22422%5C%22%3Eprepend%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22423%5C%22%3Ea%20%3D%20%26%2334%3Bworld%26%2334%3B%20%26lt%3Bbr%26gt%3B%20a.prepend(%26%2334%3Bhello%20%26%2334%3B)%3Cbr%3E%26%2334%3Bhello%20world%26%2334%3B%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22424%5C%22%3E%E5%9C%A8%E5%8F%A6%E4%B8%80%E4%B8%AA%E5%AD%97%E7%AC%A6%E4%B8%B2%E4%B9%8B%E5%89%8D%E6%B7%BB%E5%8A%A0%E5%AD%97%E7%AC%A6%E4%B8%B2%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22425%5C%22%3Einsert%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22426%5C%22%3Ea%20%3D%20%26%2334%3Bhello%26%2334%3B%20%26lt%3Bbr%26gt%3B%20a.insert(a.length%2C%20%26%2334%3B%20world%26%2334%3B)%3Cbr%3E%26%2334%3Bhello%20world%26%2334%3B%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22427%5C%22%3E%E5%9C%A8%E7%89%B9%E5%AE%9A%E4%BD%8D%E7%BD%AE%E6%8F%92%E5%85%A5%E5%AD%97%E7%AC%A6%E4%B8%B2%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22428%5C%22%3Estart_with%3F%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22429%5C%22%3Estring%20%3D%20%26%2334%3Bruby%20programming%26%2334%3B%3Cbr%3Estring.start_with%3F%20%26%2334%3Bruby%26%2334%3B%3Cbr%3Etrue%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22430%5C%22%3E%E6%A3%80%E6%9F%A5%E5%AD%97%E7%AC%A6%E4%B8%B2%E6%98%AF%E5%90%A6%E4%BB%A5%E7%89%B9%E5%AE%9A%E5%89%8D%E7%BC%80%E5%BC%80%E5%A4%B4%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22431%5C%22%3Eend_with%3F%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22432%5C%22%3Estring%20%3D%20%26%2334%3Bruby%20programming%26%2334%3B%3Cbr%3Estring.end_with%3F%20%26%2334%3Bruby%26%2334%3B%3Cbr%3Efalse%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22433%5C%22%3E%E6%A3%80%E6%9F%A5%E5%AD%97%E7%AC%A6%E4%B8%B2%E6%98%AF%E5%90%A6%E4%BB%A5%E7%89%B9%E5%AE%9A%E5%89%8D%E7%BC%80%E7%BB%93%E5%B0%BE%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22434%5C%22%3Edelete_suffix%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22435%5C%22%3Estring%20%3D%20%26%2334%3Bsausage%20is%20expensive%26%2334%3B%3Cbr%3Estring.delete_suffix(%26%2334%3B%20is%20expensive%26%2334%3B)%3Cbr%3E%26%2334%3Bsausage%26%2334%3B%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22436%5C%22%3E%E4%BB%8E%E5%AD%97%E7%AC%A6%E4%B8%B2%E4%B8%AD%E5%88%A0%E9%99%A4%E5%90%8E%E7%BC%80%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22437%5C%22%3Edelete_prefix%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22438%5C%22%3Estring%20%3D%20%26%2334%3Bsausage%20is%20expensive%26%2334%3B%3Cbr%3Estring.delete_prefix(%26%2334%3Bsausage%26%2334%3B)%3Cbr%3E%26%2334%3B%20is%20expensive%26%2334%3B%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22439%5C%22%3E%E4%BB%8E%E5%AD%97%E7%AC%A6%E4%B8%B2%E4%B8%AD%E5%88%A0%E9%99%A4%E5%89%8D%E7%BC%80%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22440%5C%22%3Esplit%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22441%5C%22%3Estring%20%3D%20%26%2334%3Ba%20b%20c%20d%26%2334%3B%20%26lt%3Bbr%26gt%3B%20string.split%3Cbr%3E%5B%26%2334%3Ba%26%2334%3B%2C%20%26%2334%3Bb%26%2334%3B%2C%20%26%2334%3Bc%26%2334%3B%2C%20%26%2334%3Bd%26%2334%3B%5D%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22442%5C%22%3E%E5%B0%86%E5%AD%97%E7%AC%A6%E4%B8%B2%E8%BD%AC%E6%8D%A2%E4%B8%BA%E5%AD%97%E7%AC%A6%E6%95%B0%E7%BB%84%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22443%5C%22%3Ejoin%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22444%5C%22%3Earr%20%3D%20%5B%26%2339%3Ba%26%2339%3B%2C%20%26%2339%3Bb%26%2339%3B%2C%20%26%2339%3Bc%26%2339%3B%5D%20%26lt%3Bbr%26gt%3B%20arr.join%20%3D%26gt%3B%20%26%2334%3Babc%26%2334%3B%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22445%5C%22%3E%E5%B0%86%E6%95%B0%E7%BB%84%E8%BD%AC%E6%8D%A2%E4%B8%BA%E5%AD%97%E7%AC%A6%E4%B8%B2%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22446%5C%22%3Eto_i%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22447%5C%22%3Ea%20%3D%20%26%2334%3B49%26%2334%3B%20%26lt%3Bbr%26gt%3B%20a.to_i%20%3D%26gt%3B%2049%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22448%5C%22%3E%E5%B0%86%E5%AD%97%E7%AC%A6%E4%B8%B2%E8%BD%AC%E6%8D%A2%E4%B8%BA%E6%95%B4%E6%95%B0%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22449%5C%22%3Echop%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22450%5C%22%3E%26%2334%3Babcd%3F%26%2334%3B.chop(%26%2334%3B%3F%26%2334%3B)%20%3D%26gt%3B%20%26%2334%3Babcd%26%2334%3B%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22451%5C%22%3E%E4%BB%8E%E5%AD%97%E7%AC%A6%E4%B8%B2%E4%B8%AD%E5%88%A0%E9%99%A4%E6%9C%80%E5%90%8E%E4%B8%80%E4%B8%AA%E5%AD%97%E7%AC%A6%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22452%5C%22%3Ecount%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22453%5C%22%3Estr%20%3D%20%26%2334%3Baaab%26%2334%3B%20%26lt%3Bbr%26gt%3B%20str.count(%26%2334%3Ba%26%2334%3B)%3Cbr%3E3%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22454%5C%22%3E%E8%AE%A1%E7%AE%97%E5%AD%97%E7%AC%A6%E4%B8%B2%E4%B8%AD%E7%9A%84%E5%AD%97%E7%AC%A6%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22455%5C%22%3Eto_f%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22456%5C%22%3Ea%20%3D%20%26%2334%3B49%26%2334%3B%3Cbr%3Ea.to_f%3Cbr%3E49.0%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22457%5C%22%3E%E5%B0%86%E5%AD%97%E7%AC%A6%E4%B8%B2%E8%BD%AC%E6%8D%A2%E4%B8%BA%E6%B5%AE%E7%82%B9%E6%95%B0%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22458%5C%22%3Eto_sym%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22459%5C%22%3Ea%20%3D%20%26%2334%3Bkey%26%2334%3B%3Cbr%3Ea.to_sym%3Cbr%3E%3Akey%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22460%5C%22%3E%E5%B0%86%E5%AD%97%E7%AC%A6%E4%B8%B2%E8%BD%AC%E6%8D%A2%E4%B8%BA%E7%AC%A6%E5%8F%B7%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22461%5C%22%3Ematch%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22462%5C%22%3E%26%2334%3Babcd%3F%26%2334%3B.match(%2Fab%2F)%20%3D%26gt%3B%20%23%26lt%3BMatchData%20%26%2334%3Bab%26%2334%3B%26gt%3B%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22463%5C%22%3E%E5%B0%86%E6%A8%A1%E5%BC%8F%E8%BD%AC%E6%8D%A2%E4%B8%BA%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%BC%8F%E5%B9%B6%E5%9C%A8%E5%AD%97%E7%AC%A6%E4%B8%B2%E4%B8%8A%E8%B0%83%E7%94%A8%E5%85%B6%E5%8C%B9%E9%85%8D%E6%96%B9%E6%B3%95%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22464%5C%22%3Eempty%3F%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22465%5C%22%3E%26%2334%3Bhello%26%2334%3B.empty%3F%20%3D%26gt%3B%20false%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22466%5C%22%3E%E5%A6%82%E6%9E%9C%E5%AD%97%E7%AC%A6%E4%B8%B2%E7%9A%84%E9%95%BF%E5%BA%A6%E4%B8%BA%E9%9B%B6%EF%BC%8C%E5%88%99%E8%BF%94%E5%9B%9E%20true%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22467%5C%22%3Esqueeze%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22468%5C%22%3E%26%2334%3BBooook%26%2334%3B.squeeze%20%3D%26gt%3B%20%26%2334%3BBok%26%2334%3B%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22469%5C%22%3E%E8%BF%94%E5%9B%9E%E5%AD%97%E7%AC%A6%E4%B8%B2%E7%9A%84%E5%89%AF%E6%9C%AC%EF%BC%8C%E5%85%B6%E4%B8%AD%E7%9B%B8%E5%90%8C%E5%AD%97%E7%AC%A6%E7%9A%84%E8%BF%90%E8%A1%8C%E8%A2%AB%E5%8D%95%E4%B8%AA%E5%AD%97%E7%AC%A6%E6%9B%BF%E6%8D%A2%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22470%5C%22%3E*%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22471%5C%22%3Eputs%20%26%2334%3BRuby%20%26%2334%3B%20*%204%20%3D%26gt%3B%20Ruby%20Ruby%20Ruby%20Ruby%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22472%5C%22%3E%E8%BF%94%E5%9B%9E%E5%A4%9A%E4%B8%AA%20self%20%E5%89%AF%E6%9C%AC%E7%9A%84%E4%B8%B2%E8%81%94%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22473%5C%22%3E%2B%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22474%5C%22%3E%26%2334%3Bsammy%20%26%2334%3B%20%2B%20%26%2334%3Bshark%26%2334%3B%20%3D%26gt%3B%20%26%2334%3Bsammyshark%26%2334%3B%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22475%5C%22%3E%E8%BF%94%E5%9B%9E%20self%20%E5%92%8C%E7%BB%99%E5%AE%9A%E7%9A%84%E5%85%B6%E4%BB%96%E5%AD%97%E7%AC%A6%E4%B8%B2%E7%9A%84%E8%BF%9E%E6%8E%A5%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22476%5C%22%3Eeql%3F%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22477%5C%22%3Es%20%3D%20%26%2339%3Bfoo%26%2339%3B%20%3D%26gt%3B%20true%3Cbr%3Es.eql%3F(%26%2339%3Bfoo%26%2339%3B)%20%3D%26gt%3B%20true%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22478%5C%22%3E%E5%A6%82%E6%9E%9C%E5%AF%B9%E8%B1%A1%E5%85%B7%E6%9C%89%E7%9B%B8%E5%90%8C%E7%9A%84%E9%95%BF%E5%BA%A6%E5%92%8C%E5%86%85%E5%AE%B9%EF%BC%8C%E5%88%99%E8%BF%94%E5%9B%9E%20true%EF%BC%9B%E4%BD%9C%E4%B8%BA%E8%87%AA%E5%B7%B1%EF%BC%9B%E5%90%A6%E5%88%99%E4%B8%BA%E5%81%87%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22479%5C%22%3E%2B%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22480%5C%22%3E%26%2334%3Bsammy%20%26%2334%3B%20%2B%20%26%2334%3Bshark%26%2334%3B%20%3D%26gt%3B%20%26%2334%3Bsammyshark%26%2334%3B%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22481%5C%22%3E%E8%BF%94%E5%9B%9E%20self%20%E5%92%8C%E7%BB%99%E5%AE%9A%E7%9A%84%E5%85%B6%E4%BB%96%E5%AD%97%E7%AC%A6%E4%B8%B2%E7%9A%84%E8%BF%9E%E6%8E%A5%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22482%5C%22%3E%2B%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22483%5C%22%3E%26%2334%3Bsammy%20%26%2334%3B%20%2B%20%26%2334%3Bshark%26%2334%3B%20%3D%26gt%3B%20%26%2334%3Bsammyshark%26%2334%3B%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22484%5C%22%3E%E8%BF%94%E5%9B%9E%20self%20%E5%92%8C%E7%BB%99%E5%AE%9A%E7%9A%84%E5%85%B6%E4%BB%96%E5%AD%97%E7%AC%A6%E4%B8%B2%E7%9A%84%E8%BF%9E%E6%8E%A5%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3C%2Ftbody%3E%3C%2Ftable%3E%3C%2Fdiv%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22485%5C%22%3E%E6%96%B9%E6%B3%95%3C%2Fh1%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22486%5C%22%3E%E5%A3%B0%E6%98%8E%E4%B8%80%E4%B8%AA%E6%96%B9%E6%B3%95%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Edef%20method_name(parameter1%2C%20parameter2)%5Cn%20%20%20%20puts%20%26%2334%3B%23%7Bparameter1%7D%20%23%7Bparameter2%7D%26%2334%3B%5Cn%20%20%20%20parameter1%20%2B%20parameter2%5Cnend%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Chr%3E%3Cpre%3E%3Ccode%3Eres%20%3D%20method_name(20%2C%2010)%5Cn%23%20%E8%BE%93%E5%87%BA%20%3D%26gt%3B%2030%5Cndef%20method_name(parameter1%2C%20parameter2)%5Cn%20%20%20%20puts%20%26%2334%3B%23%7Bparameter1%7D%20%23%7Bparameter2%7D%26%2334%3B%5Cn%20%20%20%20return%20parameter1%20%2B%20parameter2%5Cnend%5Cn%23%20%E8%BE%93%E5%87%BA%20%3D%26gt%3B%2030%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22489%5C%22%3E%E8%B0%83%E7%94%A8%E6%96%B9%E6%B3%95%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Eres%20%3D%20method_name(parameter1%2C%20parameter2)%5Cn%23%20%E5%8F%AF%E4%BB%A5%E8%B0%83%E7%94%A8%E4%B8%8D%E5%B8%A6%E6%8B%AC%E5%8F%B7%E7%9A%84%E6%96%B9%E6%B3%95%5Cnres%20%3D%20method_name%20parameter1%2C%20parameter2%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22491%5C%22%3E%E7%B1%BB%E6%96%B9%E6%B3%95%3C%2Fh1%3E%3Cp%20data-track%3D%5C%22492%5C%22%3E%E7%B1%BB%E6%96%B9%E6%B3%95%E6%98%AF%E7%B1%BB%E7%BA%A7%E5%88%AB%E7%9A%84%E6%96%B9%E6%B3%95%E3%80%82%20%E6%9C%89%E5%A4%9A%E7%A7%8D%E5%AE%9A%E4%B9%89%E7%B1%BB%E6%96%B9%E6%B3%95%E7%9A%84%E6%96%B9%E6%B3%95%3C%2Fp%3E%3Cpre%3E%3Ccode%3Eclass%20Mobile%5Cn%20%20%20%20def%20self.ring%5Cn%20%20%20%20%20%20%20%20%26%2334%3Bring%20ring%20ring...%26%2334%3B%5Cn%20%20%20%20end%5Cnend%5Cn%5CnMobile.ring%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Chr%3E%3Cpre%3E%3Ccode%3Eclass%20Mobile%5Cn%20%20%20%20def%20Mobile.ring%5Cn%20%20%20%20%20%20%20%20%26%2334%3Bring%20ring%20ring...%26%2334%3B%5Cn%20%20%20%20end%5Cnend%5CnMobile.ring%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Chr%3E%3Cpre%3E%3Ccode%3Eclass%20Mobile%5Cn%20%20%20%20class%20%26lt%3B%26lt%3B%20self%5Cn%20%20%20%20def%20ring%5Cn%20%20%20%20%20%20%20%20%26%2334%3Bring%20ring%20ring...%26%2334%3B%5Cn%20%20%20%20%20%20%20end%5Cn%20%20%20%20end%5Cnend%5CnMobile.ring%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%22496%5C%22%3E%E7%B1%BB%E6%96%B9%E6%B3%95%E6%98%AF%E7%B1%BB%E5%AF%B9%E8%B1%A1%E7%9A%84%E5%AE%9E%E4%BE%8B%E6%96%B9%E6%B3%95%E3%80%82%20%E5%BD%93%E5%88%9B%E5%BB%BA%E4%B8%80%E4%B8%AA%E6%96%B0%E7%B1%BB%E6%97%B6%EF%BC%8C%E2%80%9CClass%E2%80%9D%E7%B1%BB%E5%9E%8B%E7%9A%84%E5%AF%B9%E8%B1%A1%E8%A2%AB%E5%88%9D%E5%A7%8B%E5%8C%96%E5%B9%B6%E5%88%86%E9%85%8D%E7%BB%99%E4%B8%80%E4%B8%AA%E5%85%A8%E5%B1%80%E5%B8%B8%E9%87%8F%EF%BC%88%E5%9C%A8%E6%9C%AC%E4%BE%8B%E4%B8%AD%E4%B8%BA%20Mobile%EF%BC%89%3C%2Fp%3E%3Cpre%3E%3Ccode%3EMobile%20%3D%20Class.new%20do%5Cn%20%20%20%20def%20self.ring%5Cn%20%20%20%20%20%20%20%20%26%2334%3Bring%20ring%20ring...%26%2334%3B%5Cn%20%20%20%20end%5Cnend%5CnMobile.ring%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cpre%3E%3Ccode%3EMobile%20%3D%20Class.new%5Cnclass%20%26lt%3B%26lt%3B%20Mobile%5Cn%20%20%20%20def%20ring%5Cn%20%20%20%20%20%20%20%20%26%2334%3Bring%20ring%20ring...%26%2334%3B%5Cn%20%20%20%20end%5Cnend%5CnMobile.ring%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22499%5C%22%3E%E4%BD%BF%E7%94%A8%E5%8F%A6%E4%B8%80%E4%B8%AA%E5%8F%82%E6%95%B0%E4%BD%9C%E4%B8%BA%E9%BB%98%E8%AE%A4%E5%80%BC%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Edef%20method_name(num1%2C%20num2%20%3D%20num1)%5Cn%20%20%20%20return%20num1%20%2B%20num2%5Cnend%5Cnres%20%3D%20method_name(10)%5Cn%23%20%E8%BE%93%E5%87%BA%20%3D%26gt%3B%2020%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22501%5C%22%3E%E4%B8%BA%E6%96%B9%E6%B3%95%E5%8F%82%E6%95%B0%E5%AE%9A%E4%B9%89%E9%BB%98%E8%AE%A4%E5%80%BC%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Edef%20method_name(parameter1%2C%20parameter2%2C%20type%20%3D%20%26%2334%3BADD%26%2334%3B)%5Cn%20%20%20%20puts%20%26%2334%3B%23%7Bparameter1%7D%20%23%7Bparameter2%7D%26%2334%3B%5Cn%20%20%20%20return%20parameter1%20%2B%20parameter2%20if%20type%20%3D%3D%20%26%2334%3BADD%26%2334%3B%5Cn%20%20%20%20return%20parameter1%20-%20parameter2%20if%20type%20%3D%3D%20%26%2334%3BSUB%26%2334%3B%5Cnend%5Cnres%20%3D%20method_name(20%2C%2010)%5Cn%23%20%E8%BE%93%E5%87%BA%20%3D%26gt%3B%2030%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22503%5C%22%3E%E5%B0%86%E5%8F%AF%E5%8F%98%E9%95%BF%E5%BA%A6%E5%8F%82%E6%95%B0%E4%BC%A0%E9%80%92%E7%BB%99%E6%96%B9%E6%B3%95%E5%8F%82%E6%95%B0%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Edef%20method_name(type%2C%20*values)%5Cn%20%20%20%20return%20values.reduce(%3A%2B)%20if%20type%20%3D%3D%20%26%2334%3BADD%26%2334%3B%5Cn%20%20%20%20return%20values.reduce(%3A-)%20if%20type%20%3D%3D%20%26%2334%3BSUB%26%2334%3B%5Cnend%5Cnnumbers%20%3D%20%5B2%2C%202%2C%202%2C%203%2C%203%2C%203%5D%5Cnres%20%3D%20method_name(%26%2334%3BADD%26%2334%3B%2C%20*numbers)%5Cn%23%20%E8%BE%93%E5%87%BA%20%3D%26gt%3B%2015%5Cnres%20%3D%20method_name(%26%2334%3BSUB%26%2334%3B%2C%20*numbers)%5Cn%23%20%E8%BE%93%E5%87%BA%20%3D%26gt%3B%20-11%5Cn%23%20%E6%88%96%E8%80%85%E6%82%A8%E5%8F%AF%E4%BB%A5%E6%8F%90%E4%BE%9B%E8%BF%99%E6%A0%B7%E7%9A%84%E5%80%BC%5Cnres%20%3D%20method_name(%26%2334%3BADD%26%2334%3B%2C%202%2C%202%2C%202%2C%203%2C%203%2C%203)%5Cn%23%20%E8%BE%93%E5%87%BA%20%3D%26gt%3B%2015%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22505%5C%22%3E%E4%BF%AE%E6%94%B9%E5%AF%B9%E8%B1%A1%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Ea%20%3D%20%5B%26%2334%3BDrama%26%2334%3B%2C%20%26%2334%3BMystery%26%2334%3B%2C%20%26%2334%3BCrime%26%2334%3B%2C%5Cn%26%2334%3BSci-fi%26%2334%3B%2C%20%26%2334%3BDisaster%26%2334%3B%2C%20%26%2334%3BThriller%26%2334%3B%5D%5Cna.sort%5Cnputs%20a%5Cn%23%20%E6%88%91%E4%BB%AC%E6%B2%A1%E6%9C%89%E4%BF%AE%E6%94%B9%E5%AF%B9%E8%B1%A1%5Cn%23%20Drama%5Cn%23%20Mystery%5Cn%23%20Crime%5Cn%23%20Sci-fi%5Cn%23%20Disaster%5Cn%23%20Thriller%5Cna.sort!%5Cnputs%20a%5Cn%23%20%E4%BF%AE%E6%94%B9%E5%AF%B9%E8%B1%A1%5Cn%23%20Crime%5Cn%23%20Disaster%5Cn%23%20Drama%5Cn%23%20Mystery%5Cn%23%20Sci-fi%5Cn%23%20Thriller%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%22507%5C%22%3E%E5%BD%93%E6%82%A8%E8%A6%81%E4%BF%AE%E6%94%B9%E5%AF%B9%E8%B1%A1%E6%97%B6%EF%BC%8C%E5%9C%A8%E6%96%B9%E6%B3%95%E4%B9%8B%E5%90%8E%E4%BD%BF%E7%94%A8%20!%3C%2Fp%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22508%5C%22%3E%E5%B8%83%E5%B0%94%E6%96%B9%E6%B3%95%3C%2Fh1%3E%3Cp%20data-track%3D%5C%22509%5C%22%3E%E5%9C%A8%20ruby%20%E4%B8%AD%EF%BC%8C%E4%BB%A5%E9%97%AE%E5%8F%B7%20(%3F)%20%E7%BB%93%E5%B0%BE%E7%9A%84%E6%96%B9%E6%B3%95%E7%A7%B0%E4%B8%BA%E5%B8%83%E5%B0%94%E6%96%B9%E6%B3%95%EF%BC%8C%E5%AE%83%E8%BF%94%E5%9B%9E%20true%20%E6%88%96%20false%3C%2Fp%3E%3Cpre%3E%3Ccode%3E%26%2334%3Bsome%20text%26%2334%3B.nil%3F%5Cn%23%20false%5Cnnil.nil%3F%5Cn%23%20true%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%22511%5C%22%3E%E6%82%A8%E5%8F%AF%E4%BB%A5%E6%8B%A5%E6%9C%89%E8%87%AA%E5%B7%B1%E7%9A%84%E5%B8%83%E5%B0%94%E6%96%B9%E6%B3%95%3C%2Fp%3E%3Cpre%3E%3Ccode%3Edef%20is_vowel%3F(char)%5Cn%20%20%20%20%5B%26%2339%3Ba%26%2339%3B%2C%26%2339%3Be%26%2339%3B%2C%26%2339%3Bi%26%2339%3B%2C%26%2339%3Bo%26%2339%3B%2C%26%2339%3Bu%26%2339%3B%5D.include%3F%20char%5Cnend%5Cnis_vowel%3F%20%26%2339%3Ba%26%2339%3B%5Cn%23%20true%5Cnis_vowel%3F%20%26%2339%3Bb%26%2339%3B%5Cn%23%20false%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22513%5C%22%3EBlocks%20(%E5%9D%97)%3C%2Fh1%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22514%5C%22%3E%E5%9D%97%E7%A4%BA%E4%BE%8B%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E%23%20return%20value%5Cndef%20give_me_data%5Cn%20%20%20%20data%20%3D%20yield%5Cn%20%20%20%20puts%20%26%2334%3Bdata%20%3D%20%23%7Bdata%7D%26%2334%3B%5Cnend%5Cngive_me_data%20%7B%20%26%2334%3BBig%20data%26%2334%3B%20%7D%5Cn%23%20%E8%BE%93%E5%87%BA%20%3D%26gt%3B%20data%20%3D%20Big%20data%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%22516%5C%22%3Edo%20%E5%92%8C%20end%EF%BC%88%E7%94%A8%E4%BA%8E%E5%A4%9A%E8%A1%8C%EF%BC%89%E6%88%96%E8%8A%B1%E6%8B%AC%E5%8F%B7%20%7B%20%E5%92%8C%20%7D%EF%BC%88%E7%94%A8%E4%BA%8E%E5%8D%95%E8%A1%8C%EF%BC%89%E4%B9%8B%E9%97%B4%E7%9A%84%E4%BB%A3%E7%A0%81%E7%A7%B0%E4%B8%BA%E5%9D%97%EF%BC%8C%E5%AE%83%E4%BB%AC%E5%8F%AF%E4%BB%A5%E5%9C%A8%E4%B8%A4%E4%B8%AA%E7%AE%A1%E9%81%93%E4%B9%8B%E9%97%B4%E5%AE%9A%E4%B9%89%E5%A4%9A%E4%B8%AA%E5%8F%82%E6%95%B0%20(%7Carg1%2C%20arg2%7C)%3C%2Fp%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22517%5C%22%3E%E5%8D%95%E8%A1%8C%E5%9D%97%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Esalary%20%3D%20%5B399%2C%20234%2C%20566%2C%20533%2C%20233%5D%5Cnsalary.each%20%7B%20%7Cs%7C%20puts%20s%20%7D%5Cn%23%20puts%20s%20%3D%20block%20body%5Cn%23%20%7Cs%7C%20%3D%20block%20arugments%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22519%5C%22%3E%E5%A4%9A%E8%A1%8C%E5%9D%97%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Esalary.each%20do%20%7Cs%7C%5Cn%20%20%20%20a%20%3D%2010%5Cn%20%20%20%20res%20%3D%20a%20*%20s%5Cn%20%20%20%20puts%20res%5Cnend%5Cn%23%20%E5%9D%97%E4%BD%93%5Cn%23%20a%20%3D%2010%5Cn%23%20res%20%3D%20a%20*%20s%5Cn%23%20puts%20res%5Cn%23%20%E5%9D%97%E5%8F%82%E6%95%B0%5Cn%23%20%7Cs%7C%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%22521%5C%22%3E%E5%9D%97%E5%8F%AF%E4%BB%A5%E4%BD%9C%E4%B8%BA%E6%96%B9%E6%B3%95%E5%8F%82%E6%95%B0%E4%BC%A0%E9%80%92%EF%BC%8C%E4%B9%9F%E5%8F%AF%E4%BB%A5%E4%B8%8E%E6%96%B9%E6%B3%95%E8%B0%83%E7%94%A8%E7%9B%B8%E5%85%B3%E8%81%94%E3%80%82%20%E5%9D%97%E8%BF%94%E5%9B%9E%E6%9C%80%E5%90%8E%E8%AF%84%E4%BC%B0%E7%9A%84%E8%AF%AD%E5%8F%A5%3C%2Fp%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22522%5C%22%3E%E9%9A%90%E5%BC%8F%E4%BC%A0%E9%80%92%E4%B8%80%E4%B8%AA%E5%9D%97%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Edef%20give_me_data%5Cn%20%20%20%20puts%20%26%2334%3BI%20am%20inside%20give_me_data%20method%26%2334%3B%5Cn%20%20%20%20yield%5Cn%20%20%20%20puts%20%26%2334%3BI%20am%20back%20in%20give_me_data%20method%26%2334%3B%5Cnend%5Cn%5Cngive_me_data%20%7B%20puts%20%26%2334%3BBig%20data%26%2334%3B%20%7D%5Cn%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%20I%20am%20inside%20give_me_data%20method%5Cn%23%20Big%20data%5Cn%23%20I%20am%20back%20in%20give_me_data%20method%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22524%5C%22%3E%E5%A4%9A%E6%AC%A1%E8%B0%83%E7%94%A8%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Edef%20give_me_data%5Cn%20%20%20%20yield%5Cn%20%20%20%20yield%5Cn%20%20%20%20yield%5Cnend%5Cn%5Cngive_me_data%20%7B%20puts%20%26%2334%3BBig%20data%26%2334%3B%20%7D%5Cn%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%20Big%20data%5Cn%23%20Big%20data%5Cn%23%20Big%20data%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22526%5C%22%3E%E4%BD%BF%E7%94%A8%E5%9D%97%E5%8F%82%E6%95%B0%E8%B0%83%E7%94%A8%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Edef%20give_me_data%5Cn%20%20%20%20yield%2010%5Cn%20%20%20%20yield%20100%5Cn%20%20%20%20yield%2030%5Cnend%5Cn%5Cngive_me_data%20%7B%20%7Cdata%7C%20puts%20%26%2334%3BBig%20data%20%23%7Bdata%7D%20TB%26%2334%3B%20%7D%5Cn%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%20Big%20data%2010%20TB%5Cn%23%20Big%20data%20100%20TB%5Cn%23%20Big%20data%2030%20TB%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22528%5C%22%3E%E4%BD%BF%E7%94%A8%E5%A4%9A%E4%B8%AA%E5%9D%97%E5%8F%82%E6%95%B0%E8%B0%83%E7%94%A8%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Edef%20give_me_data%5Cn%20%20%20%20yield%20%26%2334%3BBig%20data%26%2334%3B%2C%2010%2C%20%26%2334%3BTB%26%2334%3B%5Cn%20%20%20%20yield%20%26%2334%3BBig%20data%26%2334%3B%2C%20100%2C%20%26%2334%3BGB%26%2334%3B%5Cn%20%20%20%20yield%20%26%2334%3BBig%20data%26%2334%3B%2C%2030%2C%20%26%2334%3BMB%26%2334%3B%5Cnend%5Cn%5Cngive_me_data%20%7B%20%7Ctext%2C%20data%2C%20unit%7C%20puts%20%26%2334%3B%23%7Btext%7D%20%23%7Bdata%7D%20%23%7Bunit%7D%26%2334%3B%20%7D%5Cn%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%20Big%20data%2010%20TB%5Cn%23%20Big%20data%20100%20GB%5Cn%23%20Big%20data%2030%20MB%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22530%5C%22%3E%E5%9D%97%E5%B0%86%E5%B0%9D%E8%AF%95%E4%BB%8E%E5%BD%93%E5%89%8D%E4%B8%8A%E4%B8%8B%E6%96%87%E8%BF%94%E5%9B%9E%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Egive_me_data%5Cn%20%20%20%20puts%20%26%2334%3B%E6%88%91%E5%9C%A8%20give_me_data%20%E6%96%B9%E6%B3%95%E9%87%8C%E9%9D%A2%26%2334%3B%5Cnend%5Cn%5Cndef%20test%5Cn%20%20puts%20%26%2334%3B%E6%88%91%E5%9C%A8%E6%B5%8B%E8%AF%95%E6%96%B9%E6%B3%95%E9%87%8C%E9%9D%A2%26%2334%3B%5Cn%20%20give_me_data%20%7B%20return%2010%20%7D%20%23%20%E4%BB%A3%E7%A0%81%E4%BB%8E%E8%BF%99%E9%87%8C%E8%BF%94%E5%9B%9E%5Cn%20%20puts%20%26%2334%3BI%20am%20back%20in%20test%20method%26%2334%3B%5Cnend%5Cn%5Cnreturn_value%20%3D%20test%5Cn%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%20%E6%88%91%E5%9C%A8%E6%B5%8B%E8%AF%95%E6%96%B9%E6%B3%95%E9%87%8C%E9%9D%A2%5Cn%23%20%E6%88%91%E5%9C%A8%20give_me_data%20%E6%96%B9%E6%B3%95%E9%87%8C%E9%9D%A2%5Cn%23%2010%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22532%5C%22%3E%E9%80%9A%E8%BF%87%E4%BD%BF%E7%94%A8%20%26%20%E5%8F%82%E6%95%B0%E6%98%BE%E5%BC%8F%E4%BC%A0%E9%80%92%E5%9D%97%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Edef%20give_me_data(%26block)%5Cn%20%20%20%20block.call%5Cn%20%20%20%20block.call%5Cnend%5Cn%5Cngive_me_data%20%7B%20puts%20%26%2334%3BBig%20data%26%2334%3B%20%7D%5Cn%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%20Big%20data%5Cn%23%20Big%20data%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22534%5C%22%3E%E6%A3%80%E6%9F%A5%E6%98%AF%E5%90%A6%E7%BB%99%E5%87%BA%E4%BA%86%E5%9D%97%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Edef%20give_me_data%5Cn%20%20%20%20yield%5Cnend%5Cn%5Cngive_me_data%5Cn%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%20LocalJumpError%3A%20no%20block%20given%20(yield)%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22536%5C%22%3E%E5%A4%84%E7%90%86%E5%BC%82%E5%B8%B8%E5%B9%B6%E4%BD%BF%E5%9D%97%E5%8F%AF%E9%80%89%E7%9A%84%E6%96%B9%E6%B3%95%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Edef%20give_me_data%5Cn%20%20%20%20return%20%26%2334%3Bno%20block%26%2334%3B%20unless%20block_given%3F%5Cn%20%20%20%20yield%5Cnend%5Cn%5Cngive_me_data%20%7B%20puts%20%26%2334%3BBig%20data%26%2334%3B%20%7D%5Cngive_me_data%5Cn%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%20Big%20data%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22538%5C%22%3EProcs%3C%2Fh1%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22539%5C%22%3EProcs%20%E7%A4%BA%E4%BE%8B%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Ep%20%3D%20Proc.new%20%7B%20puts%20%26%2334%3BHello%20World%26%2334%3B%20%7D%5Cn%5Cndef%20give_me_data(proc)%5Cn%20%20%20%20proc.call%5Cnend%5Cn%5Cngive_me_data%20p%5Cn%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%20Hello%20World%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%22541%5C%22%3Eproc%20%E5%B0%B1%E5%83%8F%E4%B8%80%E4%B8%AA%E5%8F%AF%E4%BB%A5%E5%AD%98%E5%82%A8%E5%9C%A8%E5%8F%98%E9%87%8F%E4%B8%AD%E7%9A%84%E5%9D%97%3C%2Fp%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22542%5C%22%3E%E4%BB%BB%E6%84%8F%E5%8F%82%E6%95%B0%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Ep%20%3D%20Proc.new%20%7B%20%7Ccount%7C%20%26%2334%3BHello%20World%20%26%2334%3B%20*%20count%20%7D%5Cn%5Cndef%20give_me_data(proc)%5Cn%20%20%20%20proc.call%205%2C%202%5Cnend%5Cn%5Cngive_me_data%20p%5Cn%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%20%26%2334%3BHello%20World%20Hello%20World%20Hello%20World%20Hello%20World%20Hello%20World%20%26%2334%3B%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22544%5C%22%3Eproc%20%E5%B0%86%E5%B0%9D%E8%AF%95%E4%BB%8E%E5%BD%93%E5%89%8D%E4%B8%8A%E4%B8%8B%E6%96%87%E8%BF%94%E5%9B%9E%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Ep%20%3D%20Proc.new%20%7B%20return%2010%20%7D%5Cnp.call%5Cn%23%20%E8%BE%93%E5%87%BA%5CnLocalJumpError%3A%20unexpected%20return%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22546%5C%22%3E%E4%B8%8D%E8%83%BD%E4%BB%8E%E9%A1%B6%E7%BA%A7%E4%B8%8A%E4%B8%8B%E6%96%87%E8%BF%94%E5%9B%9E%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Edef%20give_me_data%5Cn%20%20%20%20puts%20%26%2334%3B%E6%88%91%E5%9C%A8%20give_me_data%20%E6%96%B9%E6%B3%95%E9%87%8C%E9%9D%A2%26%2334%3B%5Cn%20%20%20%20p%20%3D%20Proc.new%20%7B%20return%2010%20%7D%5Cn%20%20%20%20p.call%20%23%20%E4%BB%A3%E7%A0%81%E4%BB%8E%E8%BF%99%E9%87%8C%E8%BF%94%E5%9B%9E%5Cn%20%20%20%20puts%20%26%2334%3BI%20am%20back%20in%20give_me_data%20method%26%2334%3B%5Cnend%5Cn%5Cnreturn_value%20%3D%20give_me_data%5Cnputs%20return_value%5Cn%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%20%E6%88%91%E5%9C%A8%20give_me_data%20%E6%96%B9%E6%B3%95%E9%87%8C%E9%9D%A2%5Cn%23%2010%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22548%5C%22%3ELambdas%3C%2Fh1%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22549%5C%22%3E%E5%A3%B0%E6%98%8E%E4%B8%80%E4%B8%AA%20lambda%3C%2Fh1%3E%3Cpre%3E%3Ccode%3El%20%3D%20lambda%20%7B%20puts%20%26%2334%3BHello%20World%26%2334%3B%20%7D%5Cn%23%20%E9%80%9F%E8%AE%B0%5Cnl%20%3D%20-%26gt%3B%20%7B%20puts%20%26%2334%3BHello%20World%26%2334%3B%20%7D%5Cn%23%20%E8%B0%83%E7%94%A8%20lambda%5Cnl.call%5Cn%23%20%E8%BE%93%E5%87%BA%20%3D%26gt%3B%20Hello%20World%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%22551%5C%22%3E%E6%9C%89%E5%A4%9A%E7%A7%8D%E6%96%B9%E6%B3%95%E5%8F%AF%E4%BB%A5%E8%B0%83%E7%94%A8%20lambda%3C%2Fp%3E%3Cpre%3E%3Ccode%3El.()%5Cnl%5B%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22553%5C%22%3E%E4%B8%A5%E6%A0%BC%E7%9A%84%20arguments%3C%2Fh1%3E%3Cpre%3E%3Ccode%3El%20%3D%20-%26gt%3B%20(count)%20%7B%20%26%2334%3BHello%20World%20%26%2334%3B%20*%20count%20%7D%5Cnl.call%205%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%20%26%2334%3BHello%20World%20Hello%20World%20Hello%20World%20Hello%20World%20Hello%20World%20%26%2334%3B%5Cnl.call%205%2C%202%5Cn%23%20%E8%BE%93%E5%87%BA%5Cnwrong%20number%20of%20arguments%20(given%202%2C%20expected%201)%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22555%5C%22%3E%E5%9D%97%E4%B8%AD%E5%A3%B0%E6%98%8E%E4%B8%80%E4%B8%AA%20lambda%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Edef%20give_me_data%5Cn%20%20%20%20puts%20%26%2334%3BI%20am%20inside%20give_me_data%20method%26%2334%3B%5Cn%20%20%20%20l%20%3D%20-%26gt%3B%20%7B%20return%2010%20%7D%5Cn%20%20%20%20l.call%5Cn%20%20%20%20puts%20%26%2334%3BI%20am%20back%20in%20give_me_data%20method%26%2334%3B%5Cnend%5Cn%5Cnreturn_value%20%3D%20give_me_data%5Cnputs%20return_value%5Cn%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%20I%20am%20inside%20give_me_data%20method%5Cn%23%20I%20am%20back%20in%20give_me_data%20method%5Cn%23%20nil%20%23%20because%20puts%20return%20nil%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22557%5C%22%3Elambdas%20%E4%BB%8E%20lambda%20%E6%9C%AC%E8%BA%AB%E8%BF%94%E5%9B%9E%EF%BC%8C%E5%B0%B1%E5%83%8F%E5%B8%B8%E8%A7%84%E6%96%B9%E6%B3%95%E4%B8%80%E6%A0%B7%3C%2Fh1%3E%3Cpre%3E%3Ccode%3El%20%3D%20-%26gt%3B%20%7B%20return%2010%20%7D%5Cnl.call%5Cn%5Cn%23%20%E8%BE%93%E5%87%BA%20%3D%26gt%3B%2010%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22559%5C%22%3E%E6%95%B0%E7%BB%84%3C%2Fh1%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22560%5C%22%3E%E5%88%9D%E5%A7%8B%E5%8C%96%E4%B8%80%E4%B8%AA%E7%A9%BA%E6%95%B0%E7%BB%84%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Earray%20%3D%20Array.new%20%20%20%23%3D%26gt%3B%20%5B%5D%5Cn%23%20or%5Cnarray%20%3D%20%5B%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22562%5C%22%3E%E5%8C%85%E5%90%AB%E4%B8%8D%E5%90%8C%E7%B1%BB%E5%9E%8B%E7%9A%84%E5%AF%B9%E8%B1%A1%E7%9A%84%E6%95%B0%E7%BB%84%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Earray%20%3D%20%5B1%2C%20%26%2334%3Btwo%26%2334%3B%2C%203.0%5D%20%5Cn%23%3D%26gt%3B%20%5B1%2C%20%26%2334%3Btwo%26%2334%3B%2C%203.0%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22564%5C%22%3E%E7%94%A8%E5%88%9D%E5%A7%8B%E5%A4%A7%E5%B0%8F%E5%92%8C%E9%BB%98%E8%AE%A4%E5%AF%B9%E8%B1%A1%E5%A1%AB%E5%85%85%E6%95%B0%E7%BB%84%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Enumbers%20%3D%20Array.new(3)%20%20%20%20%20%20%20%5Cn%23%3D%26gt%3B%20%5Bnil%2C%20nil%2C%20nil%5D%5Cnnumbers%20%3D%20Array.new(3%2C%207)%20%20%20%20%5Cn%23%3D%26gt%3B%20%5B7%2C%207%2C%207%5D%5Cnnumbers%20%3D%20Array.new(3%2C%20true)%20%5Cn%23%3D%26gt%3B%20%5Btrue%2C%20true%2C%20true%5D%5Cnnumbers%20%3D%20%5B%5D%5Cnnumbers.fill(7%2C%200..2)%20%20%20%23%3D%26gt%3B%20%5B7%2C%207%2C%207%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22566%5C%22%3E%E4%B8%8D%E5%90%8C%E5%93%88%E5%B8%8C%E5%80%BC%E7%9A%84%E6%95%B0%E7%BB%84%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Earray_with_hashes%20%3D%20Array.new(2)%20%7B%20%7B%7D%20%7D%20%23%3D%26gt%3B%20%5B%7B%7D%2C%20%7B%7D%5D%5Cnarray_with_hashes%5B0%5D%5B%3Aname%5D%20%3D%20%26%2334%3BBob%26%2334%3B%5Cnarray_with_hashes%5B0%5D%5B%3Aid%5D%20%3D%2010%20%20%20%20%20%20%20%20%20%20%23%3D%26gt%3B%20%5B%7B%3Aname%3D%26gt%3B%26%2334%3BBob%26%2334%3B%2C%20%3Aid%3D%26gt%3B10%7D%2C%20%7B%7D%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22568%5C%22%3E%E4%BA%8C%E7%BB%B4%E6%95%B0%E7%BB%84%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Etemperature_data%20%3D%20%5B%5Cn%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5B%26%2334%3BA908%26%2334%3B%2C%2038%5D%2C%5Cn%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5B%26%2334%3BA909%26%2334%3B%2C%2037%5D%2C%5Cn%20%20%20%20%20%20%20%20%20%20%20%20%20%20%5B%26%2334%3BA910%26%2334%3B%2C%2038%5D%2C%5Cn%20%20%20%20%20%20%20%20%20%20%5D%5Cntemperature_data%5B0%5D%20%20%20%20%23%3D%26gt%3B%20%5B%26%2334%3BA908%26%2334%3B%2C%2038%5D%5Cntemperature_data%5B0%5D%5B0%5D%20%23%3D%26gt%3B%20%26%2334%3BA908%26%2334%3B%5Cntemperature_data%5B0%5D%5B1%5D%20%23%3D%26gt%3B%2038%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22570%5C%22%3E%E6%95%B0%E7%BB%84%E7%B4%A2%E5%BC%95%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Estr_array%20%3D%20%5B%5Cn%20%20%26%2334%3BThis%26%2334%3B%2C%20%26%2334%3Bis%26%2334%3B%2C%20%26%2334%3Ba%26%2334%3B%2C%20%26%2334%3Bsmall%26%2334%3B%2C%20%26%2334%3Barray%26%2334%3B%5Cn%5D%5Cnstr_array%5B0%5D%20%20%20%20%20%20%20%20%20%20%20%20%23%3D%26gt%3B%20%26%2334%3BThis%26%2334%3B%5Cnstr_array%5B1%5D%20%20%20%20%20%20%20%20%20%20%20%20%23%3D%26gt%3B%20%26%2334%3Bis%26%2334%3B%5Cnstr_array%5B4%5D%20%20%20%20%20%20%20%20%20%20%20%20%23%3D%26gt%3B%20%26%2334%3Barray%26%2334%3B%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22572%5C%22%3E%E8%B4%9F%E7%B4%A2%E5%BC%95%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Estr_array%20%3D%20%5B%5Cn%20%20%26%2334%3BThis%26%2334%3B%2C%20%26%2334%3Bis%26%2334%3B%2C%20%26%2334%3Ba%26%2334%3B%2C%20%26%2334%3Bsmall%26%2334%3B%2C%20%26%2334%3Barray%26%2334%3B%5Cn%5D%5Cn%23%20%E7%B4%A2%E5%BC%95%20-1%20%E8%A1%A8%E7%A4%BA%E6%9C%80%E5%90%8E%E4%B8%80%E4%B8%AA%E5%85%83%E7%B4%A0%5Cnstr_array%5B-1%5D%20%20%20%20%20%20%20%20%23%3D%26gt%3B%20%26%2334%3Barray%26%2334%3B%5Cn%23%20%E7%B4%A2%E5%BC%95%20-2%20%E8%A1%A8%E7%A4%BA%E5%80%92%E6%95%B0%E7%AC%AC%E4%BA%8C%E4%B8%AA%E5%85%83%E7%B4%A0%5Cnstr_array%5B-2%5D%20%20%20%20%20%20%20%20%23%3D%26gt%3B%20%26%2334%3Bsmall%26%2334%3B%5Cnstr_array%5B-6%5D%20%20%20%20%20%20%20%20%23%3D%26gt%3B%20nil%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22574%5C%22%3E%E6%95%B0%E7%BB%84%E6%96%B9%E6%B3%95%20at%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Estr_array%20%3D%20%5B%5Cn%20%20%26%2334%3BThis%26%2334%3B%2C%20%26%2334%3Bis%26%2334%3B%2C%20%26%2334%3Ba%26%2334%3B%2C%20%26%2334%3Bsmall%26%2334%3B%2C%20%26%2334%3Barray%26%2334%3B%5Cn%5D%5Cn%5Cnputs%20str_array.at(0)%20%20%20%20%20%20%23%3D%26gt%3B%20%26%2334%3BThis%26%2334%3B%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22576%5C%22%3E%E8%8C%83%E5%9B%B4%E8%8E%B7%E5%8F%96%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Earr%20%3D%20%5B1%2C%202%2C%203%2C%204%2C%205%2C%206%5D%5Cnarr%5B100%5D%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%23%3D%26gt%3B%20nil%5Cnarr%5B-3%5D%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%23%3D%26gt%3B%204%5Cnarr%5B2%2C%203%5D%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%23%3D%26gt%3B%20%5B3%2C%204%2C%205%5D%5Cnarr%5B1..4%5D%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%23%3D%26gt%3B%20%5B2%2C%203%2C%204%2C%205%5D%5Cnarr%5B1..-3%5D%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%23%3D%26gt%3B%20%5B2%2C%203%2C%204%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22578%5C%22%3E%E6%95%B0%E7%BB%84%E6%96%B9%E6%B3%95%20fetch%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Earr%20%3D%20%5B%26%2339%3Ba%26%2339%3B%2C%20%26%2339%3Bb%26%2339%3B%2C%20%26%2339%3Bc%26%2339%3B%2C%20%26%2339%3Bd%26%2339%3B%2C%20%26%2339%3Be%26%2339%3B%2C%20%26%2339%3Bf%26%2339%3B%5D%5Cnarr.fetch(100)%5Cn%23%3D%26gt%3B%20IndexError%3A%20%E6%95%B0%E7%BB%84%E8%BE%B9%E7%95%8C%E5%A4%96%E7%9A%84%E7%B4%A2%E5%BC%95%20100%EF%BC%9A-6...6%5Cnarr.fetch(100%2C%20%26%2334%3Boops%26%2334%3B)%20%20%20%20%23%3D%26gt%3B%20%26%2334%3Boops%26%2334%3B%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%22580%5C%22%3E%E8%B6%85%E5%87%BA%E8%BE%B9%E7%95%8C%EF%BC%8C%E7%BB%99%E9%BB%98%E8%AE%A4%E5%80%BC%3C%2Fp%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22581%5C%22%3E%E8%8E%B7%E5%8F%96%E6%95%B0%E7%BB%84%E5%85%83%E7%B4%A0%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Earr%20%3D%20%5B1%2C%202%2C%203%2C%204%2C%205%2C%206%5D%5Cn%5Cnarr.first%20%20%20%20%20%23%20%E7%AC%AC%E4%B8%80%E4%B8%AA%E5%80%BC%20%3D%26gt%3B%201%5Cnarr.last%20%20%20%20%20%20%23%20%E6%9C%80%E5%90%8E%E4%B8%80%E4%B8%AA%E5%80%BC%20%3D%26gt%3B%206%5Cn%23%20take%20%E8%BF%94%E5%9B%9E%E5%89%8D%20n%20%E4%B8%AA%E5%85%83%E7%B4%A0%5Cnarr.take(3)%20%20%20%23%3D%26gt%3B%20%5B1%2C%202%2C%203%5D%5Cn%23%20drop%20%E5%9C%A8%20n%20%E4%B8%AA%E5%85%83%E7%B4%A0%E8%A2%AB%E5%88%A0%E9%99%A4%E4%B9%8B%E5%90%8E%5Cnarr.drop(3)%20%20%20%23%3D%26gt%3B%20%5B4%2C%205%2C%206%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22583%5C%22%3E%E5%9C%A8%E6%95%B0%E7%BB%84%E6%9C%AB%E5%B0%BE%E6%B7%BB%E5%8A%A0%E5%80%BC%20push%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Enumbers%20%3D%20%5B1%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%2C%2010%5D%5Cnnumbers.push(11)%20%20%20%20%20%20%20%20%20%20%5Cn%23%3D%26gt%3B%20%5B1%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%2C%2010%2C%2011%5D%5Cnnumbers.push(12%2C%2013%2C%2014)%20%20%5Cn%23%3D%26gt%3B%20%5B1%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%2C%2010%2C%2011%2C%2012%2C%2013%2C%2014%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22585%5C%22%3E%E6%95%B0%E7%BB%84%E6%9C%AB%E5%B0%BE%E5%88%A0%E9%99%A4%E5%80%BC%20pop%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Enum_array%20%3D%20%5B1%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%2C%2010%5D%5Cnnum_array.pop%20%20%20%20%20%20%20%20%20%20%20%20%20%23%3D%26gt%3B%2010%5Cnnum_array%5Cn%23%3D%26gt%3B%20%5B1%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22587%5C%22%3E%E5%9C%A8%E6%95%B0%E7%BB%84%E7%9A%84%E5%BC%80%E5%A4%B4%E6%B7%BB%E5%8A%A0%E5%80%BC%20unshift%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Enumbers%20%3D%20%5B1%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%2C%2010%5D%5Cnnumbers.unshift(0)%20%20%20%20%20%20%20%20%20%20%5Cn%23%3D%26gt%3B%20%5B0%2C%201%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%2C%2010%5D%5Cnnumbers.unshift(-3%2C%20-2%2C%20-1)%20%5Cn%23%3D%26gt%3B%20%5B-3%2C%20-2%2C%20-1%2C%200%2C%201%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%2C%2010%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22589%5C%22%3E%E6%A3%80%E7%B4%A2%E5%B9%B6%E5%90%8C%E6%97%B6%E5%88%A0%E9%99%A4%E7%AC%AC%E4%B8%80%E4%B8%AA%E5%85%83%E7%B4%A0%20shift%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Enumbers%20%3D%20%5B1%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%2C%2010%5D%5Cnnumbers.shift%20%23%3D%26gt%3B%201%5Cnnumbers%5Cn%23%3D%26gt%3B%20%5B2%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%2C%2010%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22591%5C%22%3E%E5%88%A0%E9%99%A4%E7%89%B9%E5%AE%9A%E7%B4%A2%E5%BC%95%E5%A4%84%E7%9A%84%E5%85%83%E7%B4%A0%20delete_at%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Enumbers%20%3D%20%5B1%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%2C%2010%5D%5Cnnumbers.delete_at(2)%20%23%3D%26gt%3B%204%5Cnnumbers%20%20%20%20%20%20%20%20%20%20%20%20%20%5Cn%23%3D%26gt%3B%20%5B2%2C%203%2C%205%2C%206%2C%207%2C%208%2C%209%2C%2010%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22593%5C%22%3E%E5%88%A0%E9%99%A4%E6%95%B0%E7%BB%84%E4%B8%AD%E4%BB%BB%E6%84%8F%E4%BD%8D%E7%BD%AE%E7%9A%84%E7%89%B9%E5%AE%9A%E5%85%83%E7%B4%A0%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Enumbers%20%3D%20%5B1%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%2C%2010%5D%5Cnnumbers.delete(2)%20%23%3D%26gt%3B%202%5Cnnumbers%20%20%20%20%20%20%20%20%20%20%20%23%3D%26gt%3B%20%5B3%2C%205%2C%206%2C%207%2C%208%2C%209%2C%2010%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22595%5C%22%3E%E5%9C%A8%E7%BB%99%E5%AE%9A%E7%B4%A2%E5%BC%95%E5%A4%84%E6%8F%92%E5%85%A5%E5%80%BC%20insert%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Enumbers%20%3D%20%5B1%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%2C%2010%5D%5Cnnumbers.insert(0%2C%200)%20%20%20%20%20%20%20%20%20%20%20%5Cn%23%3D%26gt%3B%20%5B0%2C%201%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%2C%2010%5D%5Cnnumbers.insert(0%2C%20-3%2C%20-2%2C%20-1)%20%20%5Cn%23%3D%26gt%3B%20%5B-3%2C%20-2%2C%20-1%2C%200%2C%201%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%2C%2010%5D%5Cn%5Cnnumbers.insert(-1%2C%2012%2C%2013%2C%2014)%20%5Cn%23%3D%26gt%3B%20%5B-3%2C%20-2%2C%20-1%2C%200%2C%201%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%2C%2010%2C%2012%2C%2013%2C%2014%5D%5Cnnumbers.insert(-4%2C%2011)%20%20%20%20%20%20%20%20%20%5Cn%23%3D%26gt%3B%20%5B-3%2C%20-2%2C%20-1%2C%200%2C%201%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%2C%2010%2C%2011%2C%2012%2C%2013%2C%2014%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22597%5C%22%3E%E4%B8%80%E4%B8%AA%E5%9D%97%E6%9D%A5%E5%A1%AB%E5%85%85%E6%95%B0%E7%BB%84%E7%9A%84%E5%80%BC%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Enumbers%20%3D%20Array.new(10)%20%7B%20%7Cn%7C%20n%20%3D%20n%20*%202%20%7D%20%5Cn%23%3D%26gt%3B%20%5B0%2C%202%2C%204%2C%206%2C%208%2C%2010%2C%2012%2C%2014%2C%2016%2C%2018%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22599%5C%22%3E%E5%A1%AB%E5%85%85%E6%95%B0%E7%BB%84%E5%8F%98%E5%BE%97%E6%9B%B4%E5%AE%B9%E6%98%93%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Enumbers%20%3D%20Array(100..110)%5Cn%23%3D%26gt%3B%20%5B100%2C%20101%2C%20102%2C%20103%2C%20104%2C%20105%2C%20106%2C%20107%2C%20108%2C%20109%2C%20110%5D%5Cn%5Cn%23%20%E6%88%96%E8%80%85%E6%88%91%E4%BB%AC%E5%8F%AF%E4%BB%A5%E5%B0%86%E8%8C%83%E5%9B%B4%E8%BD%AC%E6%8D%A2%E4%B8%BA%E6%95%B0%E7%BB%84%5Cn(100..110).to_a%20%5Cn%23%3D%26gt%3B%20%5B100%2C%20101%2C%20102%2C%20103%2C%20104%2C%20105%2C%20106%2C%20107%2C%20108%2C%20109%2C%20110%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22601%5C%22%3E%E4%BB%8E%E6%95%B0%E7%BB%84%E4%B8%AD%E5%88%A0%E9%99%A4%20nil%20%E5%80%BC%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Earr%20%3D%20%5B%26%2339%3Bfoo%26%2339%3B%2C%200%2C%20nil%2C%20%26%2339%3Bbar%26%2339%3B%2C%207%2C%20nil%5D%5Cnarr.compact%20%20%23%3D%26gt%3B%20%5B%26%2339%3Bfoo%26%2339%3B%2C%200%2C%20%26%2339%3Bbar%26%2339%3B%2C%207%5D%5Cnarr%20%20%20%20%20%20%23%3D%26gt%3B%20%5B%26%2339%3Bfoo%26%2339%3B%2C%200%2C%20nil%2C%20%26%2339%3Bbar%26%2339%3B%2C%207%2C%20nil%5D%5Cnarr.compact!%20%23%3D%26gt%3B%20%5B%26%2339%3Bfoo%26%2339%3B%2C%200%2C%20%26%2339%3Bbar%26%2339%3B%2C%207%5D%5Cnarr%20%20%20%20%20%20%23%3D%26gt%3B%20%5B%26%2339%3Bfoo%26%2339%3B%2C%200%2C%20%26%2339%3Bbar%26%2339%3B%2C%207%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22603%5C%22%3E%E5%8E%BB%E9%87%8D%20uniq%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Earr%20%3D%20%5B2%2C%205%2C%206%2C%20556%2C%206%2C%206%2C%208%2C%209%2C%200%2C%20123%2C%20556%5D%5Cnarr.uniq%20%23%3D%26gt%3B%20%5B2%2C%205%2C%206%2C%20556%2C%208%2C%209%2C%200%2C%20123%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22605%5C%22%3E%E6%A3%80%E6%9F%A5%E6%95%B0%E7%BB%84%E4%B8%AD%E6%98%AF%E5%90%A6%E5%AD%98%E5%9C%A8%E5%80%BC%EF%BC%88include%EF%BC%9F%EF%BC%89%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Eplanets%20%3D%20%5B%26%2334%3BMercury%26%2334%3B%2C%20%26%2334%3BVenus%26%2334%3B%2C%20%26%2334%3BEarth%26%2334%3B%2C%20%26%2334%3BMars%26%2334%3B%2C%20%26%2334%3BJupiter%26%2334%3B%2C%20%26%2334%3BSaturn%26%2334%3B%2C%20%26%2334%3BUranus%26%2334%3B%2C%20%26%2334%3BNeptune%26%2334%3B%5D%5Cnplanets.include%3F%20%26%2334%3BMars%26%2334%3B%5Cn%23%20%E8%BE%93%E5%87%BA%20%3D%26gt%3B%20true%5Cnplanets.include%3F%20%26%2334%3BPluto%26%2334%3B%5Cn%23%20%E8%BE%93%E5%87%BA%20%3D%26gt%3B%20false%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22607%5C%22%3E%E8%8E%B7%E5%8F%96%E6%95%B0%E7%BB%84%E5%A4%A7%E5%B0%8F%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Eplanets%20%3D%20%5B%26%2334%3BMercury%26%2334%3B%2C%20%26%2334%3BVenus%26%2334%3B%2C%20%26%2334%3BEarth%26%2334%3B%2C%20%26%2334%3BMars%26%2334%3B%2C%20%26%2334%3BJupiter%26%2334%3B%2C%20%26%2334%3BSaturn%26%2334%3B%2C%20%26%2334%3BUranus%26%2334%3B%2C%20%26%2334%3BNeptune%26%2334%3B%5D%5Cnplanets.size%5Cn%23%20%E8%BE%93%E5%87%BA%20%3D%26gt%3B%208%5Cnplanets.length%5Cn%23%20%E8%BE%93%E5%87%BA%20%3D%26gt%3B%208%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%22609%5C%22%3E%E6%82%A8%E5%8F%AF%E4%BB%A5%E4%BD%BF%E7%94%A8%E5%A4%A7%E5%B0%8F%E6%88%96%E9%95%BF%E5%BA%A6%EF%BC%8C%E4%B8%A4%E8%80%85%E9%83%BD%E6%98%AF%E5%90%8C%E4%B9%89%E8%AF%8D%3C%2Fp%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22610%5C%22%3E%E6%B8%85%E9%99%A4%E6%95%B0%E7%BB%84%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Enumbers%20%3D%20%5B1%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%2C%2010%5D%5Cnnumbers.clear%5Cn%23%20%E8%BE%93%E5%87%BA%20%3D%26gt%3B%20%5B%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22612%5C%22%3E%E8%8E%B7%E5%8F%96%E6%95%B0%E7%BB%84%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AA%E5%85%83%E7%B4%A0%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Enumbers%20%3D%20%5B1%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%2C%2010%5D%5Cnnumbers%5B0%5D%5Cn%23%20or%5Cnnumbers.first%5Cn%23%20%E8%BE%93%E5%87%BA%20%3D%26gt%3B%201%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22614%5C%22%3E%E8%8E%B7%E5%8F%96%E6%95%B0%E7%BB%84%E7%9A%84%E6%9C%80%E5%90%8E%E4%B8%80%E4%B8%AA%E5%85%83%E7%B4%A0%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Enumbers%20%3D%20%5B1%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%2C%2010%5D%5Cnnumbers%5B-1%5D%5Cn%23%20or%5Cnnumbers.last%5Cn%23%20%E8%BE%93%E5%87%BA%20%3D%26gt%3B%2010%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22616%5C%22%3E%E5%90%88%E5%B9%B6%E4%B8%A4%E4%B8%AA%E6%95%B0%E7%BB%84%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Ea%20%3D%20%5B%26%2334%3Btom%26%2334%3B%2C%20%26%2334%3Bmot%26%2334%3B%2C%20%26%2334%3Botm%26%2334%3B%5D%5Cnb%20%3D%20%5B2%2C%203%2C%205%5D%5Cna.zip(b)%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%20%5B%5B%26%2334%3Btom%26%2334%3B%2C%202%5D%2C%20%5B%26%2334%3Bmot%26%2334%3B%2C%203%5D%2C%20%5B%26%2334%3Botm%26%2334%3B%2C%205%5D%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22618%5C%22%3E%E5%AF%B9%E6%95%B0%E7%BB%84%E8%BF%9B%E8%A1%8C%E6%8E%92%E5%BA%8F%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Eprimes%20%3D%20%5B7%2C%202%2C%203%2C%205%5D%5Cnsorted_primes%20%3D%20primes.sort%5Cnputs%20%26%2334%3B%23%7Bsorted_primes%7D%26%2334%3B%5Cn%23%20%E8%BE%93%E5%87%BA%20%3D%26gt%3B%20%5B2%2C%203%2C%205%2C%207%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%22620%5C%22%3Eor%20in-place%20sort%3C%2Fp%3E%3Cpre%3E%3Ccode%3Eprimes%20%3D%20%5B7%2C%202%2C%203%2C%205%5D%5Cnprimes.sort!%5Cnputs%20%26%2334%3B%23%7Bprimes%7D%26%2334%3B%5Cn%23%20%E8%BE%93%E5%87%BA%20%3D%26gt%3B%20%5B2%2C%203%2C%205%2C%207%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cpre%3E%3Ccode%3Eplanets%20%3D%20%5B%26%2334%3BMercury%26%2334%3B%2C%20%26%2334%3BVenus%26%2334%3B%2C%20%26%2334%3BEarth%26%2334%3B%2C%20%26%2334%3BMars%26%2334%3B%2C%20%26%2334%3BJupiter%26%2334%3B%2C%20%26%2334%3BSaturn%26%2334%3B%2C%20%26%2334%3BUranus%26%2334%3B%2C%20%26%2334%3BNeptune%26%2334%3B%5D%5Cnplanets.sort%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%20%5B%26%2334%3BEarth%26%2334%3B%2C%20%26%2334%3BJupiter%26%2334%3B%2C%20%26%2334%3BMars%26%2334%3B%2C%20%26%2334%3BMercury%26%2334%3B%2C%20%26%2334%3BNeptune%26%2334%3B%2C%20%26%2334%3BSaturn%26%2334%3B%2C%20%26%2334%3BUranus%26%2334%3B%2C%20%26%2334%3BVenus%26%2334%3B%5D%5Cnplanets.sort_by%20%7B%20%7Cp%7C%20p%20%7D%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%20%5B%26%2334%3BEarth%26%2334%3B%2C%20%26%2334%3BJupiter%26%2334%3B%2C%20%26%2334%3BMars%26%2334%3B%2C%20%26%2334%3BMercury%26%2334%3B%2C%20%26%2334%3BNeptune%26%2334%3B%2C%20%26%2334%3BSaturn%26%2334%3B%2C%20%26%2334%3BUranus%26%2334%3B%2C%20%26%2334%3BVenus%26%2334%3B%5D%5Cnplanets.sort_by%20%7B%20%7Cp%7C%20p.length%20%7D%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%20%5B%26%2334%3BMars%26%2334%3B%2C%20%26%2334%3BEarth%26%2334%3B%2C%20%26%2334%3BVenus%26%2334%3B%2C%20%26%2334%3BSaturn%26%2334%3B%2C%20%26%2334%3BUranus%26%2334%3B%2C%20%26%2334%3BNeptune%26%2334%3B%2C%20%26%2334%3BJupiter%26%2334%3B%2C%20%26%2334%3BMercury%26%2334%3B%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22623%5C%22%3E%E4%BB%8E%E6%95%B0%E7%BB%84%E4%B8%AD%E8%8E%B7%E5%8F%96%E6%9C%80%E5%A4%A7%E5%80%BC%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Eprimes%20%3D%20%5B7%2C%202%2C%203%2C%205%5D%5Cnprimes.max_by%20%7B%20%7Cp%7C%20p%20%7D%5Cn%23%20%E8%BE%93%E5%87%BA%20%3D%26gt%3B%207%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22625%5C%22%3E%E4%BD%BF%E7%94%A8%E8%8C%83%E5%9B%B4%E8%8E%B7%E5%8F%96%E6%95%B0%E7%BB%84%E5%85%83%E7%B4%A0%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E%23%20numbers%5Bstart..end%5D%2C%20both%20index%20are%20inclusive%5Cnputs%20numbers%5B0..3%5D%5Cn%23%201%5Cn%23%202%5Cn%23%203%5Cn%23%204%5Cn%23%20numbers%5Bstart..end%5D%2C%20end%20index%20is%20exclusive%5Cnputs%20numbers%5B0...3%5D%5Cn%23%201%5Cn%23%202%5Cn%23%203%5Cn%23%20or%20numbers%5Bstart..length%5D%5Cnputs%20numbers%5B0%2C%201%5D%5Cn%23%201%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22627%5C%22%3E%E8%8E%B7%E5%8F%96%E6%95%B0%E7%BB%84%E7%9A%84%E5%89%8Dn%E4%B8%AA%E5%85%83%E7%B4%A0%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Eprimes%20%3D%20%5B7%2C%202%2C%203%2C%205%5D%5Cnprimes.take(3)%5Cn%23%20%5B7%2C%202%2C%203%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22629%5C%22%3E%E8%AE%BF%E9%97%AE%E5%85%83%E7%B4%A0%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Eprimes%20%3D%20%5B7%2C%202%2C%203%2C%205%5D%5Cnprimes.fetch(3)%5Cn%23%205%5Cn%23%20Fetch%20will%20throw%20an%20error%20if%20the%20element%20does%20not%20exist%5Cnprimes.fetch(10)%5Cn%23%20(index%2010%20outside%20of%20array%20bounds%3A%20-4...4)%5Cn%23%20or%20get%20an%20default%20value%5Cnprimes.fetch(10%2C%20-1)%5Cn%23%20-1%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22631%5C%22%3E%E4%BB%8E%E6%95%B0%E7%BB%84%E4%B8%AD%E5%88%A0%E9%99%A4%E9%87%8D%E5%A4%8D%E5%85%83%E7%B4%A0%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Enumbers%20%3D%20%5B1%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%2C%2010%2C%2010%2C%201%5D%5Cnnumbers.uniq%5Cn%23%20%5B1%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%2C%2010%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22633%5C%22%3E%E5%88%A0%E9%99%A4%E5%89%8D%20n%20%E4%B8%AA%E5%85%83%E7%B4%A0%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Eprimes%20%3D%20%5B7%2C%202%2C%203%2C%205%5D%5Cnprimes.drop(3)%5Cn%23%20%5B5%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22635%5C%22%3E%E5%88%A0%E9%99%A4%E7%AC%AC%E4%B8%80%E4%B8%AA%E5%85%83%E7%B4%A0%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Eprimes%20%3D%20%5B7%2C%202%2C%203%2C%205%5D%5Cnprimes.shift%5Cn%23%20%5B2%2C%203%2C%205%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22637%5C%22%3E%E5%88%A0%E9%99%A4%E6%9C%80%E5%90%8E%E4%B8%80%E4%B8%AA%E5%85%83%E7%B4%A0%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Eprimes%20%3D%20%5B7%2C%202%2C%203%2C%205%5D%5Cnprimes.pop%5Cn%23%20%5B7%2C%202%2C%203%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22639%5C%22%3E%E5%88%A0%E9%99%A4%E5%B8%A6%E6%9C%89%E7%B4%A2%E5%BC%95%E7%9A%84%E5%85%83%E7%B4%A0%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Eprimes%20%3D%20%5B7%2C%202%2C%203%2C%205%5D%5Cnprimes.delete_at(-1)%5Cn%23%20%5B7%2C%202%2C%203%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22641%5C%22%3E%E5%88%A0%E9%99%A4%E6%89%80%E6%9C%89%E5%87%BA%E7%8E%B0%E7%9A%84%E5%85%83%E7%B4%A0%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Eprimes%20%3D%20%5B7%2C%202%2C%203%2C%205%2C%205%5D%5Cnprimes.delete(5)%5Cn%23%20%5B7%2C%202%2C%203%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22643%5C%22%3Eeach%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E%23%20%E5%BD%93%E4%BD%A0%E6%9C%89%E5%8D%95%E8%A1%8C%E5%9D%97%E6%97%B6%5Cnsalary%20%3D%20%5B399%2C%20234%2C%20566%2C%20533%2C%20233%5D%5Cnsalary.each%20%7B%20%7Cs%7C%20puts%20s%20%7D%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%20399%5Cn%23%20234%5Cn%23%20566%5Cn%23%20533%5Cn%23%20233%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%22645%5C%22%3E%E5%BD%93%E4%BD%A0%E6%9C%89%E4%B8%80%E4%B8%AA%E5%A4%9A%E8%A1%8C%E5%9D%97%E6%97%B6%EF%BC%8C%E4%BD%A0%E5%8F%AF%E4%BB%A5%E7%94%A8%20do%20%E5%92%8C%20end%20%E6%9B%BF%E6%8D%A2%E8%8A%B1%E6%8B%AC%E5%8F%B7%20%7B%7D%3C%2Fp%3E%3Cpre%3E%3Ccode%3Esalary.each%20do%20%7Cs%7C%5Cn%20%20a%20%3D%2010%5Cn%20%20res%20%3D%20a%20*%20s%5Cn%20%20puts%20res%5Cnend%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%203990%5Cn%23%202340%5Cn%23%205660%5Cn%23%205330%5Cn%23%202330%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%22647%5C%22%3E%E6%88%96%E8%80%85%E6%82%A8%E5%8F%AF%E4%BB%A5%E4%BD%BF%E7%94%A8%E5%A4%A7%E6%8B%AC%E5%8F%B7%20%7B%7D%20%E5%92%8C%E5%88%86%E5%8F%B7%E4%BD%9C%E4%B8%BA%E5%88%86%E9%9A%94%E7%AC%A6%E8%80%8C%E4%B8%8D%E6%98%AF%E6%8D%A2%E8%A1%8C%E7%AC%A6%E6%9D%A5%E5%81%9A%E5%90%8C%E6%A0%B7%E7%9A%84%E4%BA%8B%E6%83%85%3C%2Fp%3E%3Cpre%3E%3Ccode%3Esalary.each%20%7B%20%7Cs%7C%20a%20%3D%2010%20%3B%20res%20%3D%20a%20*%20s%20%3B%20puts%20res%20%7D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22649%5C%22%3Eeach_with_index%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Esalary%20%3D%20%5B399%2C%20234%2C%20566%2C%20533%2C%20233%5D%5Cnsalary.each_with_index%20%7B%20%7Cvalue%2C%20index%7C%20puts%20%26%2334%3B%23%7Bindex%7D%20%23%7Bvalue%7D%26%2334%3B%20%7D%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%200%20399%5Cn%23%201%20234%5Cn%23%202%20566%5Cn%23%203%20533%5Cn%23%204%20233%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22651%5C%22%3Eeach_index%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Esalary%20%3D%20%5B399%2C%20234%2C%20566%2C%20533%2C%20233%5D%5Cnsalary.each_index%20%7B%20%7Ci%7C%20puts%20i%7D%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%200%5Cn%23%201%5Cn%23%202%5Cn%23%203%5Cn%23%204%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22653%5C%22%3Emap%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Esalary%20%3D%20%5B399%2C%20234%2C%20566%2C%20533%2C%20233%5D%5Cnsalary.map%20%7B%20%7Cs%7C%20%20s%20*%2010%20%20%7D%5Cn%23%20%E8%BF%94%E5%9B%9E%5Cn%23%20%5B3990%2C%202340%2C%205660%2C%205330%2C%202330%5D%5Cn%23%20%E5%8F%A6%E4%B8%80%E6%96%B9%E9%9D%A2%EF%BC%8C%E6%AF%8F%E4%B8%AA%E9%83%BD%E8%BF%94%E5%9B%9E%E5%8E%9F%E5%A7%8B%E5%80%BC%5Cnsalary%20%3D%20%5B399%2C%20234%2C%20566%2C%20533%2C%20233%5D%5Cnsalary.each%20%7B%20%7Cs%7C%20%20s%20*%2010%20%20%7D%5Cn%23%20%E8%BF%94%E5%9B%9E%5Cn%23%20%5B399%2C%20234%2C%20566%2C%20533%2C%20233%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22655%5C%22%3Ecollect%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Esalary%20%3D%20%5B399%2C%20234%2C%20566%2C%20533%2C%20233%5D%5Cnsalary.collect%20%7B%20%7Cs%7C%20s%20%26gt%3B%20400%20%7D%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%20%5Bfalse%2C%20false%2C%20true%2C%20true%2C%20false%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22657%5C%22%3Efor%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Efor%20value%20in%20%5B2%2C%203%2C%205%2C%207%5D%5Cn%20%20%20%20puts%20value%5Cnend%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22659%5C%22%3Eeach_with_object%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Ecolors%20%3D%20%5B%5Cn%20%20%7Bcolor%3A%20%26%2334%3Bred%26%2334%3B%2C%20count%3A%203%7D%2C%20%7Bcolor%3A%20%26%2334%3Bred%26%2334%3B%2C%20count%3A%205%7D%2C%20%7Bcolor%3A%20%26%2334%3Bblack%26%2334%3B%2C%20count%3A%204%7D%5Cn%5D%5Cncolors.each_with_object(Hash.new(0))%20%7B%20%7Ccolor%2C%20hash%7C%20hash%5B%26%2334%3Bcolor_%26%2334%3B%2Bcolor%5B%3Acolor%5D%5D%20%3D%20color%5B%3Acolor%5D.upcase%3B%20hash%5B%26%2334%3Bcount_%26%2334%3B%2Bcolor%5B%3Acolor%5D%5D%20%2B%3D%20color%5B%3Acount%5D%20%7D%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%7B%26%2334%3Bcolor_red%26%2334%3B%3D%26gt%3B%26%2334%3BRED%26%2334%3B%2C%20%26%2334%3Bcount_red%26%2334%3B%3D%26gt%3B8%2C%20%26%2334%3Bcolor_black%26%2334%3B%3D%26gt%3B%26%2334%3BBLACK%26%2334%3B%2C%20%26%2334%3Bcount_black%26%2334%3B%3D%26gt%3B4%7D%5Cn%5Cn%5B1%2C%202%2C%203%5D.each_with_object(0)%20%7B%20%7Cnumber%2C%20sum%7C%20sum%20%2B%3D%20number%7D%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%200%5Cn%23%20%E5%9B%A0%E4%B8%BA0%E6%98%AF%E4%B8%8D%E5%8F%AF%E5%8F%98%E7%9A%84%EF%BC%8C%E7%94%B1%E4%BA%8E%E5%88%9D%E5%A7%8B%E5%AF%B9%E8%B1%A1%E6%98%AF0%EF%BC%8C%E6%89%80%E4%BB%A5%E6%96%B9%E6%B3%95%E8%BF%94%E5%9B%9E0%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22661%5C%22%3Ewhile%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Eplanets%20%3D%20%5B%26%2334%3BMercury%26%2334%3B%2C%20%26%2334%3BVenus%26%2334%3B%2C%20%26%2334%3BEarth%26%2334%3B%2C%20%26%2334%3BMars%26%2334%3B%2C%20%26%2334%3BJupiter%26%2334%3B%2C%20%26%2334%3BSaturn%26%2334%3B%2C%20%26%2334%3BUranus%26%2334%3B%2C%20%26%2334%3BNeptune%26%2334%3B%5D%5Cnindex%20%3D%200%5Cnwhile%20index%20%26lt%3B%20planets.size%5Cn%20%20%20%20puts%20%26%2334%3B%23%7Bplanets%5Bindex%5D%7D%26%2334%3B%5Cn%20%20%20%20index%20%2B%3D%201%5Cnend%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Chr%3E%3Cpre%3E%3Ccode%3Ea%20%3D%201%5Cnstar%20%3D%20%26%2339%3B*%26%2339%3B%5Cnwhile%20a%20%26lt%3B%3D%2010%5Cn%20%20%20%20puts%20star%5Cn%20%20%20%20star%20%2B%3D%20%26%2339%3B*%26%2339%3B%5Cn%20%20%20%20a%20%2B%3D%201%5Cnend%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22664%5C%22%3Edo%20while%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Eplanets%20%3D%20%5B%26%2334%3BMercury%26%2334%3B%2C%20%26%2334%3BVenus%26%2334%3B%2C%20%26%2334%3BEarth%26%2334%3B%2C%20%26%2334%3BMars%26%2334%3B%2C%20%26%2334%3BJupiter%26%2334%3B%2C%20%26%2334%3BSaturn%26%2334%3B%2C%20%26%2334%3BUranus%26%2334%3B%2C%20%26%2334%3BNeptune%26%2334%3B%5D%5Cnindex%20%3D%200%5Cnloop%20do%5Cn%20%20%20%20puts%20%26%2334%3B%23%7Bplanets%5Bindex%5D%7D%26%2334%3B%5Cn%20%20%20%20index%20%2B%3D%201%5Cn%20%20%20%20break%20if%20planets%5Bindex%5D%20%3D%3D%20%26%2334%3BMars%26%2334%3B%20or%20index%20%26gt%3B%20planets.size%5Cnend%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22666%5C%22%3Euntil%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Eplanets%20%3D%20%5B%26%2334%3BMercury%26%2334%3B%2C%20%26%2334%3BVenus%26%2334%3B%2C%20%26%2334%3BEarth%26%2334%3B%2C%20%26%2334%3BMars%26%2334%3B%2C%20%26%2334%3BJupiter%26%2334%3B%2C%20%26%2334%3BSaturn%26%2334%3B%2C%20%26%2334%3BUranus%26%2334%3B%2C%20%26%2334%3BNeptune%26%2334%3B%5D%5Cnindex%20%3D%20planets.size%20-%201%5Cnuntil%20index%20%26lt%3B%200%5Cn%20%20%20%20puts%20%26%2334%3B%23%7Bplanets%5Bindex%5D%7D%26%2334%3B%5Cn%20%20%20%20index%20-%3D%201%5Cnend%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cpre%3E%3Ccode%3Ea%20%3D%201%5Cnstar%20%3D%20%26%2339%3B*%26%2339%3B%5Cnuntil%20star.length%20%26gt%3B%2010%5Cn%20%20%20%20puts%20star%5Cn%20%20%20%20star%20%2B%3D%20%26%2339%3B*%26%2339%3B%5Cn%20%20%20%20a%20%2B%3D%201%5Cnend%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22669%5C%22%3Etimes%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E10.times%20%7B%20puts%20%26%2334%3B%23%7Brand(1..100)%7D%26%2334%3B%7D%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%20%E5%B0%86%E6%89%93%E5%8D%B0%2010%20%E4%B8%AA%E9%9A%8F%E6%9C%BA%E6%95%B0%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%22671%5C%22%3E%E4%BB%85%E4%BB%85%E5%9B%A0%E4%B8%BA%E4%BD%A0%E5%8F%AF%E4%BB%A5%E5%B9%B6%E4%B8%8D%E6%84%8F%E5%91%B3%E7%9D%80%E4%BD%A0%E5%BA%94%E8%AF%A5%E5%83%8F%E8%BF%99%E6%A0%B7%E8%BF%AD%E4%BB%A3%E4%B8%80%E4%B8%AA%E6%95%B0%E7%BB%84%3C%2Fp%3E%3Cpre%3E%3Ccode%3Edata_sample%20%3D%20%5B2%2C%203%2C%205%2C%207%5D%5Cndata_sample.size.times%20%7B%20%7Cindex%7C%20puts%20%26%2334%3B%23%7Bdata_sample%5Bindex%5D%7D%26%2334%3B%20%7D%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%202%5Cn%23%203%5Cn%23%205%5Cn%23%207%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22673%5C%22%3Eupto%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Edata_sample%20%3D%20%5B2%2C%203%2C%205%2C%207%5D%5Cn0.upto((data_sample.size%20-%201)%20%2F%202)%20%7B%20%7Cindex%7C%20puts%20%26%2334%3B%23%7Bdata_sample%5Bindex%5D%7D%26%2334%3B%20%7D%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%202%5Cn%23%203%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22675%5C%22%3Edownto%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Edata_sample%20%3D%20%5B2%2C%203%2C%205%2C%207%5D%5Cn(data_sample.size%20-%201).downto(data_sample.size%20%2F%202)%20%7B%20%7Cindex%7C%20puts%20%26%2334%3B%23%7Bdata_sample%5Bindex%5D%7D%26%2334%3B%20%7D%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%207%5Cn%23%205%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22677%5C%22%3Estep%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E1.step(20%2C%202)%20%7B%20%7Cnumber%7C%20puts%20%26%2334%3B%23%7Bnumber%7D%26%2334%3B%7D%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%201%5Cn%23%203%5Cn%23%205%5Cn%23%207%5Cn%23%209%5Cn%23%2011%5Cn%23%2013%5Cn%23%2015%5Cn%23%2017%5Cn%23%2019%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Chr%3E%3Cpre%3E%3Ccode%3E19.step(1%2C%20-2)%20%7B%20%7Cnumber%7C%20puts%20%26%2334%3B%23%7Bnumber%7D%26%2334%3B%7D%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%2019%5Cn%23%2017%5Cn%23%2015%5Cn%23%2013%5Cn%23%2011%5Cn%23%209%5Cn%23%207%5Cn%23%205%5Cn%23%203%5Cn%23%201%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22680%5C%22%3Einject%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Enumbers%20%3D%20%5B2%2C%202%2C%202%2C%202%2C%202%5D%5Cnnumbers.inject%7B%20%7Cres%2C%20n%7C%20res%20%2B%20n%20%7D%5Cn%23%20%E8%BE%93%E5%87%BA%E6%98%AF%E6%89%80%E6%9C%89%E6%95%B0%E5%AD%97%E4%B9%8B%E5%92%8C%E7%9A%84%E7%BB%93%E6%9E%9C%5Cn%23%20%E5%A6%82%E6%9E%9C%E4%B8%8D%E7%BB%99res%E8%AE%BE%E7%BD%AE%E5%88%9D%E5%A7%8B%E5%80%BC%EF%BC%8C%E5%88%99%E6%95%B0%E7%BB%84%E7%9A%84%E7%AC%AC%E4%B8%80%E4%B8%AA%E5%85%83%E7%B4%A0%E4%BD%9C%E4%B8%BAres%E7%9A%84%E5%88%9D%E5%A7%8B%E5%80%BC%5Cn%23%2010%5Cn%23%20%E7%8E%B0%E5%9C%A8%E5%B0%86%20res%20%E7%9A%84%E5%80%BC%E8%AE%BE%E7%BD%AE%E4%B8%BA%2011%5Cnnumbers%20%3D%20%5B2%2C%202%2C%202%2C%202%2C%202%5D%5Cnnumbers.inject(11)%20%7B%20%7Cres%2C%20n%7C%20res%20%2B%20n%20%7D%5Cn%23%20so%2011%20%2B%202%2C%2013%20%2B%202%2C%2015%20%2B%202%2C%2017%20%2B%202%20and%2019%20%2B%202%5Cn%23%2021%5Cn%23%20using%20symbol%5Cnnumbers%20%3D%20%5B2%2C%202%2C%202%2C%202%2C%202%5D%5Cnnumbers.inject(%3A%2B)%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%2010%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%22682%5C%22%3E%E4%BD%BF%E7%94%A8%E5%88%9D%E5%A7%8B%E5%80%BC%E5%92%8C%E7%AC%A6%E5%8F%B7%3C%2Fp%3E%3Cpre%3E%3Ccode%3Enumbers%20%3D%20%5B2%2C%202%2C%202%2C%202%2C%202%5D%5Cnnumbers.inject(11%2C%20%3A%2B)%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%2021%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22684%5C%22%3Ereduce%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Enumbers%20%3D%20%5B2%2C%202%2C%202%2C%202%2C%202%5D%5Cnnumbers.reduce(11%2C%20%3A%2B)%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%2021%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22686%5C%22%3Edetect%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Eplanets%20%3D%20%5B%26%2334%3BMercury%26%2334%3B%2C%20%26%2334%3BVenus%26%2334%3B%2C%20%26%2334%3BEarth%26%2334%3B%2C%20%26%2334%3BMars%26%2334%3B%2C%20%26%2334%3BJupiter%26%2334%3B%2C%20%26%2334%3BSaturn%26%2334%3B%2C%20%26%2334%3BUranus%26%2334%3B%2C%20%26%2334%3BNeptune%26%2334%3B%5D%5Cnplanets.detect%20%7B%20%7Cname%7C%20name.start_with%3F(%26%2334%3BE%26%2334%3B)%20and%20name.end_with%3F(%26%2334%3Bh%26%2334%3B)%20%7D%5Cn%23%20output%5Cn%23%20Earth%5Cnsalary%20%3D%20%5B399%2C%20234%2C%20566%2C%20533%2C%20233%5D%5Cnsalary.detect%20%7B%20%7Cs%7C%20s%20%26gt%3B%201000%20%7D%5Cn%23%20output%5Cn%23%20nil%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22688%5C%22%3Efind%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Eplanets%20%3D%20%5B%26%2334%3BMercury%26%2334%3B%2C%20%26%2334%3BVenus%26%2334%3B%2C%20%26%2334%3BEarth%26%2334%3B%2C%20%26%2334%3BMars%26%2334%3B%2C%20%26%2334%3BJupiter%26%2334%3B%2C%20%26%2334%3BSaturn%26%2334%3B%2C%20%26%2334%3BUranus%26%2334%3B%2C%20%26%2334%3BNeptune%26%2334%3B%5D%5Cnplanets.find%20%7B%20%7Cname%7C%20name.start_with%3F(%26%2334%3BE%26%2334%3B)%20and%20name.end_with%3F(%26%2334%3Bh%26%2334%3B)%20%7D%5Cn%23%20output%5Cn%23%20Earth%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22690%5C%22%3Eselect%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Enumbers%20%3D%20%5B1%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%2C%2010%5D%5Cnnumbers.select%20%7B%20%7Cn%7C%20n%20%25%202%20%3D%3D%200%20%7D%5Cn%23%20%E7%8E%B0%E5%9C%A8%E4%BD%A0%E6%9C%89%E4%B8%80%E4%B8%AA%E5%81%B6%E6%95%B0%E6%95%B0%E7%BB%84%5Cn%23%20%5B2%2C%204%2C%206%2C%208%2C%2010%5D%5Cn%23%20%E5%A6%82%E6%9E%9C%E6%B2%A1%E6%9C%89%E6%BB%A1%E8%B6%B3%E6%82%A8%E7%9A%84%E9%80%BB%E8%BE%91%E7%9A%84%E5%80%BC%EF%BC%8C%E5%88%99%E8%BF%94%E5%9B%9E%E4%B8%80%E4%B8%AA%E7%A9%BA%E6%95%B0%E7%BB%84%5Cn%5B1%2C%201%2C%201%5D.select%20%7B%20%7Cn%7C%20n%20%25%202%20%3D%3D%200%20%7D%5Cn%23%20no%20even%20numbers%5Cn%23%20%5B%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22692%5C%22%3Ereject%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Enumbers%20%3D%20%5B1%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%2C%2010%5D%5Cnnumbers.reject%20%7B%20%7Cn%7C%20n%20%25%202%20%3D%3D%200%20%7D%5Cn%23%20%E5%A6%82%E6%9E%9C%E6%95%B0%E5%AD%97%E6%98%AF%E5%81%B6%E6%95%B0%E5%88%99%E6%8B%92%E7%BB%9D%EF%BC%8C%E6%89%80%E4%BB%A5%E7%8E%B0%E5%9C%A8%E6%88%91%E4%BB%AC%E6%9C%89%E4%B8%80%E4%B8%AA%E5%A5%87%E6%95%B0%E6%95%B0%E7%BB%84%5Cn%23%20%5B1%2C%203%2C%205%2C%207%2C%209%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22694%5C%22%3Ekeep_if%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Enumbers%20%3D%20%5B1%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%2C%2010%5D%5Cnnumbers.keep_if%20%7B%20%7Cn%7C%20n%20%25%202%20%3D%3D%200%20%7D%5Cn%23%20numbers%20%E6%95%B0%E7%BB%84%E4%BB%85%E5%8C%85%E5%90%AB%E5%81%B6%E6%95%B0%5Cn%23%20%5B2%2C%204%2C%206%2C%208%2C%2010%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22696%5C%22%3Edelete_if%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Enumbers%20%3D%20%5B1%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%2C%2010%5D%5Cnnumbers.delete_if%20%7B%20%7Cn%7C%20n%20%25%202%20%3D%3D%200%20%7D%5Cn%23%20numbers%20%E6%95%B0%E7%BB%84%E4%BB%85%E5%8C%85%E5%90%AB%E5%A5%87%E6%95%B0%5Cn%23%20%5B1%2C%203%2C%205%2C%207%2C%209%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22698%5C%22%3Edrop_while%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Enumbers%20%3D%20%5B1%2C%202%2C%203%2C%201%2C%202%2C%203%2C%200%5D%5Cnnumbers.drop_while%20%7B%20%7Cn%7C%20n%20%26lt%3B%203%20%7D%5Cn%23%20%E6%98%AF%203%20%E5%B0%8F%E4%BA%8E%203%EF%BC%8C%E8%BF%94%E5%9B%9E%20false%EF%BC%8C%E6%89%80%E4%BB%A5%E5%88%A0%E9%99%A4%201%2C%202%5Cn%23%20%5B3%2C%201%2C%202%2C%203%2C%200%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22700%5C%22%3Ereverse_each%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Ewords%20%3D%20%25w%5Bfirst%20second%20third%20fourth%20fifth%20sixth%5D%5Cnstr%20%3D%20%26%2334%3B%26%2334%3B%5Cnwords.reverse_each%20%7B%7Cword%7C%20str%20%2B%3D%20%26%2334%3B%23%7Bword%7D%20%26%2334%3B%7D%5Cnp%20str%20%23%3D%26gt%3B%20%26%2334%3Bsixth%20fifth%20fourth%20third%20second%20first%20%26%2334%3B%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22702%5C%22%3E%E5%B8%83%E5%B0%94%E5%8F%AF%E6%9E%9A%E4%B8%BE%E6%96%B9%E6%B3%95%3C%2Fh1%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22703%5C%22%3E%E5%B8%83%E5%B0%94%E5%8F%AF%E6%9E%9A%E4%B8%BE%E6%96%B9%E6%B3%95%3C%2Fh1%3E%3Cdiv%20class%3D%5C%22tableWrapper%5C%22%3E%3Ctable%20style%3D%5C%22min-width%3A%20112px%3B%5C%22%3E%3Ccolgroup%3E%3Ccol%3E%3Ccol%3E%3C%2Fcolgroup%3E%3Ctbody%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22704%5C%22%3Eall%3F%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22705%5C%22%3E%E5%BD%93%E6%82%A8%E6%83%B3%E6%A3%80%E6%9F%A5%E6%89%80%E6%9C%89%E5%85%83%E7%B4%A0%E6%98%AF%E5%90%A6%E6%BB%A1%E8%B6%B3%E6%82%A8%E7%9A%84%E6%9D%A1%E4%BB%B6%E6%97%B6%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22706%5C%22%3Eany%3F%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22707%5C%22%3E%E5%BD%93%E6%82%A8%E6%83%B3%E6%A3%80%E6%9F%A5%E8%87%B3%E5%B0%91%E4%B8%80%E9%A1%B9%E6%98%AF%E5%90%A6%E6%BB%A1%E8%B6%B3%E6%82%A8%E7%9A%84%E6%9D%A1%E4%BB%B6%E6%97%B6%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22708%5C%22%3Eone%3F%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22709%5C%22%3E%E5%BD%93%E6%82%A8%E6%83%B3%E6%A3%80%E6%9F%A5%E4%B8%80%E4%B8%AA%E5%85%83%E7%B4%A0%E6%98%AF%E5%90%A6%E6%BB%A1%E8%B6%B3%E6%82%A8%E7%9A%84%E8%A6%81%E6%B1%82%E6%97%B6%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22710%5C%22%3Enone%3F%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22711%5C%22%3E%E5%BD%93%E6%82%A8%E6%83%B3%E6%A3%80%E6%9F%A5%E6%98%AF%E5%90%A6%E6%B2%A1%E6%9C%89%E4%BB%BB%E4%BD%95%E9%A1%B9%E7%9B%AE%E6%BB%A1%E8%B6%B3%E6%82%A8%E7%9A%84%E6%9D%A1%E4%BB%B6%E6%97%B6%EF%BC%8C%E7%9B%B8%E5%8F%8D%EF%BC%9F%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22712%5C%22%3Eempty%3F%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22713%5C%22%3E%E5%BD%93%E4%BD%A0%E6%83%B3%E6%A3%80%E6%9F%A5%E5%AF%B9%E8%B1%A1%E6%98%AF%E5%90%A6%E4%B8%BA%E7%A9%BA%E6%97%B6%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3Ctr%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22714%5C%22%3Einclude%3F%3C%2Fp%3E%3C%2Ftd%3E%3Ctd%3E%3Cp%20data-track%3D%5C%22715%5C%22%3E%E5%BD%93%E4%BD%A0%E6%83%B3%E6%A3%80%E6%9F%A5%E5%85%83%E7%B4%A0%E6%98%AF%E5%90%A6%E5%AD%98%E5%9C%A8%E4%BA%8E%E5%AF%B9%E8%B1%A1%E4%B8%AD%E6%97%B6%3C%2Fp%3E%3C%2Ftd%3E%3C%2Ftr%3E%3C%2Ftbody%3E%3C%2Ftable%3E%3C%2Fdiv%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22716%5C%22%3Eall%3F%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E%5B2%2C%204%2C%206%2C%208%2C%2010%5D.all%3F%20%7B%20%7Cnum%7C%20num%20%25%202%20%3D%3D%200%20%7D%5Cn%23%20true%5Cn%5B1%2C%204%2C%206%2C%208%2C%2010%5D.all%3F%20%7B%20%7Cnum%7C%20num%20%25%202%20%3D%3D%200%20%7D%5Cn%23%20false%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22718%5C%22%3Eany%3F%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E%5B1%2C%203%2C%205%2C%207%2C%2010%5D.any%3F%20%7B%20%7Cnum%7C%20num%20%25%202%20%3D%3D%200%20%7D%5Cn%23%20true%5Cn%5B1%2C%203%2C%205%2C%207%2C%2019%5D.any%3F%20%7B%20%7Cnum%7C%20num%20%25%202%20%3D%3D%200%20%7D%5Cn%23%20false%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22720%5C%22%3Eone%3F%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E%5B1%2C%203%2C%202%2C%205%2C%207%5D.one%3F%20%7B%20%7Cnum%7C%20num%20%25%202%20%3D%3D%200%20%7D%5Cn%23%20true%5Cn%5B1%2C%203%2C%202%2C%205%2C%204%5D.one%3F%20%7B%20%7Cnum%7C%20num%20%25%202%20%3D%3D%200%20%7D%5Cn%23%20false%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22722%5C%22%3Enone%3F%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E%5B1%2C%203%2C%205%2C%207%2C%209%5D.none%3F%20%7B%20%7Cnum%7C%20num%20%25%202%20%3D%3D%200%20%7D%5Cn%23%20true%5Cn%5B2%2C%203%2C%205%2C%207%2C%209%5D.none%3F%20%7B%20%7Cnum%7C%20num%20%25%202%20%3D%3D%200%20%7D%5Cn%23%20false%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22724%5C%22%3Eempty%3F%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E%5B%5D.empty%3F%5Cn%23%20true%5Cn%5B1%2C%203%2C%205%2C%207%2C%209%5D.empty%3F%5Cn%23%20false%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22726%5C%22%3E%E7%BB%84%E5%90%88%E6%96%B9%E6%B3%95%3C%2Fh1%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22727%5C%22%3E%E7%BB%84%E5%90%88%E6%96%B9%E6%B3%95%3C%2Fh1%3E%3Cul%3E%3Cli%20data-track%3D%5C%22728%5C%22%3E%26%20%E8%BF%94%E5%9B%9E%E4%B8%80%E4%B8%AA%E6%96%B0%E6%95%B0%E7%BB%84%EF%BC%8C%E5%85%B6%E4%B8%AD%E5%8C%85%E5%90%AB%E5%9C%A8%E6%95%B0%E7%BB%84%E5%92%8C%E6%95%B0%E7%BB%84%20other_array%20%E4%B8%AD%E6%89%BE%E5%88%B0%E7%9A%84%E6%AF%8F%E4%B8%AA%E5%85%83%E7%B4%A0%EF%BC%9B%E7%9C%81%E7%95%A5%E9%87%8D%E5%A4%8D%EF%BC%9B%E4%BD%BF%E7%94%A8%20eql%3F%20%E6%AF%94%E8%BE%83%E9%A1%B9%E7%9B%AE%3C%2Fli%3E%3Cli%20data-track%3D%5C%22729%5C%22%3Eintersection%20%E8%BF%94%E5%9B%9E%E4%B8%80%E4%B8%AA%E6%96%B0%E6%95%B0%E7%BB%84%EF%BC%8C%E5%85%B6%E4%B8%AD%E5%8C%85%E5%90%AB%E5%9C%A8%20self%20%E5%92%8C%E6%89%80%E6%9C%89%E7%BB%99%E5%AE%9A%E6%95%B0%E7%BB%84%20other_arrays%20%E4%B8%AD%E6%89%BE%E5%88%B0%E7%9A%84%E6%AF%8F%E4%B8%AA%E5%85%83%E7%B4%A0%EF%BC%9B%E7%9C%81%E7%95%A5%E9%87%8D%E5%A4%8D%EF%BC%9B%E4%BD%BF%E7%94%A8%20eql%3F%20%E6%AF%94%E8%BE%83%E9%A1%B9%E7%9B%AE%3C%2Fli%3E%3Cli%20data-track%3D%5C%22730%5C%22%3E%2B%20%E8%BF%94%E5%9B%9E%E4%B8%80%E4%B8%AA%E6%95%B0%E7%BB%84%EF%BC%8C%E8%AF%A5%E6%95%B0%E7%BB%84%E5%8C%85%E5%90%AB%20self%20%E7%9A%84%E6%89%80%E6%9C%89%E5%85%83%E7%B4%A0%EF%BC%8C%E5%90%8E%E8%B7%9F%E7%BB%99%E5%AE%9A%E6%95%B0%E7%BB%84%E7%9A%84%E6%89%80%E6%9C%89%E5%85%83%E7%B4%A0%3C%2Fli%3E%3Cli%20data-track%3D%5C%22731%5C%22%3E-%20%E8%BF%94%E5%9B%9E%E4%B8%80%E4%B8%AA%E6%95%B0%E7%BB%84%EF%BC%8C%E5%85%B6%E4%B8%AD%E5%8C%85%E5%90%AB%E5%9C%A8%E7%BB%99%E5%AE%9A%E6%95%B0%E7%BB%84%E4%B8%AD%E6%89%BE%E4%B8%8D%E5%88%B0%E7%9A%84%E6%89%80%E6%9C%89%20self%20%E5%85%83%E7%B4%A0%3C%2Fli%3E%3Cli%20data-track%3D%5C%22732%5C%22%3Eunion%20%E8%BF%94%E5%9B%9E%E4%B8%80%E4%B8%AA%E6%95%B0%E7%BB%84%EF%BC%8C%E5%85%B6%E4%B8%AD%E5%8C%85%E5%90%AB%20self%20%E7%9A%84%E6%89%80%E6%9C%89%E5%85%83%E7%B4%A0%E5%92%8C%E7%BB%99%E5%AE%9A%E6%95%B0%E7%BB%84%E7%9A%84%E6%89%80%E6%9C%89%E5%85%83%E7%B4%A0%EF%BC%8C%E5%B7%B2%E5%88%A0%E9%99%A4%E9%87%8D%E5%A4%8D%E9%A1%B9%3C%2Fli%3E%3Cli%20data-track%3D%5C%22733%5C%22%3Edifference%20%E8%BF%94%E5%9B%9E%E4%B8%80%E4%B8%AA%E6%95%B0%E7%BB%84%EF%BC%8C%E5%85%B6%E4%B8%AD%E5%8C%85%E5%90%AB%E5%9C%A8%E4%BB%BB%E4%BD%95%E7%BB%99%E5%AE%9A%E6%95%B0%E7%BB%84%E4%B8%AD%E6%89%BE%E4%B8%8D%E5%88%B0%E7%9A%84%E6%89%80%E6%9C%89%20self%20%E5%85%83%E7%B4%A0%3C%2Fli%3E%3Cli%20data-track%3D%5C%22734%5C%22%3Eproduct%20%E8%BF%94%E5%9B%9E%E6%88%96%E4%BA%A7%E7%94%9F%E6%9D%A5%E8%87%AA%20self%20%E5%92%8C%E7%BB%99%E5%AE%9A%E6%95%B0%E7%BB%84%E7%9A%84%E6%89%80%E6%9C%89%E5%85%83%E7%B4%A0%E7%BB%84%E5%90%88%3C%2Fli%3E%3C%2Ful%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22735%5C%22%3E%26%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E%5B0%2C%201%2C%202%2C%203%5D%20%26%20%5B1%2C%202%5D%20%23%20%3D%26gt%3B%20%5B1%2C%202%5D%5Cn%5B0%2C%201%2C%200%2C%201%5D%20%26%20%5B0%2C%201%5D%20%23%20%3D%26gt%3B%20%5B0%2C%201%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22737%5C%22%3Eintersection%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E%5B0%2C%201%2C%202%2C%203%5D.intersection(%5B0%2C%201%2C%202%5D%2C%20%5B0%2C%201%2C%203%5D)%5Cn%23%20%3D%26gt%3B%20%5B0%2C%201%5D%5Cn%5B0%2C%200%2C%201%2C%201%2C%202%2C%203%5D.intersection(%5B0%2C%201%2C%202%5D%2C%20%5B0%2C%201%2C%203%5D)%5Cn%23%20%3D%26gt%3B%20%5B0%2C%201%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22739%5C%22%3E%2B%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Ea%20%3D%20%5B0%2C%201%5D%20%2B%20%5B2%2C%203%5D%5Cna%20%23%20%3D%26gt%3B%20%5B0%2C%201%2C%202%2C%203%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22741%5C%22%3E-%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E%5B0%2C%201%2C%201%2C%202%2C%201%2C%201%2C%203%2C%201%2C%201%5D%20-%20%5B1%5D%20%5Cn%23%20%3D%26gt%3B%20%5B0%2C%202%2C%203%5D%5Cn%5B0%2C%201%2C%202%2C%203%5D%20-%20%5B3%2C%200%5D%20%5Cn%23%20%3D%26gt%3B%20%5B1%2C%202%5D%5Cn%5B0%2C%201%2C%202%5D%20-%20%5B4%5D%20%5Cn%23%20%3D%26gt%3B%20%5B0%2C%201%2C%202%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22743%5C%22%3Eunion%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E%5B0%2C%201%2C%202%2C%203%5D.union(%5B4%2C%205%5D%2C%20%5B6%2C%207%5D)%20%5Cn%23%20%3D%26gt%3B%20%5B0%2C%201%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%5D%5Cn%5B0%2C%201%2C%201%5D.union(%5B2%2C%201%5D%2C%20%5B3%2C%201%5D)%20%5Cn%23%20%3D%26gt%3B%20%5B0%2C%201%2C%202%2C%203%5D%5Cn%5B0%2C%201%2C%202%2C%203%5D.union(%5B3%2C%202%5D%2C%20%5B1%2C%200%5D)%20%5Cn%23%20%3D%26gt%3B%20%5B0%2C%201%2C%202%2C%203%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22745%5C%22%3Edifference%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E%5B0%2C%201%2C%201%2C%202%2C%201%2C%201%2C%203%2C%201%2C%201%5D.difference(%5B1%5D)%5Cn%23%20%3D%26gt%3B%20%5B0%2C%202%2C%203%5D%5Cn%5B0%2C%201%2C%202%2C%203%5D.difference(%5B3%2C%200%5D%2C%20%5B1%2C%203%5D)%5Cn%23%20%3D%26gt%3B%20%5B2%5D%5Cn%5B0%2C%201%2C%202%5D.difference(%5B4%5D)%5Cn%23%20%3D%26gt%3B%20%5B0%2C%201%2C%202%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22747%5C%22%3Eproduct%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Ea%20%3D%20%5B0%2C%201%2C%202%5D%5Cna1%20%3D%20%5B3%2C%204%5D%5Cnp%20%3D%20a.product(a1)%5Cnp.size%20%23%20%3D%26gt%3B%206%20%23%20a.size%20*%20a1.size%5Cnp%20%23%20%3D%26gt%3B%20%5B%5B0%2C%203%5D%2C%20%5B0%2C%204%5D%2C%20%5B1%2C%203%5D%2C%20%5B1%2C%204%5D%2C%20%5B2%2C%203%5D%2C%20%5B2%2C%204%5D%5D%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22749%5C%22%3E%E5%BE%AA%E7%8E%AF%3C%2Fh1%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22750%5C%22%3Ewhile%20%E5%BE%AA%E7%8E%AF%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E%23%20variable%20count%5Cncount%20%3D%204%5Cn%23%20using%20while%20loop%5Cn%23%20here%20conditional%20is%20count%20i.e.%204%5Cnwhile%20count%20%26gt%3B%3D%201%5Cn%20%20%23%20statements%20to%20be%20executed%5Cn%20%20puts%20%26%2334%3BRuby%20Cheatsheet%26%2334%3B%5Cn%20%20count%20%3D%20count%20-%201%5Cn%20%20%23%20while%20loop%20ends%20here%5Cnend%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%22752%5C%22%3E%E8%BE%93%E5%87%BA%3C%2Fp%3E%3Cpre%3E%3Ccode%3ERuby%20Cheatsheet%5CnRuby%20Cheatsheet%5CnRuby%20Cheatsheet%5CnRuby%20Cheatsheet%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22754%5C%22%3Efor%20%E5%BE%AA%E7%8E%AF%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E%23%20loop%20using%20range%20as%20expression%5Cntext%20%3D%20%26%2334%3BRuby%20Cheatsheet%26%2334%3B%5Cn%23%20using%20for%20loop%20with%20the%20range%5Cnfor%20count%20in%201..5%20do%5Cn%20%20puts%20text%5Cnend%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%22756%5C%22%3E%E8%BE%93%E5%87%BA%3C%2Fp%3E%3Cpre%3E%3Ccode%3ERuby%20Cheatsheet%5CnRuby%20Cheatsheet%5CnRuby%20Cheatsheet%5CnRuby%20Cheatsheet%5CnRuby%20Cheatsheet%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22758%5C%22%3Edo..while%20%E5%BE%AA%E7%8E%AF%3C%2Fh1%3E%3Cpre%3E%3Ccode%3E%23%20starting%20of%20do..while%20loop%5Cnloop%20do%5Cn%20%20puts%20%26%2334%3BRuby%20Cheatsheet%26%2334%3B%5Cn%20%20val%20%3D%20%26%2339%3B7%26%2339%3B%5Cn%20%20%23%20using%20boolean%20expressions%5Cn%20%20if%20val%20%3D%3D%20%26%2339%3B7%26%2339%3B%5Cn%20%20%20%20break%5Cn%20%20end%5Cn%20%20%23%20ending%20of%20ruby%20do..while%20loop%5Cnend%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%22760%5C%22%3E%E8%BE%93%E5%87%BA%3C%2Fp%3E%3Cpre%3E%3Ccode%3ERuby%20Cheatsheet%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22762%5C%22%3Euntil%20%E5%BE%AA%E7%8E%AF%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Evar%20%3D%207%5Cn%23%20here%20do%20is%20optional%5Cnuntil%20var%20%3D%3D%2011%20do%5Cn%20%20%23%20code%20to%20be%20executed%5Cn%20%20puts%20var%20*%2010%5Cn%20%20var%20%3D%20var%20%2B%201%5Cn%20%20%23%20here%20loop%20ends%5Cnend%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%22764%5C%22%3E%E8%BE%93%E5%87%BA%3C%2Fp%3E%3Cpre%3E%3Ccode%3E70%5Cn80%5Cn90%5Cn100%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22766%5C%22%3E%E8%B7%B3%E5%87%BA%E5%BE%AA%E7%8E%AF%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Esalary%20%3D%20%5B399%2C%20234%2C%20566%2C%20533%2C%20233%5D%5Cnsalary.each%20do%20%7Cs%7C%5Cn%20%20break%20if%20s%20%3D%3D%20566%5Cn%20%20puts%20s%5Cnend%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%20399%5Cn%23%20234%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%22768%5C%22%3E%E9%80%9A%E8%BF%87%E4%BD%BF%E7%94%A8%20break%20%E5%85%B3%E9%94%AE%E5%AD%97%3C%2Fp%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22769%5C%22%3E%E5%9C%A8%E5%BE%AA%E7%8E%AF%E5%86%85%E8%B7%B3%E8%BF%87%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Esalary%20%3D%20%5B399%2C%20234%2C%20566%2C%20533%2C%20233%5D%5Cnsalary.each%20do%20%7Cs%7C%5Cn%20%20next%20if%20s%20%3D%3D%20533%5Cn%20%20puts%20s%5Cnend%5Cn%23%20%E8%BE%93%E5%87%BA%5Cn%23%20399%5Cn%23%20234%5Cn%23%20566%5Cn%23%20233%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%22771%5C%22%3E%E9%80%9A%E8%BF%87%E4%BD%BF%E7%94%A8%20next%20%E5%85%B3%E9%94%AE%E5%AD%97%3C%2Fp%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22772%5C%22%3E%E9%87%8D%E5%A4%8D%E5%BD%93%E5%89%8D%E8%BF%AD%E4%BB%A3%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Edata%20%3D%20%5B456%2C%203000%5D%5Cnretry_count%20%3D%200%5Cnstatus%20%3D%20%26%2334%3Bnetwork%20failure%26%2334%3B%5Cnsum%20%3D%200%5Cndata.each%20do%20%7Cd%7C%5Cn%20%20%20%20if%20retry_count%20%3D%3D%203%5Cn%20%20%20%20%20%20%20%20status%20%3D%20%26%2334%3Bconnection%20established%26%2334%3B%5Cn%20%20%20%20%20%20%20%20retry_count%20%3D%200%5Cn%20%20%20%20%20%20%20%20redo%5Cn%20%20%20%20elsif%20status%20%3D%3D%20%26%2334%3Bnetwork%20failure%26%2334%3B%20and%20retry_count%20%26lt%3B%205%5Cn%20%20%20%20%20%20%20%20puts%20%26%2334%3Bnetwork%20failure%20%23%7Bretry_count%7D%26%2334%3B%5Cn%20%20%20%20%20%20%20%20retry_count%20%2B%3D%201%5Cn%20%20%20%20%20%20%20%20redo%5Cn%20%20%20%20elsif%20status%20%3D%3D%20%26%2334%3Bconnection%20established%26%2334%3B%5Cn%20%20%20%20%20%20%20%20puts%20d%5Cn%20%20%20%20%20%20%20%20sum%20%2B%3D%20d%5Cn%20%20%20%20end%5Cnend%5Cn%23%20output%20of%20sum%5Cn%23%203456%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22774%5C%22%3E%E9%87%8D%E6%96%B0%E5%BC%80%E5%A7%8B%E5%BE%AA%E7%8E%AF%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Enumbers%20%3D%20%5B2%2C%202%2C%2044%2C%2044%5D%5Cnsum%20%3D%200%5Cnbegin%5Cn%20%20%20%20numbers.each%20do%20%7Cs%7C%5Cn%20%20%20%20%20%20%20%20if%20rand(1..10)%20%3D%3D%205%5Cn%20%20%20%20%20%20%20%20%20%20%20%20puts%20%26%2334%3Bhi%205%2C%20let%26%2339%3Bs%20do%20it%20again!%26%2334%3B%5Cn%20%20%20%20%20%20%20%20%20%20%20%20sum%20%3D%200%5Cn%20%20%20%20%20%20%20%20%20%20%20%20raise%20%26%2334%3Bhi%205%26%2334%3B%5Cn%20%20%20%20%20%20%20%20end%5Cn%20%20%20%20%20%20%20%20puts%20s%5Cn%20%20%20%20%20%20%20%20sum%20%2B%3D%20s%5Cn%20%20%20%20end%5Cnrescue%5Cn%20%20%20%20retry%5Cnend%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22776%5C%22%3EClasses%3C%2Fh1%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22777%5C%22%3EClasses%20%E7%A4%BA%E4%BE%8B%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Eclass%20Person%5Cn%20%20%20%20%23%20when%20you%20create%20a%20new%20object%2C%20it%20looks%20for%20a%20method%20named%20initialize%20and%20executes%20it%2C%20like%20a%20constructor%20in%20java%5Cn%20%20%20%20%23%20def%20initialize(name%2C%20number)%5Cn%20%20%20%20%23%20%20%20%20%40name%20%3D%20name%5Cn%20%20%20%20%23%20%20%20%20%40number%20%3D%20number%5Cn%20%20%20%20%23%20end%5Cn%20%20%20%20%23%20instance%20variable%5Cn%20%20%20%20%23%20%40name%5Cn%20%20%20%20%23%20class%20variable%5Cn%20%20%20%20%23%20%40%40count%5Cn%20%20%20%20%23%20attr_accessor%20acts%20as%20a%20getter%20and%20setter%20for%20the%20following%20instance%20attributes%5Cn%20%20%20%20attr_accessor%20%3Aname%2C%20%3Anumber%5Cn%20%20%20%20%23%20class%20variable%20must%20be%20initialized%5Cn%20%20%20%20%40%40count%20%3D%200%5Cn%20%20%20%20def%20self.count%5Cn%20%20%20%20%20%20%20%20%40%40count%5Cn%20%20%20%20end%5Cn%20%20%20%20def%20self.count%3D(count)%5Cn%20%20%20%20%20%20%20%20%40%40count%20%3D%20count%5Cn%20%20%20%20end%5Cn%20%20%20%20def%20initialize%5Cn%20%20%20%20%20%20%20%20%40%40count%20%2B%3D%201%5Cn%20%20%20%20end%5Cnend%5Cn%23%20create%20an%20instance%20of%20the%20Person%20class%5Cnp1%20%3D%20Person.new%5Cn%23%20set%20attributes%20of%20the%20Person%20class%5Cnp1.name%20%3D%20%26%2334%3BYukihiro%20Matsumoto%26%2334%3B%5Cnp1.number%20%3D%209999999999%5Cn%23%20get%20attributes%20of%20the%20Person%20class%5Cnputs%20%26%2334%3B%23%7Bp1.name%7D%26%2334%3B%5Cnputs%20%26%2334%3B%23%7Bp1.number%7D%26%2334%3B%5Cnputs%20%26%2334%3B%23%7BPerson.count%7D%26%2334%3B%5Cn%23%20Yukihiro%20Matsumoto%5Cn%23%209999999999%5Cn%23%201%5Cnp2%20%3D%20Person.new%5Cnp2.name%20%3D%20%26%2334%3BYukihiro%20Matsumoto%26%2334%3B%5Cnp2.number%20%3D%209999999999%5Cn%23%20get%20attributes%20of%20the%20Person%20class%5Cnputs%20%26%2334%3B%23%7Bp2.name%7D%26%2334%3B%5Cnputs%20%26%2334%3B%23%7Bp2.number%7D%26%2334%3B%5Cnputs%20%26%2334%3B%23%7BPerson.count%7D%26%2334%3B%5Cn%23%20Yukihiro%20Matsumoto%5Cn%23%209999999999%5Cn%23%202%5Cn%23%20set%20class%20variable%5CnPerson.count%20%3D%203%5Cnputs%20%26%2334%3B%23%7BPerson.count%7D%26%2334%3B%5Cn%23%203%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22779%5C%22%3E%E7%BB%A7%E6%89%BF%E4%B8%80%E4%B8%AA%E7%B1%BB%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Eclass%20Person%5Cn%20%20%20%20attr_accessor%20%3Aname%2C%20%3Anumber%5Cnend%5Cn%23%20%E4%BD%BF%E7%94%A8%20%26lt%3B%20%E7%AC%A6%E5%8F%B7%E4%BB%8E%E7%88%B6%E7%B1%BB%E7%BB%A7%E6%89%BF%E6%96%B9%E6%B3%95%E5%92%8C%E5%B1%9E%E6%80%A7%5Cnclass%20Student%20%26lt%3B%20Person%5Cn%20%20%20%20attr_accessor%20%3Aid%5Cnend%5Cns%20%3D%20Student.new%5Cns.name%20%3D%20%26%2334%3BJames%20Bond%26%2334%3B%5Cns.number%20%3D%20700%5Cns.id%20%3D%20678%5Cnputs%20%26%2334%3B%23%7Bp.name%7D%26%2334%3B%5CnJames%20Bond%5Cnputs%20%26%2334%3B%23%7Bp.number%7D%26%2334%3B%5Cn700%5Cnputs%20%26%2334%3B%23%7Bp.id%7D%26%2334%3B%5Cn678%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22781%5C%22%3E%E6%A3%80%E6%9F%A5%E5%AE%9E%E4%BE%8B%E7%B1%BB%E5%9E%8B%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Eclass%20Vehicle%3B%20end%5Cnclass%20Car%20%26lt%3B%20Vehicle%3B%20end%5Cnclass%20Audi%20%26lt%3B%20Car%3B%20end%5Cncar%20%3D%20Car.new%5Cncar.instance_of%3F%20Vehicle%5Cnfalse%5Cncar.instance_of%3F%20Car%5Cntrue%5Cncar.instance_of%3F%20Audi%5Cnfalse%5Cna%20%3D%207%5Cna.instance_of%3F%20Integer%5Cntrue%5Cna.instance_of%3F%20Numeric%5Cnfalse%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cp%20data-track%3D%5C%22783%5C%22%3E%E5%A6%82%E6%9E%9C%E5%AF%B9%E8%B1%A1%E6%98%AF%E7%BB%99%E5%AE%9A%E7%B1%BB%E7%9A%84%E5%AE%9E%E4%BE%8B%EF%BC%8C%E8%80%8C%E4%B8%8D%E6%98%AF%E5%AD%90%E7%B1%BB%E6%88%96%E8%B6%85%E7%B1%BB%EF%BC%8C%E5%88%99%E8%BF%94%E5%9B%9E%20true%3C%2Fp%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22784%5C%22%3E%E6%89%93%E5%8D%B0%E4%B8%80%E4%B8%AA%E7%B1%BB%E7%9A%84%E6%89%80%E6%9C%89%E6%96%B9%E6%B3%95%E5%90%8D%3C%2Fh1%3E%3Cpre%3E%3Ccode%3Eputs%20(String.methods).sort%5Cn%23%20%E6%8E%92%E9%99%A4%E4%BB%8E%20Object%20%E7%B1%BB%E7%BB%A7%E6%89%BF%E7%9A%84%E6%96%B9%E6%B3%95%5Cnputs%20(String.methods%20-%20Object.public_instance_methods).sort%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Ch1%20class%3D%5C%22pgc-h-arrow-right%5C%22%20data-track%3D%5C%22786%5C%22%3E%E6%A3%80%E6%9F%A5%E4%B8%80%E4%B8%AA%E7%B1%BB%E6%98%AF%E5%90%A6%E6%9C%89%E7%89%B9%E5%AE%9A%E7%9A%84%E6%96%B9%E6%B3%95%3C%2Fh1%3E%3Cpre%3E%3Ccode%3EString.respond_to%3F(%3Aprepend)%5Cntrue%5CnString.respond_to%3F(%3Aappend)%5Cnfalse%5Cn%3C%2Fcode%3E%3C%2Fpre%3E%3Cblockquote%20class%3D%5C%22pgc-blockquote-abstract%5C%22%3E%3Cp%20data-track%3D%5C%22792%5C%22%3E%E5%AE%98%E7%BD%91%20ruby-lang.org%3C%2Fp%3E%3C%2Fblockquote%3E%22%2C%22imageList%22%3A%5B%5D%2C%22mediaInfo%22%3A%7B%22userId%22%3A%22MS4wLjABAAAAdfVpTeVPCYdG7S2OB-B_OBqsBdYchGkRwQLoLwi6a7AdPmp0ilaHf4rO_gkbjlpC%22%2C%22unsafeUserId%22%3A%224076612972183933%22%2C%22name%22%3A%22Web3%E8%BD%AF%E4%BB%B6%E5%BC%80%E5%8F%91%22%2C%22avatarUrl%22%3A%22https%3A%2F%2Fsf6-cdn-tos.toutiaostatic.com%2Fimg%2Fuser-avatar%2F92a3bf25c177013a076e0ff1594f43f0~300x300.image%22%2C%22description%22%3A%22Php%2CJava%2CDelphi%2Cpython%E2%80%A6%E2%80%A6%EF%BC%8C%E7%A8%8B%E5%BA%8F%E7%83%AD%E7%88%B1%E8%80%85!%22%2C%22userVerified%22%3A1%7D%2C%22seoTDK%22%3A%7B%22title%22%3A%22Ruby%20%E6%9C%80%E5%B8%B8%E7%94%A8%E6%8C%87%E4%BB%A4%E5%92%8C%E5%87%BD%E6%95%B0%EF%BC%88%E5%A4%87%E5%BF%98%E6%9F%A5%E8%AF%A2%EF%BC%89-%E4%BB%8A%E6%97%A5%E5%A4%B4%E6%9D%A1%22%2C%22description%22%3A%22%E4%BD%BF%E7%94%A8%20rbenv%20%E5%AE%89%E8%A3%85%20ruby%E3%80%82%E5%A6%82%E4%BD%95%E5%AE%89%E8%A3%85%20ruby%20gem%20%E7%AE%A1%E7%90%86%E5%99%A8%EF%BC%8C%20bundler%20gem%E3%80%82%E5%8C%85%E5%90%AB%E5%9C%A8%20%7B%20%7D%20%E4%B8%AD%E7%9A%84%E4%BB%A3%E7%A0%81%E5%9C%A8%E7%A8%8B%E5%BA%8F%E8%BF%90%E8%A1%8C%E4%B9%8B%E5%89%8D%E8%BF%90%E8%A1%8C%E3%80%82%22%2C%22keywords%22%3A%22Ruby%2CUbuntu%20%2CDocker%2CBash%2CDebian%2C%E8%84%9A%E6%9C%AC%E8%AF%AD%E8%A8%80%2CWindows%22%2C%22publishTimestamp%22%3A%221669078909%22%2C%22modifiedTimestamp%22%3A%221704161345%22%7D%2C%22cover%22%3A%22https%3A%2F%2Fp3-sign.toutiaoimg.com%2Ftos-cn-i-qvj2lq49k0%2F630fd144f4e3497b84142fa3461ab03a~tplv-tt-shrink-asy2%3A640%3A0%3A5aS05p2hQFdlYjPova_ku7blvIDlj5E%3D.jpeg%3F_iz%3D58558%26from%3Darticle.pc_detail%26lk3s%3D953192f4%26x-expires%3D1709486113%26x-signature%3DARXg1t9fABBrYljtt3SAkGgZ5%252Fo%253D%22%2C%22logId%22%3A%222024022601151349BE7F803735A49909C9%22%2C%22sylpageConfig%22%3A%7B%22card%22%3A%7B%22id%22%3A%22%22%7D%7D%2C%22identity%22%3A%7B%22web_id%22%3A%227232235226611975735%22%2C%22user_is_login%22%3Afalse%7D%2C%22abtestInfo%22%3A%7B%22rsp_type%22%3A5%2C%22version_name%22%3A%224938400%22%2C%22parameters%22%3A%7B%22filter%22%3A%7B%22debug_enable_pc_small_video%22%3Afalse%2C%22enable_pc_small_video%22%3Atrue%7D%2C%22home_nav_conf%22%3A%7B%22dcd_out%22%3A1%7D%2C%22optimus%22%3A%7B%22rule_rank_rules%22%3A%22ranking_rule_list%20%7B%5Cn%20%20id%3A%201221233%5Cn%20priority%3A%200%5Cn%20tags%3A%20%5C%2212123%5C%22%5Cn%20%20enabled%3A%20true%5Cn%20%20type%3A%20CARD%5Cn%20%20card_rule%20%7B%5Cn%20size%3A%202%5Cn%20type%3A%20SAME_SLOT%20%5Cn%7D%5Cn%20%7D%5Cn%20ranking_rule_list%20%7B%5Cn%20%20id%3A%2020458%5Cn%20%20priority%3A%203%5Cn%20%20enabled%3A%20true%5Cn%20%20category%3A%2020458%5Cn%20%20type%3A%20WINDOW%5Cn%20%20window_rule%20%7B%5Cn%20%20%20%20type%3A%20SLIDE%5Cn%20%20%20%20size%3A%203%5Cn%20%20%20%20max%3A%201%5Cn%20%20%7D%5Cn%7D%5Cn%20ranking_rule_list%20%7B%5Cn%20%20id%3A%201111024%5Cn%20priority%3A%200%5Cn%20tags%3A%20%5C%2211024%5C%22%5Cn%20%20enabled%3A%20true%5Cn%20%20type%3A%20CARD%5Cn%20%20card_rule%20%7B%5Cn%20size%3A%206%5Cn%20type%3A%20SAME_SLOT%20%5Cn%7D%5Cn%20%7D%22%7D%2C%22page_upgrade%22%3A%7B%22new_profile%22%3Atrue%2C%22video_double_column%22%3Atrue%7D%2C%22recall%22%3A%7B%22debug_filter_reason_list%22%3A%5B%5D%2C%22debug_recall_reason_list%22%3A%5B70%2C71%2C72%2C73%2C80%2C83%5D%2C%22enable_debug_filter_reason%22%3Atrue%2C%22enable_debug_recall_reason%22%3Atrue%2C%22friend_feed%22%3A%7B%22control_nums%22%3A1500%2C%22count%22%3A1000%2C%22enable%22%3Atrue%2C%22enable_cpp_friend_feed%22%3Atrue%2C%22enable_friend_feed_container_filter%22%3Atrue%2C%22enable_group_status_filter%22%3Atrue%2C%22params%22%3A%7B%7D%2C%22top_k%22%3A10%2C%22use_new_friend_recall%22%3Atrue%2C%22valid_group_source%22%3A%5B2%2C5%2C15%2C23%2C16%2C19%2C21%2C132%5D%2C%22weight%22%3A20%7D%7D%2C%22seraph%22%3A%7B%22rule_rank_rules_pc_small%22%3A%22%5Cn%20%20%20%20%20%20ranking_rule_list%20%7B%5Cn%20%20%20%20%20%20%20%20%20id%3A%2022124%20%5Cn%20%20%20%20%20%20%20%20%20priority%3A%200%20%5Cn%20%20%20%20%20%20%20%20%20tags%3A%20%5C%2222124%5C%22%20%5Cn%20%20%20%20%20%20%20%20%20enabled%3A%20true%20%5Cn%20%20%20%20%20%20%20%20%20type%3A%20CARD%20%5Cn%20%20%20%20%20%20%20%20%20card_rule%20%7B%20%5Cn%20%20%20%20%20%20%20%20%20size%3A%206%20%5Cn%20%20%20%20%20%20%20%20%20num_cards%3A%201%5Cn%20%20%20%20%20%20%20%20%20type%3A%20SAME_SLOT%20%5Cn%20%20%20%20%20%20%20%7D%5Cn%20%20%20%20%20%20%7D%5Cn%20%20%20%20%22%2C%22rule_rank_rules_pc_small_window%22%3A%22%5Cn%20%20%20%20%20%20ranking_rule_list%20%7B%5Cn%20%20%20%20id%3A%20222124%5Cn%20%20%20priority%3A%200%5Cn%20%20%20tags%3A%20%5C%2222124%5C%22%5Cn%20%20%20%20enabled%3A%20false%5Cn%20%20%20%20type%3A%20WINDOW%5Cn%20%20%20%20window_rule%20%7B%5Cn%20%20%20type%3A%20SLIDE%20%5Cn%20%20%20size%3A%2012%20%5Cn%20%20%20max%3A%206%20%5Cn%20%20%20%7D%5Cn%20%20%20%7D%22%7D%2C%22small_sort%22%3A%7B%22enable_filter_zhanwai%22%3Atrue%2C%22filter_genre_plog%22%3Afalse%2C%22filter_genre_small%22%3Afalse%2C%22skip_small_app_version_filter%22%3Afalse%2C%22skip_small_genre_filter%22%3Afalse%7D%2C%22sort%22%3A%7B%22allowed_ticai%22%3A%5B%22forum_post%22%2C%22pgc_text%22%2C%22pgc_video%22%2C%22short_video%22%5D%2C%22enable_optimus_gen_pc_mv_card%22%3Atrue%2C%22enable_optimus_gen_pc_sv_card%22%3Atrue%2C%22enable_pc_skip_app_smallvideo_card%22%3Atrue%7D%2C%22ugc_sort%22%3A%7B%22expore_smallvideo%22%3Atrue%7D%2C%22video_channel%22%3A%7B%22use_feed%22%3A1%2C%22rank%22%3A5%7D%7D%2C%22env_flag%22%3A0%2C%22ns_parameters%22%3A%7B%7D%2C%22object_parameters%22%3A%7B%7D%7D%2C%22localCityInfo%22%3A%7B%22name%22%3A%22%E8%A5%84%E9%98%B3%22%2C%22code%22%3A%22420600%22%2C%22channelId%22%3A3202181326%7D%2C%22voteLink%22%3A%5B%7B%22keyword%22%3A%22%22%2C%22type%22%3A%22%22%2C%22url%22%3A%22%22%7D%2C%7B%22keyword%22%3A%22%22%2C%22type%22%3A%22%22%2C%22url%22%3A%22%22%7D%2C%7B%22keyword%22%3A%22%22%2C%22type%22%3A%22%22%2C%22url%22%3A%22%22%7D%2C%7B%22keyword%22%3A%22%22%2C%22type%22%3A%22%22%2C%22url%22%3A%22%22%7D%2C%7B%22keyword%22%3A%22%E4%B8%B9%E9%81%93%E5%BF%85%E8%AF%BB%E7%BB%8F%E5%85%B8%22%2C%22type%22%3A%22%22%2C%22url%22%3A%22https%3A%2F%2Ffanqienovel.com%2Fkeyword%2F3243226%22%7D%2C%7B%22keyword%22%3A%22%E6%97%A5%E6%9C%88%E6%B7%B7%E5%85%83%E7%BB%8F%E4%BB%80%E4%B9%88%E6%84%8F%E6%80%9D%22%2C%22type%22%3A%22%22%2C%22url%22%3A%22https%3A%2F%2Ffanqienovel.com%2Fkeyword%2F3291981%22%7D%2C%7B%22keyword%22%3A%22%E5%8F%AF%E6%B1%97%E7%9A%84%E5%A6%BB%E8%A2%AB%E7%A7%B0%E4%B8%BA%E4%BB%80%E4%B9%88%22%2C%22type%22%3A%22%22%2C%22url%22%3A%22https%3A%2F%2Ffanqienovel.com%2Fkeyword%2F3236024%22%7D%2C%7B%22keyword%22%3A%22%E5%87%8C%E4%BA%91%E5%A4%A9%E5%B8%9D%22%2C%22type%22%3A%22%22%2C%22url%22%3A%22https%3A%2F%2Ffanqienovel.com%2Fkeyword%2F3219855%22%7D%2C%7B%22keyword%22%3A%22%E7%A5%9E%E9%81%93%E7%A7%8D%E7%94%B0%E6%B5%81%E5%B0%8F%E8%AF%B4%22%2C%22type%22%3A%22%22%2C%22url%22%3A%22https%3A%2F%2Ffanqienovel.com%2Fkeyword%2F3222207%22%7D%2C%7B%22keyword%22%3A%22Cube.js%20%E2%80%94%E2%80%94%20%E6%95%B0%22%2C%22type%22%3A%22%22%2C%22url%22%3A%22https%3A%2F%2Fjuejin.cn%2Fpost%2F7075997247602688030%22%7D%5D%2C%22grSensitive%22%3Afalse%2C%22showResearch%22%3Afalse%2C%22blockVisibility%22%3A%7B%22hotBoard%22%3Atrue%2C%22hotVideo%22%3Atrue%2C%22relatedRecommend%22%3Atrue%7D%2C%22isGreyTheme%22%3Afalse%2C%22searchBot%22%3Anull%7D%7D

当前范围内最后一次成功的模式匹配所匹配的任何内容之前的字符串,如果最后一次模式匹配失败,则为 nil。 (助记符:` 通常在带引号的字符串之前)此变量是只读的

#39;

当前范围内最后一次成功的模式匹配所匹配的字符串后面的字符串,如果最后一次模式匹配失败,则为 nil。 (助记符:' 通常跟在带引号的字符串之后)

$+

最后一个成功的搜索模式匹配的最后一个括号,如果最后一个模式匹配失败,则为 nil。如果您不知道一组替代模式中的哪一个匹配,这很有用。 (助记:积极向上)

$1, $2...

包含上一次成功匹配的模式中相应括号集中的子模式,不计算已经退出的嵌套块中匹配的模式,或者如果最后一次模式匹配失败,则为 nil。 (助记符:如 \digit)这些变量都是只读的

$~

当前范围内最后一个匹配的信息。设置此变量会影响匹配变量,如 、$+、$1、$2.. 等。第 n 个子表达式可以通过 $~[nth] 检索。 (助记符:~ 用于匹配)这个变量是局部作用域的

$=

不区分大小写的标志,默认为 nil。 (助记符:= 用于比较)

$/

输入记录分隔符,默认为换行符。像 awk 的 RS 变量一样工作。如果设置为 nil,则将立即读取整个文件。 (助记符:/ 用于在引用诗歌时划定行界)

$\

print 和 IO#write 的输出记录分隔符。默认值为无。 (助记符:它就像 /,但它是你从 Ruby 中“返回”的东西)

$,

打印的输出字段分隔符。此外,它是 Array#join 的默认分隔符。 (助记符:当您的打印语句中有 , 时打印的内容)

$;

String#split 的默认分隔符。

$.

读取的最后一个文件的当前输入行号。

lt;

由命令行参数或标准输入给出的文件的虚拟连接文件(如果没有提供参数文件)。 lt;.file 返回当前文件名。 (助记符:lt; 是一个 shell 输入源)

gt;

print 的默认输出,printf。 $stdout 默认情况下。 (助记符:gt; 用于 shell 输出)

$_

通过gets或readline输入String的最后一行。如果gets/readline 遇到EOF,它被设置为nil。这个变量是局部作用域的。 (助记符:部分与 Perl 相同)

$0

包含包含正在执行的 Ruby 脚本的文件的名称。在某些操作系统上,分配给 $0 会修改 ps(1) 程序看到的参数区域。作为一种指示当前程序状态的方式,这比隐藏您正在运行的程序更有用。 (助记符:与 sh 和 ksh 相同)

$*

为脚本提供的命令行参数。 Ruby 解释器的选项已被删除。 (助记符:与 sh 和 ksh 相同)

$

运行此脚本的 Ruby 的进程号。(助记符:与贝壳相同)

$?

最后执行的子进程的状态。

$:

该数组包含通过 load 或 require 查找 Ruby 脚本和二进制模块的位置列表。 它最初由任何 -I 命令行开关的参数组成,然后是默认的 Ruby 库,probabl "/usr/local/lib/ruby",然后是 ".",表示当前目录 . (助记符:冒号是 PATH 环境变量的分隔符)

#34;

该数组包含由 require 加载的模块名称。 用于防止 require 两次加载模块。助记符:防止文件被双引号(加载)

$DEBUG

-d 开关的状态。

$FILENAME

与lt;.filename 相同

$LOAD_PATH

$: 的别名

$stdin

当前的标准输入

$stdout

当前的标准输出

$stderr

当前标准错误输出

$VERBOSE

详细标志,由 -v 开关设置到 Ruby 解释器

预定义的全局常量

TRUE

典型的真值。在 Ruby 中,所有非 false 值(除了 nil 和 false 之外的所有值)都是 true

FALSE

虚假本身

NIL

零本身

STDIN

标准输入。$stdin 默认值

STDOUT

标准输出。$stdout 默认值

STDERR

标准错误输出。$stderr 默认值

ENV

类哈希对象包含当前环境变量。 在 ENV 中设置值会更改子进程的环境

ARGF

lt; 的别名

ARGV

$* 的别名

DATA

脚本的文件对象,就在 END 之后。 除非未从文件中读取脚本,否则未定义

VERSION

Ruby 版本字符串

RUBY_RELEASE_DATE

发布日期字符串

RUBY_PLATFORM

平台标识符

检查变量的范围

defined? count
"local-variable"
defined? @id
"instance-variable"
defined? @@name
"class variable"
defined? $version
"global-variable"
defined? PI
"constant"

数据类型

类型

示例

Class

文档

Integer

a = 17

a.class > Integera.class.superclass > Numeric

#

Float

a = 87.23

a.class > Floata.class.superclass > Numeric

#

String

a = "Hello universe"

a.class > String

#

Array

a = [12, 34]

a.class > Array

#

Hash

a = {type: "tea", count: 10}

a.class > Hash

#

Boolean

a = falsea = true

a.class > FalseClassa.class > TrueClass

TrueClass FalseClass

Symbol

a = :status

a.class > Symbol

#

Range

a = 1..3

a.class > Range

#

Nil

a = nil

a.class > NilClass

#

进一步阅读

检查数据类型

# 两者都是同义词
a = 37
a.kind_of? Integer
# true
a.is_a? Integer
# true

Symbol

week_days = {sunday: 11, monday: 222}

整数有用的方法

2.even?
# true
3.even?
# false

范围

.. 用于创建包含范围

range = 1..10
range.to_a
# 输出 => [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

... 用于创建专属范围

range = 1...10
range.to_a
# 输出 => [1, 2, 3, 4, 5, 6, 7, 8, 9]

一些有用的方法

cover?

(1..5).cover?(5) => true

end

('a'..'z').end => "z"

first

(1..5).first => 1

first(3)

('A'..'Z').first(2) => ["A", "B"]

eql?

((0..2).eql?(0..5) => false

在 Range 中使用 step

(1..20).step(2) { |number| puts "#{number}"}
# 输出
# 1
# 3
# 5
# 7
# 9
# 11
# 13
# 15
# 17
# 19

条件结构

if 修饰符

num = 2
puts 'two' if num == 2 

如果条件为真,则执行代码

if elsif else 语句

temp = 19
if temp >= 25
  puts "hot"
elsif temp < 25 && temp >= 18
  puts "normal"
else
  puts "cold"
end
# 输出 => normal

除非语句

# 除非与 if 相反,当语句为假时进行评估
name = "rob"
# if name != "bob"
unless name == "bob"
  puts "hello stranger"
else
  puts "hello bob"
end
# 输出 => hello stranger
num = 6
puts 'not two' unless num == 2
# 输出 => not two

case 陈述

# case 返回最后执行的表达式的值
case input
# 检查一个整数,19
when 19
  puts "It's 19"
  # 检查浮点数,33.3
when 33.3
  puts "It's 33.3"
  # 检查一个确切的字符串,“Zaman”
when "Zaman"
  puts "Hi Zaman"
when 10
  puts "It's 10"
  # 检查范围
when 7..11
  puts "It's between 7 and 11"
  # 检查多个值,“咖啡”
when "tea", "coffee"
  puts "Happy days"
  # 检查正则表达式“aA6”
when /^a[A-Z]+[0-6]+$/
  puts "It's a valid match"
  # 通过与 String 类“任何字符串”
  # 进行比较来检查任何字符串
when String
  puts "It's a String"
end

case 简短的语法

case input
  when 19 then puts "It's 19"
end

case 可选的失败

case input
  when 19 then puts "It's 19"
else
  puts "It's not 19"
end

case 获取返回值

marks = 86
result = case marks
        when 0..49 then "Fail"
        when 50..64 then "Pass"
        when 65..74 then "Credit"
        when 75..84 then "Distinction"
        when 85..100 then "High Distinction"
        else "Invalid marks"
        end

puts result
# High Distinction

字符串

字符串插值

name = "World"
puts "Hello #{name}"
puts "The total is #{1+1}"
# "the total is 2"

字符串插值允许您将字符串组合在一起

提取子字符串

string = "abc123"
string[0,3]
# "abc"
string[3,3]
# "123"
string[0..-2]
# "abc12"
#remove or replace the substring
string[0..2] = ""
puts string
# "123"

子字符串是字符串的一小部分,如果你只想要那个特定的部分,它会很有用,比如开头、中间或结尾

将字符串转换为小写或大写

"HELLO World".downcase  # "hello world"
"hello worlD".upcase    # "HELLO WORLD"
"hEllo wOrlD".capitalize # "Hello world"
"hEllo WOrlD".swapcase  # "HeLLO woRLd"

有用的方法

length or size

"HELLO World".length => 11"HELLO World".size => 11

返回字符串的长度

reverse

"hello worlD".reverse => "Dlrow olleh"

返回反转的字符串

include? other_str

"hEllo wOrlD".include? "w" => true

如果字符串或字符存在则返回 true,否则返回 false

gsub(pattern, replacement)

"hEllo wOrlD".gsub(" ", "_") => "hEllo_wOrlD"

gsub 或全局替换用提供的字符串替换一个或多个字符串

gsub(pattern, hash)

"organization".gsub("z", 'z' => 's') => "organisation"

gsub 或全局替换用提供的哈希替换一个或多个字符串

gsub(pattern) { |match| block}

"Price of the phone is 1000 AUD".gsub(/\d+/) { |s| '#39;+s }"Price of the phone is $1000 AUD"

gsub 或全局替换用提供的块替换一个或多个字符串

strip

" hEllo WOrlD ".strip"hEllo WOrlD"

它将删除(修剪)以下任何前导和尾随字符:null(“\x00”)、水平制表符(“\t”)、换行符(\n)、垂直制表符(“\v”)、换页符(f)、回车(\r)、空格(" ")

prepend

a = "world" <br> a.prepend("hello ")"hello world"

在另一个字符串之前添加字符串

insert

a = "hello" <br> a.insert(a.length, " world")"hello world"

在特定位置插入字符串

start_with?

string = "ruby programming"string.start_with? "ruby"true

检查字符串是否以特定前缀开头

end_with?

string = "ruby programming"string.end_with? "ruby"false

检查字符串是否以特定前缀结尾

delete_suffix

string = "sausage is expensive"string.delete_suffix(" is expensive")"sausage"

从字符串中删除后缀

delete_prefix

string = "sausage is expensive"string.delete_prefix("sausage")" is expensive"

从字符串中删除前缀

split

string = "a b c d" <br> string.split["a", "b", "c", "d"]

将字符串转换为字符数组

join

arr = ['a', 'b', 'c'] <br> arr.join => "abc"

将数组转换为字符串

to_i

a = "49" <br> a.to_i => 49

将字符串转换为整数

chop

"abcd?".chop("?") => "abcd"

从字符串中删除最后一个字符

count

str = "aaab" <br> str.count("a")3

计算字符串中的字符

to_f

a = "49"a.to_f49.0

将字符串转换为浮点数

to_sym

a = "key"a.to_sym:key

将字符串转换为符号

match

"abcd?".match(/ab/) => #<MatchData "ab">

将模式转换为正则表达式并在字符串上调用其匹配方法

empty?

"hello".empty? => false

如果字符串的长度为零,则返回 true

squeeze

"Booook".squeeze => "Bok"

返回字符串的副本,其中相同字符的运行被单个字符替换

*

puts "Ruby " * 4 => Ruby Ruby Ruby Ruby

返回多个 self 副本的串联

+

"sammy " + "shark" => "sammyshark"

返回 self 和给定的其他字符串的连接

eql?

s = 'foo' => trues.eql?('foo') => true

如果对象具有相同的长度和内容,则返回 true;作为自己;否则为假

+

"sammy " + "shark" => "sammyshark"

返回 self 和给定的其他字符串的连接

+

"sammy " + "shark" => "sammyshark"

返回 self 和给定的其他字符串的连接

方法

声明一个方法

def method_name(parameter1, parameter2)
    puts "#{parameter1} #{parameter2}"
    parameter1 + parameter2
end

res = method_name(20, 10)
# 输出 => 30
def method_name(parameter1, parameter2)
    puts "#{parameter1} #{parameter2}"
    return parameter1 + parameter2
end
# 输出 => 30

调用方法

res = method_name(parameter1, parameter2)
# 可以调用不带括号的方法
res = method_name parameter1, parameter2

类方法

类方法是类级别的方法。 有多种定义类方法的方法

class Mobile
    def self.ring
        "ring ring ring..."
    end
end

Mobile.ring

class Mobile
    def Mobile.ring
        "ring ring ring..."
    end
end
Mobile.ring

class Mobile
    class << self
    def ring
        "ring ring ring..."
       end
    end
end
Mobile.ring

类方法是类对象的实例方法。 当创建一个新类时,“Class”类型的对象被初始化并分配给一个全局常量(在本例中为 Mobile)

Mobile = Class.new do
    def self.ring
        "ring ring ring..."
    end
end
Mobile.ring

Mobile = Class.new
class << Mobile
    def ring
        "ring ring ring..."
    end
end
Mobile.ring

使用另一个参数作为默认值

def method_name(num1, num2 = num1)
    return num1 + num2
end
res = method_name(10)
# 输出 => 20

为方法参数定义默认值

def method_name(parameter1, parameter2, type = "ADD")
    puts "#{parameter1} #{parameter2}"
    return parameter1 + parameter2 if type == "ADD"
    return parameter1 - parameter2 if type == "SUB"
end
res = method_name(20, 10)
# 输出 => 30

将可变长度参数传递给方法参数

def method_name(type, *values)
    return values.reduce(:+) if type == "ADD"
    return values.reduce(:-) if type == "SUB"
end
numbers = [2, 2, 2, 3, 3, 3]
res = method_name("ADD", *numbers)
# 输出 => 15
res = method_name("SUB", *numbers)
# 输出 => -11
# 或者您可以提供这样的值
res = method_name("ADD", 2, 2, 2, 3, 3, 3)
# 输出 => 15

修改对象

a = ["Drama", "Mystery", "Crime",
"Sci-fi", "Disaster", "Thriller"]
a.sort
puts a
# 我们没有修改对象
# Drama
# Mystery
# Crime
# Sci-fi
# Disaster
# Thriller
a.sort!
puts a
# 修改对象
# Crime
# Disaster
# Drama
# Mystery
# Sci-fi
# Thriller

当您要修改对象时,在方法之后使用 !

布尔方法

在 ruby 中,以问号 (?) 结尾的方法称为布尔方法,它返回 true 或 false

"some text".nil?
# false
nil.nil?
# true

您可以拥有自己的布尔方法

def is_vowel?(char)
    ['a','e','i','o','u'].include? char
end
is_vowel? 'a'
# true
is_vowel? 'b'
# false

Blocks (块)

块示例

# return value
def give_me_data
    data = yield
    puts "data = #{data}"
end
give_me_data { "Big data" }
# 输出 => data = Big data

do 和 end(用于多行)或花括号 { 和 }(用于单行)之间的代码称为块,它们可以在两个管道之间定义多个参数 (|arg1, arg2|)

单行块

salary = [399, 234, 566, 533, 233]
salary.each { |s| puts s }
# puts s = block body
# |s| = block arugments

多行块

salary.each do |s|
    a = 10
    res = a * s
    puts res
end
# 块体
# a = 10
# res = a * s
# puts res
# 块参数
# |s|

块可以作为方法参数传递,也可以与方法调用相关联。 块返回最后评估的语句

隐式传递一个块

def give_me_data
    puts "I am inside give_me_data method"
    yield
    puts "I am back in give_me_data method"
end

give_me_data { puts "Big data" }

# 输出
# I am inside give_me_data method
# Big data
# I am back in give_me_data method

多次调用

def give_me_data
    yield
    yield
    yield
end

give_me_data { puts "Big data" }

# 输出
# Big data
# Big data
# Big data

使用块参数调用

def give_me_data
    yield 10
    yield 100
    yield 30
end

give_me_data { |data| puts "Big data #{data} TB" }

# 输出
# Big data 10 TB
# Big data 100 TB
# Big data 30 TB

使用多个块参数调用

def give_me_data
    yield "Big data", 10, "TB"
    yield "Big data", 100, "GB"
    yield "Big data", 30, "MB"
end

give_me_data { |text, data, unit| puts "#{text} #{data} #{unit}" }

# 输出
# Big data 10 TB
# Big data 100 GB
# Big data 30 MB

块将尝试从当前上下文返回

give_me_data
    puts "我在 give_me_data 方法里面"
end

def test
  puts "我在测试方法里面"
  give_me_data { return 10 } # 代码从这里返回
  puts "I am back in test method"
end

return_value = test

# 输出
# 我在测试方法里面
# 我在 give_me_data 方法里面
# 10

通过使用 & 参数显式传递块

def give_me_data(&block)
    block.call
    block.call
end

give_me_data { puts "Big data" }

# 输出
# Big data
# Big data

检查是否给出了块

def give_me_data
    yield
end

give_me_data

# 输出
# LocalJumpError: no block given (yield)

处理异常并使块可选的方法

def give_me_data
    return "no block" unless block_given?
    yield
end

give_me_data { puts "Big data" }
give_me_data

# 输出
# Big data

Procs

Procs 示例

p = Proc.new { puts "Hello World" }

def give_me_data(proc)
    proc.call
end

give_me_data p

# 输出
# Hello World

proc 就像一个可以存储在变量中的块

任意参数

p = Proc.new { |count| "Hello World " * count }

def give_me_data(proc)
    proc.call 5, 2
end

give_me_data p

# 输出
# "Hello World Hello World Hello World Hello World Hello World "

proc 将尝试从当前上下文返回

p = Proc.new { return 10 }
p.call
# 输出
LocalJumpError: unexpected return

不能从顶级上下文返回

def give_me_data
    puts "我在 give_me_data 方法里面"
    p = Proc.new { return 10 }
    p.call # 代码从这里返回
    puts "I am back in give_me_data method"
end

return_value = give_me_data
puts return_value

# 输出
# 我在 give_me_data 方法里面
# 10

Lambdas

声明一个 lambda

l = lambda { puts "Hello World" }
# 速记
l = -> { puts "Hello World" }
# 调用 lambda
l.call
# 输出 => Hello World

有多种方法可以调用 lambda

l.()
l[]

严格的 arguments

l = -> (count) { "Hello World " * count }
l.call 5
# 输出
# "Hello World Hello World Hello World Hello World Hello World "
l.call 5, 2
# 输出
wrong number of arguments (given 2, expected 1)

块中声明一个 lambda

def give_me_data
    puts "I am inside give_me_data method"
    l = -> { return 10 }
    l.call
    puts "I am back in give_me_data method"
end

return_value = give_me_data
puts return_value

# 输出
# I am inside give_me_data method
# I am back in give_me_data method
# nil # because puts return nil

lambdas 从 lambda 本身返回,就像常规方法一样

l = -> { return 10 }
l.call

# 输出 => 10

数组

初始化一个空数组

array = Array.new   #=> []
# or
array = []

包含不同类型的对象的数组

array = [1, "two", 3.0] 
#=> [1, "two", 3.0]

用初始大小和默认对象填充数组

numbers = Array.new(3)       
#=> [nil, nil, nil]
numbers = Array.new(3, 7)    
#=> [7, 7, 7]
numbers = Array.new(3, true) 
#=> [true, true, true]
numbers = []
numbers.fill(7, 0..2)   #=> [7, 7, 7]

不同哈希值的数组

array_with_hashes = Array.new(2) { {} } #=> [{}, {}]
array_with_hashes[0][:name] = "Bob"
array_with_hashes[0][:id] = 10          #=> [{:name=>"Bob", :id=>10}, {}]

二维数组

temperature_data = [
              ["A908", 38],
              ["A909", 37],
              ["A910", 38],
          ]
temperature_data[0]    #=> ["A908", 38]
temperature_data[0][0] #=> "A908"
temperature_data[0][1] #=> 38

数组索引

str_array = [
  "This", "is", "a", "small", "array"
]
str_array[0]            #=> "This"
str_array[1]            #=> "is"
str_array[4]            #=> "array"

负索引

str_array = [
  "This", "is", "a", "small", "array"
]
# 索引 -1 表示最后一个元素
str_array[-1]        #=> "array"
# 索引 -2 表示倒数第二个元素
str_array[-2]        #=> "small"
str_array[-6]        #=> nil

数组方法 at

str_array = [
  "This", "is", "a", "small", "array"
]

puts str_array.at(0)      #=> "This"

范围获取

arr = [1, 2, 3, 4, 5, 6]
arr[100]                  #=> nil
arr[-3]                   #=> 4
arr[2, 3]                 #=> [3, 4, 5]
arr[1..4]                 #=> [2, 3, 4, 5]
arr[1..-3]                #=> [2, 3, 4]

数组方法 fetch

arr = ['a', 'b', 'c', 'd', 'e', 'f']
arr.fetch(100)
#=> IndexError: 数组边界外的索引 100:-6...6
arr.fetch(100, "oops")    #=> "oops"

超出边界,给默认值

获取数组元素

arr = [1, 2, 3, 4, 5, 6]

arr.first     # 第一个值 => 1
arr.last      # 最后一个值 => 6
# take 返回前 n 个元素
arr.take(3)   #=> [1, 2, 3]
# drop 在 n 个元素被删除之后
arr.drop(3)   #=> [4, 5, 6]

在数组末尾添加值 push

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
numbers.push(11)          
#=> [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
numbers.push(12, 13, 14)  
#=> [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]

数组末尾删除值 pop

num_array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
num_array.pop             #=> 10
num_array
#=> [1, 2, 3, 4, 5, 6, 7, 8, 9]

在数组的开头添加值 unshift

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
numbers.unshift(0)          
#=> [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
numbers.unshift(-3, -2, -1) 
#=> [-3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

检索并同时删除第一个元素 shift

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
numbers.shift #=> 1
numbers
#=> [2, 3, 4, 5, 6, 7, 8, 9, 10]

删除特定索引处的元素 delete_at

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
numbers.delete_at(2) #=> 4
numbers             
#=> [2, 3, 5, 6, 7, 8, 9, 10]

删除数组中任意位置的特定元素

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
numbers.delete(2) #=> 2
numbers           #=> [3, 5, 6, 7, 8, 9, 10]

在给定索引处插入值 insert

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
numbers.insert(0, 0)           
#=> [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
numbers.insert(0, -3, -2, -1)  
#=> [-3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

numbers.insert(-1, 12, 13, 14) 
#=> [-3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 13, 14]
numbers.insert(-4, 11)         
#=> [-3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]

一个块来填充数组的值

numbers = Array.new(10) { |n| n = n * 2 } 
#=> [0, 2, 4, 6, 8, 10, 12, 14, 16, 18]

填充数组变得更容易

numbers = Array(100..110)
#=> [100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110]

# 或者我们可以将范围转换为数组
(100..110).to_a 
#=> [100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110]

从数组中删除 nil 值

arr = ['foo', 0, nil, 'bar', 7, nil]
arr.compact  #=> ['foo', 0, 'bar', 7]
arr      #=> ['foo', 0, nil, 'bar', 7, nil]
arr.compact! #=> ['foo', 0, 'bar', 7]
arr      #=> ['foo', 0, 'bar', 7]

去重 uniq

arr = [2, 5, 6, 556, 6, 6, 8, 9, 0, 123, 556]
arr.uniq #=> [2, 5, 6, 556, 8, 9, 0, 123]

检查数组中是否存在值(include?)

planets = ["Mercury", "Venus", "Earth", "Mars", "Jupiter", "Saturn", "Uranus", "Neptune"]
planets.include? "Mars"
# 输出 => true
planets.include? "Pluto"
# 输出 => false

获取数组大小

planets = ["Mercury", "Venus", "Earth", "Mars", "Jupiter", "Saturn", "Uranus", "Neptune"]
planets.size
# 输出 => 8
planets.length
# 输出 => 8

您可以使用大小或长度,两者都是同义词

清除数组

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
numbers.clear
# 输出 => []

获取数组的第一个元素

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
numbers[0]
# or
numbers.first
# 输出 => 1

获取数组的最后一个元素

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
numbers[-1]
# or
numbers.last
# 输出 => 10

合并两个数组

a = ["tom", "mot", "otm"]
b = [2, 3, 5]
a.zip(b)
# 输出
# [["tom", 2], ["mot", 3], ["otm", 5]]

对数组进行排序

primes = [7, 2, 3, 5]
sorted_primes = primes.sort
puts "#{sorted_primes}"
# 输出 => [2, 3, 5, 7]

or in-place sort

primes = [7, 2, 3, 5]
primes.sort!
puts "#{primes}"
# 输出 => [2, 3, 5, 7]

planets = ["Mercury", "Venus", "Earth", "Mars", "Jupiter", "Saturn", "Uranus", "Neptune"]
planets.sort
# 输出
# ["Earth", "Jupiter", "Mars", "Mercury", "Neptune", "Saturn", "Uranus", "Venus"]
planets.sort_by { |p| p }
# 输出
# ["Earth", "Jupiter", "Mars", "Mercury", "Neptune", "Saturn", "Uranus", "Venus"]
planets.sort_by { |p| p.length }
# 输出
# ["Mars", "Earth", "Venus", "Saturn", "Uranus", "Neptune", "Jupiter", "Mercury"]

从数组中获取最大值

primes = [7, 2, 3, 5]
primes.max_by { |p| p }
# 输出 => 7

使用范围获取数组元素

# numbers[start..end], both index are inclusive
puts numbers[0..3]
# 1
# 2
# 3
# 4
# numbers[start..end], end index is exclusive
puts numbers[0...3]
# 1
# 2
# 3
# or numbers[start..length]
puts numbers[0, 1]
# 1

获取数组的前n个元素

primes = [7, 2, 3, 5]
primes.take(3)
# [7, 2, 3]

访问元素

primes = [7, 2, 3, 5]
primes.fetch(3)
# 5
# Fetch will throw an error if the element does not exist
primes.fetch(10)
# (index 10 outside of array bounds: -4...4)
# or get an default value
primes.fetch(10, -1)
# -1

从数组中删除重复元素

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 10, 1]
numbers.uniq
# [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

删除前 n 个元素

primes = [7, 2, 3, 5]
primes.drop(3)
# [5]

删除第一个元素

primes = [7, 2, 3, 5]
primes.shift
# [2, 3, 5]

删除最后一个元素

primes = [7, 2, 3, 5]
primes.pop
# [7, 2, 3]

删除带有索引的元素

primes = [7, 2, 3, 5]
primes.delete_at(-1)
# [7, 2, 3]

删除所有出现的元素

primes = [7, 2, 3, 5, 5]
primes.delete(5)
# [7, 2, 3]

each

# 当你有单行块时
salary = [399, 234, 566, 533, 233]
salary.each { |s| puts s }
# 输出
# 399
# 234
# 566
# 533
# 233

当你有一个多行块时,你可以用 do 和 end 替换花括号 {}

salary.each do |s|
  a = 10
  res = a * s
  puts res
end
# 输出
# 3990
# 2340
# 5660
# 5330
# 2330

或者您可以使用大括号 {} 和分号作为分隔符而不是换行符来做同样的事情

salary.each { |s| a = 10 ; res = a * s ; puts res }

each_with_index

salary = [399, 234, 566, 533, 233]
salary.each_with_index { |value, index| puts "#{index} #{value}" }
# 输出
# 0 399
# 1 234
# 2 566
# 3 533
# 4 233

each_index

salary = [399, 234, 566, 533, 233]
salary.each_index { |i| puts i}
# 输出
# 0
# 1
# 2
# 3
# 4

map

salary = [399, 234, 566, 533, 233]
salary.map { |s|  s * 10  }
# 返回
# [3990, 2340, 5660, 5330, 2330]
# 另一方面,每个都返回原始值
salary = [399, 234, 566, 533, 233]
salary.each { |s|  s * 10  }
# 返回
# [399, 234, 566, 533, 233]

collect

salary = [399, 234, 566, 533, 233]
salary.collect { |s| s > 400 }
# 输出
# [false, false, true, true, false]

for

for value in [2, 3, 5, 7]
    puts value
end

each_with_object

colors = [
  {color: "red", count: 3}, {color: "red", count: 5}, {color: "black", count: 4}
]
colors.each_with_object(Hash.new(0)) { |color, hash| hash["color_"+color[:color]] = color[:color].upcase; hash["count_"+color[:color]] += color[:count] }
# 输出
{"color_red"=>"RED", "count_red"=>8, "color_black"=>"BLACK", "count_black"=>4}

[1, 2, 3].each_with_object(0) { |number, sum| sum += number}
# 输出
# 0
# 因为0是不可变的,由于初始对象是0,所以方法返回0

while

planets = ["Mercury", "Venus", "Earth", "Mars", "Jupiter", "Saturn", "Uranus", "Neptune"]
index = 0
while index < planets.size
    puts "#{planets[index]}"
    index += 1
end

a = 1
star = '*'
while a <= 10
    puts star
    star += '*'
    a += 1
end

do while

planets = ["Mercury", "Venus", "Earth", "Mars", "Jupiter", "Saturn", "Uranus", "Neptune"]
index = 0
loop do
    puts "#{planets[index]}"
    index += 1
    break if planets[index] == "Mars" or index > planets.size
end

until

planets = ["Mercury", "Venus", "Earth", "Mars", "Jupiter", "Saturn", "Uranus", "Neptune"]
index = planets.size - 1
until index < 0
    puts "#{planets[index]}"
    index -= 1
end

a = 1
star = '*'
until star.length > 10
    puts star
    star += '*'
    a += 1
end

times

10.times { puts "#{rand(1..100)}"}
# 输出
# 将打印 10 个随机数

仅仅因为你可以并不意味着你应该像这样迭代一个数组

data_sample = [2, 3, 5, 7]
data_sample.size.times { |index| puts "#{data_sample[index]}" }
# 输出
# 2
# 3
# 5
# 7

upto

data_sample = [2, 3, 5, 7]
0.upto((data_sample.size - 1) / 2) { |index| puts "#{data_sample[index]}" }
# 输出
# 2
# 3

downto

data_sample = [2, 3, 5, 7]
(data_sample.size - 1).downto(data_sample.size / 2) { |index| puts "#{data_sample[index]}" }
# 输出
# 7
# 5

step

1.step(20, 2) { |number| puts "#{number}"}
# 输出
# 1
# 3
# 5
# 7
# 9
# 11
# 13
# 15
# 17
# 19

19.step(1, -2) { |number| puts "#{number}"}
# 输出
# 19
# 17
# 15
# 13
# 11
# 9
# 7
# 5
# 3
# 1

inject

numbers = [2, 2, 2, 2, 2]
numbers.inject{ |res, n| res + n }
# 输出是所有数字之和的结果
# 如果不给res设置初始值,则数组的第一个元素作为res的初始值
# 10
# 现在将 res 的值设置为 11
numbers = [2, 2, 2, 2, 2]
numbers.inject(11) { |res, n| res + n }
# so 11 + 2, 13 + 2, 15 + 2, 17 + 2 and 19 + 2
# 21
# using symbol
numbers = [2, 2, 2, 2, 2]
numbers.inject(:+)
# 输出
# 10

使用初始值和符号

numbers = [2, 2, 2, 2, 2]
numbers.inject(11, :+)
# 输出
# 21

reduce

numbers = [2, 2, 2, 2, 2]
numbers.reduce(11, :+)
# 输出
# 21

detect

planets = ["Mercury", "Venus", "Earth", "Mars", "Jupiter", "Saturn", "Uranus", "Neptune"]
planets.detect { |name| name.start_with?("E") and name.end_with?("h") }
# output
# Earth
salary = [399, 234, 566, 533, 233]
salary.detect { |s| s > 1000 }
# output
# nil

find

planets = ["Mercury", "Venus", "Earth", "Mars", "Jupiter", "Saturn", "Uranus", "Neptune"]
planets.find { |name| name.start_with?("E") and name.end_with?("h") }
# output
# Earth

select

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
numbers.select { |n| n % 2 == 0 }
# 现在你有一个偶数数组
# [2, 4, 6, 8, 10]
# 如果没有满足您的逻辑的值,则返回一个空数组
[1, 1, 1].select { |n| n % 2 == 0 }
# no even numbers
# []

reject

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
numbers.reject { |n| n % 2 == 0 }
# 如果数字是偶数则拒绝,所以现在我们有一个奇数数组
# [1, 3, 5, 7, 9]

keep_if

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
numbers.keep_if { |n| n % 2 == 0 }
# numbers 数组仅包含偶数
# [2, 4, 6, 8, 10]

delete_if

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
numbers.delete_if { |n| n % 2 == 0 }
# numbers 数组仅包含奇数
# [1, 3, 5, 7, 9]

drop_while

numbers = [1, 2, 3, 1, 2, 3, 0]
numbers.drop_while { |n| n < 3 }
# 是 3 小于 3,返回 false,所以删除 1, 2
# [3, 1, 2, 3, 0]

reverse_each

words = %w[first second third fourth fifth sixth]
str = ""
words.reverse_each {|word| str += "#{word} "}
p str #=> "sixth fifth fourth third second first "

布尔可枚举方法

布尔可枚举方法

all?

当您想检查所有元素是否满足您的条件时

any?

当您想检查至少一项是否满足您的条件时

one?

当您想检查一个元素是否满足您的要求时

none?

当您想检查是否没有任何项目满足您的条件时,相反?

empty?

当你想检查对象是否为空时

include?

当你想检查元素是否存在于对象中时

all?

[2, 4, 6, 8, 10].all? { |num| num % 2 == 0 }
# true
[1, 4, 6, 8, 10].all? { |num| num % 2 == 0 }
# false

any?

[1, 3, 5, 7, 10].any? { |num| num % 2 == 0 }
# true
[1, 3, 5, 7, 19].any? { |num| num % 2 == 0 }
# false

one?

[1, 3, 2, 5, 7].one? { |num| num % 2 == 0 }
# true
[1, 3, 2, 5, 4].one? { |num| num % 2 == 0 }
# false

none?

[1, 3, 5, 7, 9].none? { |num| num % 2 == 0 }
# true
[2, 3, 5, 7, 9].none? { |num| num % 2 == 0 }
# false

empty?

[].empty?
# true
[1, 3, 5, 7, 9].empty?
# false

组合方法

组合方法

  • & 返回一个新数组,其中包含在数组和数组 other_array 中找到的每个元素;省略重复;使用 eql? 比较项目
  • intersection 返回一个新数组,其中包含在 self 和所有给定数组 other_arrays 中找到的每个元素;省略重复;使用 eql? 比较项目
  • + 返回一个数组,该数组包含 self 的所有元素,后跟给定数组的所有元素
  • - 返回一个数组,其中包含在给定数组中找不到的所有 self 元素
  • union 返回一个数组,其中包含 self 的所有元素和给定数组的所有元素,已删除重复项
  • difference 返回一个数组,其中包含在任何给定数组中找不到的所有 self 元素
  • product 返回或产生来自 self 和给定数组的所有元素组合

&

[0, 1, 2, 3] & [1, 2] # => [1, 2]
[0, 1, 0, 1] & [0, 1] # => [0, 1]

intersection

[0, 1, 2, 3].intersection([0, 1, 2], [0, 1, 3])
# => [0, 1]
[0, 0, 1, 1, 2, 3].intersection([0, 1, 2], [0, 1, 3])
# => [0, 1]

+

a = [0, 1] + [2, 3]
a # => [0, 1, 2, 3]

-

[0, 1, 1, 2, 1, 1, 3, 1, 1] - [1] 
# => [0, 2, 3]
[0, 1, 2, 3] - [3, 0] 
# => [1, 2]
[0, 1, 2] - [4] 
# => [0, 1, 2]

union

[0, 1, 2, 3].union([4, 5], [6, 7]) 
# => [0, 1, 2, 3, 4, 5, 6, 7]
[0, 1, 1].union([2, 1], [3, 1]) 
# => [0, 1, 2, 3]
[0, 1, 2, 3].union([3, 2], [1, 0]) 
# => [0, 1, 2, 3]

difference

[0, 1, 1, 2, 1, 1, 3, 1, 1].difference([1])
# => [0, 2, 3]
[0, 1, 2, 3].difference([3, 0], [1, 3])
# => [2]
[0, 1, 2].difference([4])
# => [0, 1, 2]

product

a = [0, 1, 2]
a1 = [3, 4]
p = a.product(a1)
p.size # => 6 # a.size * a1.size
p # => [[0, 3], [0, 4], [1, 3], [1, 4], [2, 3], [2, 4]]

循环

while 循环

# variable count
count = 4
# using while loop
# here conditional is count i.e. 4
while count >= 1
  # statements to be executed
  puts "Ruby Cheatsheet"
  count = count - 1
  # while loop ends here
end

输出

Ruby Cheatsheet
Ruby Cheatsheet
Ruby Cheatsheet
Ruby Cheatsheet

for 循环

# loop using range as expression
text = "Ruby Cheatsheet"
# using for loop with the range
for count in 1..5 do
  puts text
end

输出

Ruby Cheatsheet
Ruby Cheatsheet
Ruby Cheatsheet
Ruby Cheatsheet
Ruby Cheatsheet

do..while 循环

# starting of do..while loop
loop do
  puts "Ruby Cheatsheet"
  val = '7'
  # using boolean expressions
  if val == '7'
    break
  end
  # ending of ruby do..while loop
end

输出

Ruby Cheatsheet

until 循环

var = 7
# here do is optional
until var == 11 do
  # code to be executed
  puts var * 10
  var = var + 1
  # here loop ends
end

输出

70
80
90
100

跳出循环

salary = [399, 234, 566, 533, 233]
salary.each do |s|
  break if s == 566
  puts s
end
# 输出
# 399
# 234

通过使用 break 关键字

在循环内跳过

salary = [399, 234, 566, 533, 233]
salary.each do |s|
  next if s == 533
  puts s
end
# 输出
# 399
# 234
# 566
# 233

通过使用 next 关键字

重复当前迭代

data = [456, 3000]
retry_count = 0
status = "network failure"
sum = 0
data.each do |d|
    if retry_count == 3
        status = "connection established"
        retry_count = 0
        redo
    elsif status == "network failure" and retry_count < 5
        puts "network failure #{retry_count}"
        retry_count += 1
        redo
    elsif status == "connection established"
        puts d
        sum += d
    end
end
# output of sum
# 3456

重新开始循环

numbers = [2, 2, 44, 44]
sum = 0
begin
    numbers.each do |s|
        if rand(1..10) == 5
            puts "hi 5, let's do it again!"
            sum = 0
            raise "hi 5"
        end
        puts s
        sum += s
    end
rescue
    retry
end

Classes

Classes 示例

class Person
    # when you create a new object, it looks for a method named initialize and executes it, like a constructor in java
    # def initialize(name, number)
    #    @name = name
    #    @number = number
    # end
    # instance variable
    # @name
    # class variable
    # @@count
    # attr_accessor acts as a getter and setter for the following instance attributes
    attr_accessor :name, :number
    # class variable must be initialized
    @@count = 0
    def self.count
        @@count
    end
    def self.count=(count)
        @@count = count
    end
    def initialize
        @@count += 1
    end
end
# create an instance of the Person class
p1 = Person.new
# set attributes of the Person class
p1.name = "Yukihiro Matsumoto"
p1.number = 9999999999
# get attributes of the Person class
puts "#{p1.name}"
puts "#{p1.number}"
puts "#{Person.count}"
# Yukihiro Matsumoto
# 9999999999
# 1
p2 = Person.new
p2.name = "Yukihiro Matsumoto"
p2.number = 9999999999
# get attributes of the Person class
puts "#{p2.name}"
puts "#{p2.number}"
puts "#{Person.count}"
# Yukihiro Matsumoto
# 9999999999
# 2
# set class variable
Person.count = 3
puts "#{Person.count}"
# 3

继承一个类

class Person
    attr_accessor :name, :number
end
# 使用 < 符号从父类继承方法和属性
class Student < Person
    attr_accessor :id
end
s = Student.new
s.name = "James Bond"
s.number = 700
s.id = 678
puts "#{p.name}"
James Bond
puts "#{p.number}"
700
puts "#{p.id}"
678

检查实例类型

class Vehicle; end
class Car < Vehicle; end
class Audi < Car; end
car = Car.new
car.instance_of? Vehicle
false
car.instance_of? Car
true
car.instance_of? Audi
false
a = 7
a.instance_of? Integer
true
a.instance_of? Numeric
false

如果对象是给定类的实例,而不是子类或超类,则返回 true

打印一个类的所有方法名

puts (String.methods).sort
# 排除从 Object 类继承的方法
puts (String.methods - Object.public_instance_methods).sort

检查一个类是否有特定的方法

String.respond_to?(:prepend)
true
String.respond_to?(:append)
false

官网 ruby-lang.org