[#20083] non-block IO with TCPSocket — dn <daisuke@...>

初投稿の中村と申します。よろしくお願いします。

19 messages 2000/01/06
[#20084] Re: non-block IO with TCPSocket — Tomoyuki Kosimizu <greentea@...2.so-net.ne.jp> 2000/01/06

越水です。

[#20091] Re: non-block IO with TCPSocket — とみたまさひろ <tommy@...> 2000/01/06

とみたです。

[#20133] おききしたーいでーす — akimaru <akimaru@...>

17 messages 2000/01/09
[#20138] Re: おききしたーいでーす — akimaru <akimaru@...> 2000/01/09

[#20237] Ruby/Tk multi interpreter — nagai@...

永井@知能.九工大です.

21 messages 2000/01/17
[#20242] Re: Ruby/Tk multi interpreter — nagai@... 2000/01/17

永井@知能.九工大です.

[#20248] Re: Ruby/Tk multi interpreter — Hideto ISHIBASHI <s34204@...> 2000/01/17

石橋秀仁です。

[#20254] Re: Ruby/Tk multi interpreter — nagai@... 2000/01/18

永井@知能.九工大です.

[#20271] Re: Ruby/Tk multi interpreter — Hideto ISHIBASHI <s34204@...> 2000/01/18

石橋秀仁です。

[#20249] FTP.open err for Windows95 — "Y Kataoka" <kataoka@...>

初めまして、片岡@KLUGと申します。

18 messages 2000/01/17
[#20252] Re: FTP.open err for Windows95 — "NAKAMURA, Hiroshi" <nakahiro@...> 2000/01/18

なひです.

[#20342] How to build ruby(current) with cygwin — KORIYAMA Naohiro <kory@...2.so-net.ne.jp>

はじめまして、こおりやまです。

19 messages 2000/01/23
[#20362] Re: How to build ruby(current) with cygwin — WATANABE Hirofumi <Hirofumi.Watanabe@...> 2000/01/24

わたなべです.

[#20422] Re: How to build ruby(current) with cygwin — Masaki Suketa<CQN02273@...> 2000/01/29

Win32OLE の作者の助田です.

[#20394] ruby-1.4.3 port to HPUX 11.00 — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

15 messages 2000/01/26

[ruby-list:20223] Re: class Polynomial

From: Masaki Suketa<CQN02273@...>
Date: 2000-01-15 07:45:03 UTC
List: ruby-list #20223
助田です.

In message "[ruby-list:20175] class Polynomial"
    on 00/01/12, "K.Kodama" <kdm@kobe-kosen.ac.jp> writes:

> Ruby の練習に
> 1変数多項式の class Polynomial を実装してみました.

sample-poly.rb を試してみましたが,エラーになります.
ruby 1.4.3 です.(どうすれば良いのかわかりません.m(_ _)m)

---test to_a and to_poly for Array---
[].to_poly: 0
[2,3,4].to_poly: 4x^2+3x+2
./polynomial.rb:333:in `to_s': undefined method `<' for nil (NameError)
	from ./polynomial.rb:330:in `each'
	from ./polynomial.rb:330:in `to_s'
	from sample-poly.rb:21:in `testConversion'
	from sample-poly.rb:166

> 添削っていうか, 御意見いただけないでしょうか?

Polynomial が Array を継承するよりも Array オブジェクト
を Polynomial のインスタンス変数にする方が私は良いと思います.

理由:
  Array を継承するのはあくまで,実装の都合であって(ですよね?)
  Polynomial は必ずしも Array すべての振る舞いを継承する必要
  はない.

あと,Array に to_poly メソッドを追加するよりは,

 p1 = Polynomial.new([1,2,3,4])
 # または p1 = Polynomial.new(1,2,3,4)

みたいな書き方ができた方が直観的で個人的に好きです.

 p1 = Polynomial.new(3,2)

とかは

 p1 = Polynomial.new([2,2,2])

と書けば良いでしょうし.(で良いんですよね?)
こんな感じでしょうか.(initialize と degree と書いてみました.)

class Polynomial
  def initialize(arg)
    case arg
    when Array
      @array = arg
    when Numeric
      @array = [arg]
    else
      raise TypeError
    end
  end

  def degree
    deg = @array.length - 1
    if deg < 0
      @array[0] = [0]
      return 0
    end
    while deg > 0 && @array[deg] == 0
      deg -= 1
    end
    deg
  end
end

  勘違いがあったらすいません.
  助田 雅紀 <CQN02273@nifty.ne.jp>

In This Thread