From 5cf08c7bad071cb6cdd2a8d51e6c1d985b294613 Mon Sep 17 00:00:00 2001 From: matz Date: Thu, 12 Mar 1998 07:23:23 +0000 Subject: *** empty log message *** git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/v1_1r@119 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- lib/rational.rb | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'lib') diff --git a/lib/rational.rb b/lib/rational.rb index a8c8322abc..1282f56410 100644 --- a/lib/rational.rb +++ b/lib/rational.rb @@ -1,8 +1,8 @@ # # rational.rb - # $Release Version: 0.5 $ -# $Revision: 1.1.1.1 $ -# $Date: 1998/01/16 04:05:49 $ +# $Revision: 1.3 $ +# $Date: 1998/03/11 14:09:03 $ # by Keiju ISHITSUKA(SHL Japan Inc.) # # -- @@ -44,7 +44,11 @@ def Rational(a, b = 1) end class Rational < Numeric + @RCS_ID='-$Id: rational.rb,v 1.3 1998/03/11 14:09:03 keiju Exp keiju $-' + def Rational.reduce(num, den = 1) + raise ZeroDivisionError, "denometor is 0" if den == 0 + if den < 0 num = -num den = -den @@ -128,6 +132,7 @@ class Rational < Numeric den = @denominator * a.numerator Rational(num, den) elsif a.kind_of?(Integer) + raise ZeroDivisionError, "devided by 0" if a == 0 self / Rational.new!(a, 1) elsif a.kind_of?(Float) Float(self) / a -- cgit v1.2.3