首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > Ruby Rails >

ruby 运作报错 uninitialized constant Sequence (NameError)

2012-08-25 
ruby 运行报错 uninitialized constant Sequence (NameError)。看着《The Ruby Programing》这本书的例子自己

ruby 运行报错 uninitialized constant Sequence (NameError)。
看着《The Ruby Programing》这本书的例子自己写了2个类。
Sequence.rb

Java code
##this class represents a sequence of numbers characterized by the three#parameters from, to, and by. The numbers x in the sequence obey the #following two constraints:# #      from  <= x <= to#      x = from + n*by, where n is aninteger#class Sequence  #This is an enumerable class; it defines an each iterator below.  #initialize newly created instances of the class  def initialize(from, to, by)    #Just save our paramerters into instance variables for later use    @from, @to, @by = from, to, by #Note parallel assignmendt and @ prefix  end    #this is the iterator required by the Enumerable module  def each    x = @from   #Start at the starting point    while x <= @to  #while we haven't reached the end      yield x       #pass x to rhe block associated with the iterator      x += @by      #Increment x    end  end    #Define the length method (following arrarys) to return hte numgber of  #values in the sequence  def length    return 0 if @from > @to    Integet((@to - @from)/@by) + 1  end    #Define another name for the same method  #It is common for methods to have multiple names in Ruby  alias size length      #size is now a synonym for length  #Override the array-access operator give random accesss to give random access to the sequence  def[](index)    return nil if index < 0 #Return nul for negative indexes    v = @from + index*@by   #compute the value    if v <= @to             #if it is part of the sequence      v                     #return it    else                    #otherwise      nil    end  end    #Override arichmetic operators to return new Squence objects  def *(factor)    Squence.new(@from*factor, @to*facotor, @by*factor)  end    def +(offset)    Squence.new(@from + offset, @to + offset, @by)  endend


Hello.rb
Java code
s = Sequence.new(1, 10, 2)    #from 1 to 10 by 2'ss.each {|x| print x}print s[s.size - 1]t = (s+1)*2



我使用的编译器是Apatana
两个类都是在一个目录下面的。
我是初学者使用ruby,请问是哪里出错了呢?谢谢!

[解决办法]
require "sequence" 

是请求这个文件, 

Sequence.rb #前面字母小写

热点排行