From 473acf0a319a4d5b83285cb21f2bf633b68c0820 Mon Sep 17 00:00:00 2001 From: matz Date: Mon, 23 Jun 2008 03:36:25 +0000 Subject: * lib/mathn.rb (Rational::power2): removed incomplete method. see [ruby-dev:35195]. [ruby-core:17293] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17545 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- lib/mathn.rb | 44 -------------------------------------------- 1 file changed, 44 deletions(-) (limited to 'lib/mathn.rb') diff --git a/lib/mathn.rb b/lib/mathn.rb index 9a4cf33240..ce1acc927f 100644 --- a/lib/mathn.rb +++ b/lib/mathn.rb @@ -183,50 +183,6 @@ class Rational x ** y end end - - def power2(other) - if other.kind_of?(Rational) - if self < 0 - return Complex.__send__(:new!, self, 0) ** other - elsif other == 0 - return Rational(1,1) - elsif self == 0 - return Rational(0,1) - elsif self == 1 - return Rational(1,1) - end - - dem = nil - x = self.denominator.to_f.to_i - neard = self.denominator.to_f ** (1.0/other.denominator.to_f) - loop do - if (neard**other.denominator == self.denominator) - dem = neard - break - end - end - nearn = self.numerator.to_f ** (1.0/other.denominator.to_f) - Rational(num,den) - - elsif other.kind_of?(Integer) - if other > 0 - num = numerator ** other - den = denominator ** other - elsif other < 0 - num = denominator ** -other - den = numerator ** -other - elsif other == 0 - num = 1 - den = 1 - end - Rational(num, den) - elsif other.kind_of?(Float) - Float(self) ** other - else - x , y = other.coerce(self) - x ** y - end - end end module Math -- cgit v1.2.3