mirror of
https://github.com/ruby/ruby.git
synced 2025-09-16 00:54:01 +02:00
* ext/rational/rational.c: Added to provide a fast implementation
of Fixnum#gcd (and maybe some others in the future) in C. The base code was submitted by Kurt Stephens. [Feature #2561] * ext/rational/lib/rational.rb: Moved from lib/rational.rb. Make overall code optimization; submitted by Kurt Stephens. [Feature #2561] * test/rational/test_rational.rb, test/rational/test_rational2.rb: Add tests for Rational, ported from trunk. * test/rational/test_fixnum_gcd.rb: Add a test for Integer#gcd. Case values are only provided for i386 and amd64 at the moment; submitted by Kurt Stephens. [Feature #2561] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@26581 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
4abbe7814a
commit
d2e30d50cf
14 changed files with 3563 additions and 89 deletions
17
ChangeLog
17
ChangeLog
|
@ -1,3 +1,20 @@
|
|||
Fri Feb 5 23:09:01 2010 Akinori MUSHA <knu@iDaemons.org>
|
||||
|
||||
* ext/rational/rational.c: Added to provide a fast implementation
|
||||
of Fixnum#gcd (and maybe some others in the future) in C. The
|
||||
base code was submitted by Kurt Stephens. [Feature #2561]
|
||||
|
||||
* ext/rational/lib/rational.rb: Moved from lib/rational.rb. Make
|
||||
overall code optimization; submitted by Kurt Stephens.
|
||||
[Feature #2561]
|
||||
|
||||
* test/rational/test_rational.rb, test/rational/test_rational2.rb:
|
||||
Add tests for Rational, ported from trunk.
|
||||
|
||||
* test/rational/test_fixnum_gcd.rb: Add a test for Integer#gcd.
|
||||
Case values are only provided for i386 and amd64 at the moment;
|
||||
submitted by Kurt Stephens. [Feature #2561]
|
||||
|
||||
Wed Feb 3 21:14:59 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||
|
||||
* lib/net/http.rb (Net::HTTP#request): close @socket only after
|
||||
|
|
5
NEWS
5
NEWS
|
@ -165,6 +165,11 @@ with all sufficient information, see the ChangeLog file.
|
|||
* :ssl_verify_mode => OpenSSL::SSL::VERIFY_*
|
||||
* :ssl_ca_cert => filename
|
||||
|
||||
* rational
|
||||
|
||||
* Performace improved by making overall code optimization and
|
||||
introducing Fixnum#gcd implemented in C.
|
||||
|
||||
* sdbm
|
||||
|
||||
SDBM#key
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
#pty
|
||||
#openssl
|
||||
#racc/cparse
|
||||
#rational
|
||||
#readline
|
||||
#sdbm
|
||||
#socket
|
||||
|
|
|
@ -20,6 +20,7 @@ nkf
|
|||
pty
|
||||
#openssl
|
||||
racc/parse
|
||||
rational
|
||||
readline
|
||||
sdbm
|
||||
socket
|
||||
|
|
|
@ -20,6 +20,7 @@ nkf
|
|||
#pty
|
||||
#openssl
|
||||
racc/cparse
|
||||
rational
|
||||
readline
|
||||
sdbm
|
||||
#socket
|
||||
|
|
|
@ -20,6 +20,7 @@ nkf
|
|||
#pty
|
||||
#openssl
|
||||
racc/cparse
|
||||
rational
|
||||
#readline
|
||||
#sdbm
|
||||
socket
|
||||
|
|
|
@ -20,6 +20,7 @@ nkf
|
|||
#pty
|
||||
#openssl
|
||||
racc/cparse
|
||||
rational
|
||||
#readline
|
||||
sdbm
|
||||
socket
|
||||
|
|
|
@ -20,6 +20,7 @@ nkf
|
|||
#pty
|
||||
#openssl
|
||||
racc/cparse
|
||||
rational
|
||||
#readline
|
||||
#sdbm
|
||||
#socket
|
||||
|
|
3
ext/rational/extconf.rb
Normal file
3
ext/rational/extconf.rb
Normal file
|
@ -0,0 +1,3 @@
|
|||
require 'mkmf'
|
||||
|
||||
create_makefile('rational')
|
|
@ -7,6 +7,8 @@
|
|||
#
|
||||
# Documentation by Kevin Jackson and Gavin Sinclair.
|
||||
#
|
||||
# Performance improvements by Kurt Stephens.
|
||||
#
|
||||
# When you <tt>require 'rational'</tt>, all interactions between numbers
|
||||
# potentially return a rational result. For example:
|
||||
#
|
||||
|
@ -17,6 +19,8 @@
|
|||
# See Rational for full documentation.
|
||||
#
|
||||
|
||||
# Pull in some optimization
|
||||
require "rational.so"
|
||||
|
||||
#
|
||||
# Creates a Rational number (i.e. a fraction). +a+ and +b+ should be Integers:
|
||||
|
@ -104,13 +108,8 @@ class Rational < Numeric
|
|||
num = -num
|
||||
den = -den
|
||||
end
|
||||
if num.kind_of?(Integer) and den.kind_of?(Integer)
|
||||
@numerator = num
|
||||
@denominator = den
|
||||
else
|
||||
@numerator = num.to_i
|
||||
@denominator = den.to_i
|
||||
end
|
||||
@numerator = num.to_i
|
||||
@denominator = den.to_i
|
||||
end
|
||||
|
||||
#
|
||||
|
@ -122,14 +121,13 @@ class Rational < Numeric
|
|||
# r + 0.5 # -> 1.25
|
||||
#
|
||||
def + (a)
|
||||
if a.kind_of?(Rational)
|
||||
num = @numerator * a.denominator
|
||||
num_a = a.numerator * @denominator
|
||||
Rational(num + num_a, @denominator * a.denominator)
|
||||
elsif a.kind_of?(Integer)
|
||||
self + Rational.new!(a, 1)
|
||||
elsif a.kind_of?(Float)
|
||||
Float(self) + a
|
||||
case a
|
||||
when Rational # => Rational | Integer
|
||||
Rational(@numerator * a.denominator + a.numerator * @denominator, @denominator * a.denominator)
|
||||
when Integer # => Rational
|
||||
Rational.reduce(@numerator + a * @denominator, @denominator)
|
||||
when Float
|
||||
self.to_f + a
|
||||
else
|
||||
x, y = a.coerce(self) rescue raise TypeError, "#{a.class} can't be coerced into #{self.class}"
|
||||
x + y
|
||||
|
@ -146,20 +144,26 @@ class Rational < Numeric
|
|||
# r - 0.5 # -> 0.25
|
||||
#
|
||||
def - (a)
|
||||
if a.kind_of?(Rational)
|
||||
num = @numerator * a.denominator
|
||||
num_a = a.numerator * @denominator
|
||||
Rational(num - num_a, @denominator*a.denominator)
|
||||
elsif a.kind_of?(Integer)
|
||||
self - Rational.new!(a, 1)
|
||||
elsif a.kind_of?(Float)
|
||||
Float(self) - a
|
||||
case a
|
||||
when Rational # => Rational | Integer
|
||||
Rational(@numerator * a.denominator - a.numerator * @denominator, @denominator * a.denominator)
|
||||
when Integer # => Rational
|
||||
Rational.reduce(@numerator - a * @denominator, @denominator)
|
||||
when Float
|
||||
self.to_f - a
|
||||
else
|
||||
x, y = a.coerce(self) rescue raise TypeError, "#{a.class} can't be coerced into #{self.class}"
|
||||
x - y
|
||||
end
|
||||
end
|
||||
|
||||
#
|
||||
# Unary Minus--Returns the receiver's value, negated.
|
||||
#
|
||||
def -@
|
||||
Rational.new!(-@numerator, @denominator)
|
||||
end
|
||||
|
||||
#
|
||||
# Returns the product of this value and +a+.
|
||||
#
|
||||
|
@ -171,14 +175,13 @@ class Rational < Numeric
|
|||
# r * Rational(1,2) # -> Rational(3,8)
|
||||
#
|
||||
def * (a)
|
||||
if a.kind_of?(Rational)
|
||||
num = @numerator * a.numerator
|
||||
den = @denominator * a.denominator
|
||||
Rational(num, den)
|
||||
elsif a.kind_of?(Integer)
|
||||
self * Rational.new!(a, 1)
|
||||
elsif a.kind_of?(Float)
|
||||
Float(self) * a
|
||||
case a
|
||||
when Rational
|
||||
Rational(@numerator * a.numerator, @denominator * a.denominator)
|
||||
when Integer
|
||||
Rational(@numerator * a, @denominator)
|
||||
when Float
|
||||
self.to_f * a
|
||||
else
|
||||
x, y = a.coerce(self) rescue raise TypeError, "#{a.class} can't be coerced into #{self.class}"
|
||||
x * y
|
||||
|
@ -193,15 +196,14 @@ class Rational < Numeric
|
|||
# r / Rational(1,2) # -> Rational(3,2)
|
||||
#
|
||||
def / (a)
|
||||
if a.kind_of?(Rational)
|
||||
num = @numerator * a.denominator
|
||||
den = @denominator * a.numerator
|
||||
Rational(num, den)
|
||||
elsif a.kind_of?(Integer)
|
||||
case a
|
||||
when Rational
|
||||
Rational(@numerator * a.denominator, @denominator * a.numerator)
|
||||
when Integer
|
||||
raise ZeroDivisionError, "division by zero" if a == 0
|
||||
self / Rational.new!(a, 1)
|
||||
elsif a.kind_of?(Float)
|
||||
Float(self) / a
|
||||
Rational(@numerator, @denominator * a)
|
||||
when Float
|
||||
self.to_f / a
|
||||
else
|
||||
x, y = a.coerce(self) rescue raise TypeError, "#{a.class} can't be coerced into #{self.class}"
|
||||
x / y
|
||||
|
@ -218,22 +220,17 @@ class Rational < Numeric
|
|||
# r ** Rational(1,2) # -> 0.866025403784439
|
||||
#
|
||||
def ** (other)
|
||||
if other.kind_of?(Rational)
|
||||
Float(self) ** other
|
||||
elsif other.kind_of?(Integer)
|
||||
case other
|
||||
when Rational, Float
|
||||
self.to_f ** other
|
||||
when Integer
|
||||
if other > 0
|
||||
num = @numerator ** other
|
||||
den = @denominator ** other
|
||||
Rational.new!(@numerator ** other, @denominator ** other)
|
||||
elsif other < 0
|
||||
num = @denominator ** -other
|
||||
den = @numerator ** -other
|
||||
elsif other == 0
|
||||
num = 1
|
||||
den = 1
|
||||
Rational.new!(@denominator ** -other, @numerator ** -other)
|
||||
else
|
||||
Rational.new!(1, 1) # why not Fixnum 1?
|
||||
end
|
||||
Rational.new!(num, den)
|
||||
elsif other.kind_of?(Float)
|
||||
Float(self) ** other
|
||||
else
|
||||
x, y = other.coerce(self) rescue raise TypeError, "#{a.class} can't be coerced into #{self.class}"
|
||||
x ** y
|
||||
|
@ -256,7 +253,7 @@ class Rational < Numeric
|
|||
#
|
||||
def % (other)
|
||||
value = (self / other).floor
|
||||
return self - other * value
|
||||
self - other * value
|
||||
end
|
||||
|
||||
#
|
||||
|
@ -268,7 +265,7 @@ class Rational < Numeric
|
|||
#
|
||||
def divmod(other)
|
||||
value = (self / other).floor
|
||||
return value, self - other * value
|
||||
[value, self - other * value]
|
||||
end
|
||||
|
||||
#
|
||||
|
@ -282,6 +279,17 @@ class Rational < Numeric
|
|||
end
|
||||
end
|
||||
|
||||
# Returns true or false.
|
||||
def zero?
|
||||
@numerator.zero?
|
||||
end
|
||||
|
||||
# See Numeric#nonzero?
|
||||
def nonzero?
|
||||
@numerator.nonzero? ? self : nil
|
||||
end
|
||||
|
||||
|
||||
#
|
||||
# Returns +true+ iff this value is numerically equal to +other+.
|
||||
#
|
||||
|
@ -292,12 +300,13 @@ class Rational < Numeric
|
|||
# Don't use Rational.new!
|
||||
#
|
||||
def == (other)
|
||||
if other.kind_of?(Rational)
|
||||
@numerator == other.numerator and @denominator == other.denominator
|
||||
elsif other.kind_of?(Integer)
|
||||
self == Rational.new!(other, 1)
|
||||
elsif other.kind_of?(Float)
|
||||
Float(self) == other
|
||||
case other
|
||||
when Rational
|
||||
@numerator == other.numerator && @denominator == other.denominator
|
||||
when Integer
|
||||
@numerator == other && @denominator == 1
|
||||
when Float
|
||||
self.to_f == other
|
||||
else
|
||||
other == self
|
||||
end
|
||||
|
@ -307,31 +316,24 @@ class Rational < Numeric
|
|||
# Standard comparison operator.
|
||||
#
|
||||
def <=> (other)
|
||||
if other.kind_of?(Rational)
|
||||
num = @numerator * other.denominator
|
||||
num_a = other.numerator * @denominator
|
||||
v = num - num_a
|
||||
if v > 0
|
||||
return 1
|
||||
elsif v < 0
|
||||
return -1
|
||||
else
|
||||
return 0
|
||||
end
|
||||
elsif other.kind_of?(Integer)
|
||||
return self <=> Rational.new!(other, 1)
|
||||
elsif other.kind_of?(Float)
|
||||
return Float(self) <=> other
|
||||
case other
|
||||
when Rational
|
||||
@numerator * other.denominator <=> other.numerator * @denominator
|
||||
when Integer
|
||||
@numerator <=> other * @denominator
|
||||
when Float
|
||||
self.to_f <=> other
|
||||
else
|
||||
x, y = other.coerce(self) rescue return nil
|
||||
return x <=> y
|
||||
x <=> y
|
||||
end
|
||||
end
|
||||
|
||||
def coerce(other)
|
||||
if other.kind_of?(Float)
|
||||
case other
|
||||
when Float
|
||||
return other, self.to_f
|
||||
elsif other.kind_of?(Integer)
|
||||
when Integer
|
||||
return Rational.new!(other, 1), self
|
||||
else
|
||||
super
|
||||
|
@ -361,23 +363,19 @@ class Rational < Numeric
|
|||
|
||||
def truncate()
|
||||
if @numerator < 0
|
||||
return -((-@numerator).div(@denominator))
|
||||
-((-@numerator).div(@denominator))
|
||||
else
|
||||
@numerator.div(@denominator)
|
||||
end
|
||||
@numerator.div(@denominator)
|
||||
end
|
||||
|
||||
alias_method :to_i, :truncate
|
||||
|
||||
def round()
|
||||
if @numerator < 0
|
||||
num = -@numerator
|
||||
num = num * 2 + @denominator
|
||||
den = @denominator * 2
|
||||
-(num.div(den))
|
||||
-((@numerator * -2 + @denominator).div(@denominator * 2))
|
||||
else
|
||||
num = @numerator * 2 + @denominator
|
||||
den = @denominator * 2
|
||||
num.div(den)
|
||||
((@numerator * 2 + @denominator).div(@denominator * 2))
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -399,7 +397,7 @@ class Rational < Numeric
|
|||
if @denominator == 1
|
||||
@numerator.to_s
|
||||
else
|
||||
@numerator.to_s+"/"+@denominator.to_s
|
||||
"#{@numerator}/#{@denominator}"
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -416,7 +414,7 @@ class Rational < Numeric
|
|||
# Rational(5,8).inspect # -> "Rational(5, 8)"
|
||||
#
|
||||
def inspect
|
||||
sprintf("Rational(%s, %s)", @numerator.inspect, @denominator.inspect)
|
||||
"Rational(#{@numerator.inspect}, #{@denominator.inspect})"
|
||||
end
|
||||
|
||||
#
|
42
ext/rational/rational.c
Normal file
42
ext/rational/rational.c
Normal file
|
@ -0,0 +1,42 @@
|
|||
#include "ruby.h"
|
||||
|
||||
/*
|
||||
* call-seq:
|
||||
* fixnum.gcd(fixnum) -> fixnum
|
||||
*
|
||||
* Fixnum-specific optimized version of Integer#gcd. Delegates to
|
||||
* Integer#gcd as necessary.
|
||||
*/
|
||||
static VALUE
|
||||
fix_gcd(self, other)
|
||||
VALUE self, other;
|
||||
{
|
||||
long a, b, min, max;
|
||||
|
||||
/*
|
||||
* Note: Cannot handle values <= FIXNUM_MIN here due to overflow during negation.
|
||||
*/
|
||||
if (!FIXNUM_P(other) ||
|
||||
(a = FIX2LONG(self)) <= FIXNUM_MIN ||
|
||||
(b = FIX2LONG(other)) <= FIXNUM_MIN ) {
|
||||
/* Delegate to Integer#gcd */
|
||||
return rb_call_super(1, &other);
|
||||
}
|
||||
|
||||
min = a < 0 ? -a : a;
|
||||
max = b < 0 ? -b : b;
|
||||
|
||||
while (min > 0) {
|
||||
long tmp = min;
|
||||
min = max % min;
|
||||
max = tmp;
|
||||
}
|
||||
|
||||
return LONG2FIX(max);
|
||||
}
|
||||
|
||||
void
|
||||
Init_rational()
|
||||
{
|
||||
rb_define_method(rb_cFixnum, "gcd", fix_gcd, 1);
|
||||
}
|
811
test/rational/test_fixnum_gcd.rb
Normal file
811
test/rational/test_fixnum_gcd.rb
Normal file
|
@ -0,0 +1,811 @@
|
|||
require 'rational'
|
||||
require 'pp'
|
||||
|
||||
require 'test/unit'
|
||||
require 'rbconfig'
|
||||
|
||||
class GcdTest < Test::Unit::TestCase
|
||||
|
||||
@@biggest_positive_fixnum = 1
|
||||
until (x = ((@@biggest_positive_fixnum << 1) + 1)).class == Bignum
|
||||
@@biggest_positive_fixnum = x
|
||||
end
|
||||
@@biggest_positive_fixnum = (@@biggest_positive_fixnum - 10)
|
||||
until (x = (@@biggest_positive_fixnum + 1)).class == Bignum
|
||||
@@biggest_positive_fixnum = x
|
||||
end
|
||||
@@smallest_positive_bignum = x
|
||||
|
||||
@@biggest_negative_fixnum = -1
|
||||
until (x = (@@biggest_negative_fixnum << 1)).class == Bignum
|
||||
@@biggest_negative_fixnum = x
|
||||
end
|
||||
until (x = (@@biggest_negative_fixnum - 1)).class == Bignum
|
||||
@@biggest_negative_fixnum = x
|
||||
end
|
||||
@@smallest_negative_bignum = x
|
||||
|
||||
def xc x
|
||||
[ x.class, x ].inspect
|
||||
end
|
||||
|
||||
case RbConfig::CONFIG['build_cpu']
|
||||
when 'amd64', 'x86_64'
|
||||
# values generated by ruby 1.8.7 (2009-06-12 patchlevel 174) [x86_64-linux]
|
||||
@@expected =
|
||||
[["[Fixnum, 1] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Fixnum, 2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Fixnum, 4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Fixnum, 5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Fixnum, 25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Fixnum, -2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Fixnum, -4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Fixnum, -5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Fixnum, -25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Fixnum, 4611686018427387903] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Fixnum, -4611686018427387903] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Fixnum, -4611686018427387904] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Bignum, 4611686018427387904] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Bignum, 4611686018427387904] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Fixnum, -4611686018427387904] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Bignum, -4611686018427387905] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Bignum, 4611686018427387905] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 2] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 2] gcd [Fixnum, 2] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, 2] gcd [Fixnum, 4] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, 2] gcd [Fixnum, 5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 2] gcd [Fixnum, 25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 2] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 2] gcd [Fixnum, -2] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, 2] gcd [Fixnum, -4] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, 2] gcd [Fixnum, -5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 2] gcd [Fixnum, -25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 2] gcd [Fixnum, 4611686018427387903] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 2] gcd [Fixnum, -4611686018427387903] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 2] gcd [Fixnum, -4611686018427387904] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, 2] gcd [Bignum, 4611686018427387904] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, 2] gcd [Bignum, 4611686018427387904] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, 2] gcd [Fixnum, -4611686018427387904] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, 2] gcd [Bignum, -4611686018427387905] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 2] gcd [Bignum, 4611686018427387905] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4] gcd [Fixnum, 2] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, 4] gcd [Fixnum, 4] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, 4] gcd [Fixnum, 5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4] gcd [Fixnum, 25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4] gcd [Fixnum, -2] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, 4] gcd [Fixnum, -4] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, 4] gcd [Fixnum, -5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4] gcd [Fixnum, -25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4] gcd [Fixnum, 4611686018427387903] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4] gcd [Fixnum, -4611686018427387903] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4] gcd [Fixnum, -4611686018427387904] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, 4] gcd [Bignum, 4611686018427387904] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, 4] gcd [Bignum, 4611686018427387904] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, 4] gcd [Fixnum, -4611686018427387904] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, 4] gcd [Bignum, -4611686018427387905] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4] gcd [Bignum, 4611686018427387905] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 5] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 5] gcd [Fixnum, 2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 5] gcd [Fixnum, 4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 5] gcd [Fixnum, 5] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, 5] gcd [Fixnum, 25] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, 5] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 5] gcd [Fixnum, -2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 5] gcd [Fixnum, -4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 5] gcd [Fixnum, -5] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, 5] gcd [Fixnum, -25] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, 5] gcd [Fixnum, 4611686018427387903] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 5] gcd [Fixnum, -4611686018427387903] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 5] gcd [Fixnum, -4611686018427387904] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 5] gcd [Bignum, 4611686018427387904] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 5] gcd [Bignum, 4611686018427387904] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 5] gcd [Fixnum, -4611686018427387904] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 5] gcd [Bignum, -4611686018427387905] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, 5] gcd [Bignum, 4611686018427387905] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, 25] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 25] gcd [Fixnum, 2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 25] gcd [Fixnum, 4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 25] gcd [Fixnum, 5] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, 25] gcd [Fixnum, 25] => ", "[Fixnum, 25]"],
|
||||
["[Fixnum, 25] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 25] gcd [Fixnum, -2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 25] gcd [Fixnum, -4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 25] gcd [Fixnum, -5] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, 25] gcd [Fixnum, -25] => ", "[Fixnum, 25]"],
|
||||
["[Fixnum, 25] gcd [Fixnum, 4611686018427387903] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 25] gcd [Fixnum, -4611686018427387903] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 25] gcd [Fixnum, -4611686018427387904] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 25] gcd [Bignum, 4611686018427387904] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 25] gcd [Bignum, 4611686018427387904] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 25] gcd [Fixnum, -4611686018427387904] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 25] gcd [Bignum, -4611686018427387905] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, 25] gcd [Bignum, 4611686018427387905] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, -1] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Fixnum, 2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Fixnum, 4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Fixnum, 5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Fixnum, 25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Fixnum, -2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Fixnum, -4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Fixnum, -5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Fixnum, -25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Fixnum, 4611686018427387903] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Fixnum, -4611686018427387903] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Fixnum, -4611686018427387904] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Bignum, 4611686018427387904] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Bignum, 4611686018427387904] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Fixnum, -4611686018427387904] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Bignum, -4611686018427387905] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Bignum, 4611686018427387905] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -2] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -2] gcd [Fixnum, 2] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, -2] gcd [Fixnum, 4] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, -2] gcd [Fixnum, 5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -2] gcd [Fixnum, 25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -2] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -2] gcd [Fixnum, -2] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, -2] gcd [Fixnum, -4] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, -2] gcd [Fixnum, -5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -2] gcd [Fixnum, -25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -2] gcd [Fixnum, 4611686018427387903] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -2] gcd [Fixnum, -4611686018427387903] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -2] gcd [Fixnum, -4611686018427387904] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, -2] gcd [Bignum, 4611686018427387904] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, -2] gcd [Bignum, 4611686018427387904] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, -2] gcd [Fixnum, -4611686018427387904] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, -2] gcd [Bignum, -4611686018427387905] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -2] gcd [Bignum, 4611686018427387905] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4] gcd [Fixnum, 2] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, -4] gcd [Fixnum, 4] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, -4] gcd [Fixnum, 5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4] gcd [Fixnum, 25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4] gcd [Fixnum, -2] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, -4] gcd [Fixnum, -4] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, -4] gcd [Fixnum, -5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4] gcd [Fixnum, -25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4] gcd [Fixnum, 4611686018427387903] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4] gcd [Fixnum, -4611686018427387903] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4] gcd [Fixnum, -4611686018427387904] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, -4] gcd [Bignum, 4611686018427387904] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, -4] gcd [Bignum, 4611686018427387904] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, -4] gcd [Fixnum, -4611686018427387904] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, -4] gcd [Bignum, -4611686018427387905] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4] gcd [Bignum, 4611686018427387905] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -5] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -5] gcd [Fixnum, 2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -5] gcd [Fixnum, 4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -5] gcd [Fixnum, 5] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, -5] gcd [Fixnum, 25] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, -5] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -5] gcd [Fixnum, -2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -5] gcd [Fixnum, -4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -5] gcd [Fixnum, -5] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, -5] gcd [Fixnum, -25] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, -5] gcd [Fixnum, 4611686018427387903] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -5] gcd [Fixnum, -4611686018427387903] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -5] gcd [Fixnum, -4611686018427387904] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -5] gcd [Bignum, 4611686018427387904] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -5] gcd [Bignum, 4611686018427387904] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -5] gcd [Fixnum, -4611686018427387904] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -5] gcd [Bignum, -4611686018427387905] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, -5] gcd [Bignum, 4611686018427387905] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, -25] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -25] gcd [Fixnum, 2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -25] gcd [Fixnum, 4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -25] gcd [Fixnum, 5] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, -25] gcd [Fixnum, 25] => ", "[Fixnum, 25]"],
|
||||
["[Fixnum, -25] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -25] gcd [Fixnum, -2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -25] gcd [Fixnum, -4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -25] gcd [Fixnum, -5] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, -25] gcd [Fixnum, -25] => ", "[Fixnum, 25]"],
|
||||
["[Fixnum, -25] gcd [Fixnum, 4611686018427387903] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -25] gcd [Fixnum, -4611686018427387903] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -25] gcd [Fixnum, -4611686018427387904] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -25] gcd [Bignum, 4611686018427387904] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -25] gcd [Bignum, 4611686018427387904] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -25] gcd [Fixnum, -4611686018427387904] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -25] gcd [Bignum, -4611686018427387905] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, -25] gcd [Bignum, 4611686018427387905] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, 4611686018427387903] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4611686018427387903] gcd [Fixnum, 2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4611686018427387903] gcd [Fixnum, 4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4611686018427387903] gcd [Fixnum, 5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4611686018427387903] gcd [Fixnum, 25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4611686018427387903] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4611686018427387903] gcd [Fixnum, -2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4611686018427387903] gcd [Fixnum, -4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4611686018427387903] gcd [Fixnum, -5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4611686018427387903] gcd [Fixnum, -25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4611686018427387903] gcd [Fixnum, 4611686018427387903] => ",
|
||||
"[Fixnum, 4611686018427387903]"],
|
||||
["[Fixnum, 4611686018427387903] gcd [Fixnum, -4611686018427387903] => ",
|
||||
"[Fixnum, 4611686018427387903]"],
|
||||
["[Fixnum, 4611686018427387903] gcd [Fixnum, -4611686018427387904] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Fixnum, 4611686018427387903] gcd [Bignum, 4611686018427387904] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Fixnum, 4611686018427387903] gcd [Bignum, 4611686018427387904] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Fixnum, 4611686018427387903] gcd [Fixnum, -4611686018427387904] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Fixnum, 4611686018427387903] gcd [Bignum, -4611686018427387905] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Fixnum, 4611686018427387903] gcd [Bignum, 4611686018427387905] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387903] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387903] gcd [Fixnum, 2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387903] gcd [Fixnum, 4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387903] gcd [Fixnum, 5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387903] gcd [Fixnum, 25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387903] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387903] gcd [Fixnum, -2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387903] gcd [Fixnum, -4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387903] gcd [Fixnum, -5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387903] gcd [Fixnum, -25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387903] gcd [Fixnum, 4611686018427387903] => ",
|
||||
"[Fixnum, 4611686018427387903]"],
|
||||
["[Fixnum, -4611686018427387903] gcd [Fixnum, -4611686018427387903] => ",
|
||||
"[Fixnum, 4611686018427387903]"],
|
||||
["[Fixnum, -4611686018427387903] gcd [Fixnum, -4611686018427387904] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387903] gcd [Bignum, 4611686018427387904] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387903] gcd [Bignum, 4611686018427387904] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387903] gcd [Fixnum, -4611686018427387904] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387903] gcd [Bignum, -4611686018427387905] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387903] gcd [Bignum, 4611686018427387905] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Fixnum, 2] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Fixnum, 4] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Fixnum, 5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Fixnum, 25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Fixnum, -2] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Fixnum, -4] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Fixnum, -5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Fixnum, -25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Fixnum, 4611686018427387903] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Fixnum, -4611686018427387903] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Fixnum, -4611686018427387904] => ",
|
||||
"[Bignum, 4611686018427387904]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Bignum, 4611686018427387904] => ",
|
||||
"[Bignum, 4611686018427387904]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Bignum, 4611686018427387904] => ",
|
||||
"[Bignum, 4611686018427387904]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Fixnum, -4611686018427387904] => ",
|
||||
"[Bignum, 4611686018427387904]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Bignum, -4611686018427387905] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Bignum, 4611686018427387905] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Fixnum, 2] => ", "[Fixnum, 2]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Fixnum, 4] => ", "[Fixnum, 4]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Fixnum, 5] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Fixnum, 25] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Fixnum, -2] => ", "[Fixnum, 2]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Fixnum, -4] => ", "[Fixnum, 4]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Fixnum, -5] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Fixnum, -25] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Fixnum, 4611686018427387903] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Fixnum, -4611686018427387903] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Fixnum, -4611686018427387904] => ",
|
||||
"[Bignum, 4611686018427387904]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Bignum, 4611686018427387904] => ",
|
||||
"[Bignum, 4611686018427387904]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Bignum, 4611686018427387904] => ",
|
||||
"[Bignum, 4611686018427387904]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Fixnum, -4611686018427387904] => ",
|
||||
"[Bignum, 4611686018427387904]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Bignum, -4611686018427387905] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Bignum, 4611686018427387905] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Fixnum, 2] => ", "[Fixnum, 2]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Fixnum, 4] => ", "[Fixnum, 4]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Fixnum, 5] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Fixnum, 25] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Fixnum, -2] => ", "[Fixnum, 2]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Fixnum, -4] => ", "[Fixnum, 4]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Fixnum, -5] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Fixnum, -25] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Fixnum, 4611686018427387903] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Fixnum, -4611686018427387903] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Fixnum, -4611686018427387904] => ",
|
||||
"[Bignum, 4611686018427387904]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Bignum, 4611686018427387904] => ",
|
||||
"[Bignum, 4611686018427387904]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Bignum, 4611686018427387904] => ",
|
||||
"[Bignum, 4611686018427387904]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Fixnum, -4611686018427387904] => ",
|
||||
"[Bignum, 4611686018427387904]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Bignum, -4611686018427387905] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387904] gcd [Bignum, 4611686018427387905] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Fixnum, 2] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Fixnum, 4] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Fixnum, 5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Fixnum, 25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Fixnum, -2] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Fixnum, -4] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Fixnum, -5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Fixnum, -25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Fixnum, 4611686018427387903] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Fixnum, -4611686018427387903] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Fixnum, -4611686018427387904] => ",
|
||||
"[Bignum, 4611686018427387904]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Bignum, 4611686018427387904] => ",
|
||||
"[Bignum, 4611686018427387904]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Bignum, 4611686018427387904] => ",
|
||||
"[Bignum, 4611686018427387904]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Fixnum, -4611686018427387904] => ",
|
||||
"[Bignum, 4611686018427387904]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Bignum, -4611686018427387905] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Fixnum, -4611686018427387904] gcd [Bignum, 4611686018427387905] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Bignum, -4611686018427387905] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, -4611686018427387905] gcd [Fixnum, 2] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, -4611686018427387905] gcd [Fixnum, 4] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, -4611686018427387905] gcd [Fixnum, 5] => ", "[Fixnum, 5]"],
|
||||
["[Bignum, -4611686018427387905] gcd [Fixnum, 25] => ", "[Fixnum, 5]"],
|
||||
["[Bignum, -4611686018427387905] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, -4611686018427387905] gcd [Fixnum, -2] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, -4611686018427387905] gcd [Fixnum, -4] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, -4611686018427387905] gcd [Fixnum, -5] => ", "[Fixnum, 5]"],
|
||||
["[Bignum, -4611686018427387905] gcd [Fixnum, -25] => ", "[Fixnum, 5]"],
|
||||
["[Bignum, -4611686018427387905] gcd [Fixnum, 4611686018427387903] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Bignum, -4611686018427387905] gcd [Fixnum, -4611686018427387903] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Bignum, -4611686018427387905] gcd [Fixnum, -4611686018427387904] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Bignum, -4611686018427387905] gcd [Bignum, 4611686018427387904] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Bignum, -4611686018427387905] gcd [Bignum, 4611686018427387904] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Bignum, -4611686018427387905] gcd [Fixnum, -4611686018427387904] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Bignum, -4611686018427387905] gcd [Bignum, -4611686018427387905] => ",
|
||||
"[Bignum, 4611686018427387905]"],
|
||||
["[Bignum, -4611686018427387905] gcd [Bignum, 4611686018427387905] => ",
|
||||
"[Bignum, 4611686018427387905]"],
|
||||
["[Bignum, 4611686018427387905] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387905] gcd [Fixnum, 2] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387905] gcd [Fixnum, 4] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387905] gcd [Fixnum, 5] => ", "[Fixnum, 5]"],
|
||||
["[Bignum, 4611686018427387905] gcd [Fixnum, 25] => ", "[Fixnum, 5]"],
|
||||
["[Bignum, 4611686018427387905] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387905] gcd [Fixnum, -2] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387905] gcd [Fixnum, -4] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387905] gcd [Fixnum, -5] => ", "[Fixnum, 5]"],
|
||||
["[Bignum, 4611686018427387905] gcd [Fixnum, -25] => ", "[Fixnum, 5]"],
|
||||
["[Bignum, 4611686018427387905] gcd [Fixnum, 4611686018427387903] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387905] gcd [Fixnum, -4611686018427387903] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387905] gcd [Fixnum, -4611686018427387904] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387905] gcd [Bignum, 4611686018427387904] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387905] gcd [Bignum, 4611686018427387904] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387905] gcd [Fixnum, -4611686018427387904] => ",
|
||||
"[Fixnum, 1]"],
|
||||
["[Bignum, 4611686018427387905] gcd [Bignum, -4611686018427387905] => ",
|
||||
"[Bignum, 4611686018427387905]"],
|
||||
["[Bignum, 4611686018427387905] gcd [Bignum, 4611686018427387905] => ",
|
||||
"[Bignum, 4611686018427387905]"]]
|
||||
when 'i686', 'i386'
|
||||
# values generated by ruby 1.8.7 (2009-06-12 patchlevel 174) [i486-linux]
|
||||
@@expected =
|
||||
[["[Fixnum, 1] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Fixnum, 2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Fixnum, 4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Fixnum, 5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Fixnum, 25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Fixnum, -2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Fixnum, -4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Fixnum, -5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Fixnum, -25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Fixnum, 1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Fixnum, -1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Fixnum, -1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Bignum, 1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Bignum, 1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Fixnum, -1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Bignum, -1073741825] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1] gcd [Bignum, 1073741825] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 2] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 2] gcd [Fixnum, 2] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, 2] gcd [Fixnum, 4] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, 2] gcd [Fixnum, 5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 2] gcd [Fixnum, 25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 2] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 2] gcd [Fixnum, -2] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, 2] gcd [Fixnum, -4] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, 2] gcd [Fixnum, -5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 2] gcd [Fixnum, -25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 2] gcd [Fixnum, 1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 2] gcd [Fixnum, -1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 2] gcd [Fixnum, -1073741824] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, 2] gcd [Bignum, 1073741824] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, 2] gcd [Bignum, 1073741824] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, 2] gcd [Fixnum, -1073741824] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, 2] gcd [Bignum, -1073741825] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 2] gcd [Bignum, 1073741825] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4] gcd [Fixnum, 2] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, 4] gcd [Fixnum, 4] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, 4] gcd [Fixnum, 5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4] gcd [Fixnum, 25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4] gcd [Fixnum, -2] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, 4] gcd [Fixnum, -4] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, 4] gcd [Fixnum, -5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4] gcd [Fixnum, -25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4] gcd [Fixnum, 1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4] gcd [Fixnum, -1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4] gcd [Fixnum, -1073741824] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, 4] gcd [Bignum, 1073741824] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, 4] gcd [Bignum, 1073741824] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, 4] gcd [Fixnum, -1073741824] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, 4] gcd [Bignum, -1073741825] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 4] gcd [Bignum, 1073741825] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 5] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 5] gcd [Fixnum, 2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 5] gcd [Fixnum, 4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 5] gcd [Fixnum, 5] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, 5] gcd [Fixnum, 25] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, 5] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 5] gcd [Fixnum, -2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 5] gcd [Fixnum, -4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 5] gcd [Fixnum, -5] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, 5] gcd [Fixnum, -25] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, 5] gcd [Fixnum, 1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 5] gcd [Fixnum, -1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 5] gcd [Fixnum, -1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 5] gcd [Bignum, 1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 5] gcd [Bignum, 1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 5] gcd [Fixnum, -1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 5] gcd [Bignum, -1073741825] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, 5] gcd [Bignum, 1073741825] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, 25] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 25] gcd [Fixnum, 2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 25] gcd [Fixnum, 4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 25] gcd [Fixnum, 5] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, 25] gcd [Fixnum, 25] => ", "[Fixnum, 25]"],
|
||||
["[Fixnum, 25] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 25] gcd [Fixnum, -2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 25] gcd [Fixnum, -4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 25] gcd [Fixnum, -5] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, 25] gcd [Fixnum, -25] => ", "[Fixnum, 25]"],
|
||||
["[Fixnum, 25] gcd [Fixnum, 1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 25] gcd [Fixnum, -1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 25] gcd [Fixnum, -1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 25] gcd [Bignum, 1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 25] gcd [Bignum, 1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 25] gcd [Fixnum, -1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 25] gcd [Bignum, -1073741825] => ", "[Fixnum, 25]"],
|
||||
["[Fixnum, 25] gcd [Bignum, 1073741825] => ", "[Fixnum, 25]"],
|
||||
["[Fixnum, -1] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Fixnum, 2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Fixnum, 4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Fixnum, 5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Fixnum, 25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Fixnum, -2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Fixnum, -4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Fixnum, -5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Fixnum, -25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Fixnum, 1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Fixnum, -1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Fixnum, -1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Bignum, 1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Bignum, 1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Fixnum, -1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Bignum, -1073741825] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1] gcd [Bignum, 1073741825] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -2] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -2] gcd [Fixnum, 2] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, -2] gcd [Fixnum, 4] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, -2] gcd [Fixnum, 5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -2] gcd [Fixnum, 25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -2] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -2] gcd [Fixnum, -2] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, -2] gcd [Fixnum, -4] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, -2] gcd [Fixnum, -5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -2] gcd [Fixnum, -25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -2] gcd [Fixnum, 1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -2] gcd [Fixnum, -1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -2] gcd [Fixnum, -1073741824] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, -2] gcd [Bignum, 1073741824] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, -2] gcd [Bignum, 1073741824] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, -2] gcd [Fixnum, -1073741824] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, -2] gcd [Bignum, -1073741825] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -2] gcd [Bignum, 1073741825] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4] gcd [Fixnum, 2] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, -4] gcd [Fixnum, 4] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, -4] gcd [Fixnum, 5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4] gcd [Fixnum, 25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4] gcd [Fixnum, -2] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, -4] gcd [Fixnum, -4] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, -4] gcd [Fixnum, -5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4] gcd [Fixnum, -25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4] gcd [Fixnum, 1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4] gcd [Fixnum, -1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4] gcd [Fixnum, -1073741824] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, -4] gcd [Bignum, 1073741824] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, -4] gcd [Bignum, 1073741824] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, -4] gcd [Fixnum, -1073741824] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, -4] gcd [Bignum, -1073741825] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -4] gcd [Bignum, 1073741825] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -5] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -5] gcd [Fixnum, 2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -5] gcd [Fixnum, 4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -5] gcd [Fixnum, 5] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, -5] gcd [Fixnum, 25] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, -5] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -5] gcd [Fixnum, -2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -5] gcd [Fixnum, -4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -5] gcd [Fixnum, -5] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, -5] gcd [Fixnum, -25] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, -5] gcd [Fixnum, 1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -5] gcd [Fixnum, -1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -5] gcd [Fixnum, -1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -5] gcd [Bignum, 1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -5] gcd [Bignum, 1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -5] gcd [Fixnum, -1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -5] gcd [Bignum, -1073741825] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, -5] gcd [Bignum, 1073741825] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, -25] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -25] gcd [Fixnum, 2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -25] gcd [Fixnum, 4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -25] gcd [Fixnum, 5] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, -25] gcd [Fixnum, 25] => ", "[Fixnum, 25]"],
|
||||
["[Fixnum, -25] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -25] gcd [Fixnum, -2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -25] gcd [Fixnum, -4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -25] gcd [Fixnum, -5] => ", "[Fixnum, 5]"],
|
||||
["[Fixnum, -25] gcd [Fixnum, -25] => ", "[Fixnum, 25]"],
|
||||
["[Fixnum, -25] gcd [Fixnum, 1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -25] gcd [Fixnum, -1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -25] gcd [Fixnum, -1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -25] gcd [Bignum, 1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -25] gcd [Bignum, 1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -25] gcd [Fixnum, -1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -25] gcd [Bignum, -1073741825] => ", "[Fixnum, 25]"],
|
||||
["[Fixnum, -25] gcd [Bignum, 1073741825] => ", "[Fixnum, 25]"],
|
||||
["[Fixnum, 1073741823] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1073741823] gcd [Fixnum, 2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1073741823] gcd [Fixnum, 4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1073741823] gcd [Fixnum, 5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1073741823] gcd [Fixnum, 25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1073741823] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1073741823] gcd [Fixnum, -2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1073741823] gcd [Fixnum, -4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1073741823] gcd [Fixnum, -5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1073741823] gcd [Fixnum, -25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1073741823] gcd [Fixnum, 1073741823] => ", "[Fixnum, 1073741823]"],
|
||||
["[Fixnum, 1073741823] gcd [Fixnum, -1073741823] => ",
|
||||
"[Fixnum, 1073741823]"],
|
||||
["[Fixnum, 1073741823] gcd [Fixnum, -1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1073741823] gcd [Bignum, 1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1073741823] gcd [Bignum, 1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1073741823] gcd [Fixnum, -1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1073741823] gcd [Bignum, -1073741825] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, 1073741823] gcd [Bignum, 1073741825] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741823] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741823] gcd [Fixnum, 2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741823] gcd [Fixnum, 4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741823] gcd [Fixnum, 5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741823] gcd [Fixnum, 25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741823] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741823] gcd [Fixnum, -2] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741823] gcd [Fixnum, -4] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741823] gcd [Fixnum, -5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741823] gcd [Fixnum, -25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741823] gcd [Fixnum, 1073741823] => ",
|
||||
"[Fixnum, 1073741823]"],
|
||||
["[Fixnum, -1073741823] gcd [Fixnum, -1073741823] => ",
|
||||
"[Fixnum, 1073741823]"],
|
||||
["[Fixnum, -1073741823] gcd [Fixnum, -1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741823] gcd [Bignum, 1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741823] gcd [Bignum, 1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741823] gcd [Fixnum, -1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741823] gcd [Bignum, -1073741825] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741823] gcd [Bignum, 1073741825] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741824] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741824] gcd [Fixnum, 2] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, -1073741824] gcd [Fixnum, 4] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, -1073741824] gcd [Fixnum, 5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741824] gcd [Fixnum, 25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741824] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741824] gcd [Fixnum, -2] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, -1073741824] gcd [Fixnum, -4] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, -1073741824] gcd [Fixnum, -5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741824] gcd [Fixnum, -25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741824] gcd [Fixnum, 1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741824] gcd [Fixnum, -1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741824] gcd [Fixnum, -1073741824] => ",
|
||||
"[Bignum, 1073741824]"],
|
||||
["[Fixnum, -1073741824] gcd [Bignum, 1073741824] => ",
|
||||
"[Bignum, 1073741824]"],
|
||||
["[Fixnum, -1073741824] gcd [Bignum, 1073741824] => ",
|
||||
"[Bignum, 1073741824]"],
|
||||
["[Fixnum, -1073741824] gcd [Fixnum, -1073741824] => ",
|
||||
"[Bignum, 1073741824]"],
|
||||
["[Fixnum, -1073741824] gcd [Bignum, -1073741825] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741824] gcd [Bignum, 1073741825] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741824] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741824] gcd [Fixnum, 2] => ", "[Fixnum, 2]"],
|
||||
["[Bignum, 1073741824] gcd [Fixnum, 4] => ", "[Fixnum, 4]"],
|
||||
["[Bignum, 1073741824] gcd [Fixnum, 5] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741824] gcd [Fixnum, 25] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741824] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741824] gcd [Fixnum, -2] => ", "[Fixnum, 2]"],
|
||||
["[Bignum, 1073741824] gcd [Fixnum, -4] => ", "[Fixnum, 4]"],
|
||||
["[Bignum, 1073741824] gcd [Fixnum, -5] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741824] gcd [Fixnum, -25] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741824] gcd [Fixnum, 1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741824] gcd [Fixnum, -1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741824] gcd [Fixnum, -1073741824] => ",
|
||||
"[Bignum, 1073741824]"],
|
||||
["[Bignum, 1073741824] gcd [Bignum, 1073741824] => ", "[Bignum, 1073741824]"],
|
||||
["[Bignum, 1073741824] gcd [Bignum, 1073741824] => ", "[Bignum, 1073741824]"],
|
||||
["[Bignum, 1073741824] gcd [Fixnum, -1073741824] => ",
|
||||
"[Bignum, 1073741824]"],
|
||||
["[Bignum, 1073741824] gcd [Bignum, -1073741825] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741824] gcd [Bignum, 1073741825] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741824] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741824] gcd [Fixnum, 2] => ", "[Fixnum, 2]"],
|
||||
["[Bignum, 1073741824] gcd [Fixnum, 4] => ", "[Fixnum, 4]"],
|
||||
["[Bignum, 1073741824] gcd [Fixnum, 5] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741824] gcd [Fixnum, 25] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741824] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741824] gcd [Fixnum, -2] => ", "[Fixnum, 2]"],
|
||||
["[Bignum, 1073741824] gcd [Fixnum, -4] => ", "[Fixnum, 4]"],
|
||||
["[Bignum, 1073741824] gcd [Fixnum, -5] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741824] gcd [Fixnum, -25] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741824] gcd [Fixnum, 1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741824] gcd [Fixnum, -1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741824] gcd [Fixnum, -1073741824] => ",
|
||||
"[Bignum, 1073741824]"],
|
||||
["[Bignum, 1073741824] gcd [Bignum, 1073741824] => ", "[Bignum, 1073741824]"],
|
||||
["[Bignum, 1073741824] gcd [Bignum, 1073741824] => ", "[Bignum, 1073741824]"],
|
||||
["[Bignum, 1073741824] gcd [Fixnum, -1073741824] => ",
|
||||
"[Bignum, 1073741824]"],
|
||||
["[Bignum, 1073741824] gcd [Bignum, -1073741825] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741824] gcd [Bignum, 1073741825] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741824] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741824] gcd [Fixnum, 2] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, -1073741824] gcd [Fixnum, 4] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, -1073741824] gcd [Fixnum, 5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741824] gcd [Fixnum, 25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741824] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741824] gcd [Fixnum, -2] => ", "[Fixnum, 2]"],
|
||||
["[Fixnum, -1073741824] gcd [Fixnum, -4] => ", "[Fixnum, 4]"],
|
||||
["[Fixnum, -1073741824] gcd [Fixnum, -5] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741824] gcd [Fixnum, -25] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741824] gcd [Fixnum, 1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741824] gcd [Fixnum, -1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741824] gcd [Fixnum, -1073741824] => ",
|
||||
"[Bignum, 1073741824]"],
|
||||
["[Fixnum, -1073741824] gcd [Bignum, 1073741824] => ",
|
||||
"[Bignum, 1073741824]"],
|
||||
["[Fixnum, -1073741824] gcd [Bignum, 1073741824] => ",
|
||||
"[Bignum, 1073741824]"],
|
||||
["[Fixnum, -1073741824] gcd [Fixnum, -1073741824] => ",
|
||||
"[Bignum, 1073741824]"],
|
||||
["[Fixnum, -1073741824] gcd [Bignum, -1073741825] => ", "[Fixnum, 1]"],
|
||||
["[Fixnum, -1073741824] gcd [Bignum, 1073741825] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, -1073741825] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, -1073741825] gcd [Fixnum, 2] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, -1073741825] gcd [Fixnum, 4] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, -1073741825] gcd [Fixnum, 5] => ", "[Fixnum, 5]"],
|
||||
["[Bignum, -1073741825] gcd [Fixnum, 25] => ", "[Fixnum, 25]"],
|
||||
["[Bignum, -1073741825] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, -1073741825] gcd [Fixnum, -2] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, -1073741825] gcd [Fixnum, -4] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, -1073741825] gcd [Fixnum, -5] => ", "[Fixnum, 5]"],
|
||||
["[Bignum, -1073741825] gcd [Fixnum, -25] => ", "[Fixnum, 25]"],
|
||||
["[Bignum, -1073741825] gcd [Fixnum, 1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, -1073741825] gcd [Fixnum, -1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, -1073741825] gcd [Fixnum, -1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, -1073741825] gcd [Bignum, 1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, -1073741825] gcd [Bignum, 1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, -1073741825] gcd [Fixnum, -1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, -1073741825] gcd [Bignum, -1073741825] => ",
|
||||
"[Bignum, 1073741825]"],
|
||||
["[Bignum, -1073741825] gcd [Bignum, 1073741825] => ",
|
||||
"[Bignum, 1073741825]"],
|
||||
["[Bignum, 1073741825] gcd [Fixnum, 1] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741825] gcd [Fixnum, 2] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741825] gcd [Fixnum, 4] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741825] gcd [Fixnum, 5] => ", "[Fixnum, 5]"],
|
||||
["[Bignum, 1073741825] gcd [Fixnum, 25] => ", "[Fixnum, 25]"],
|
||||
["[Bignum, 1073741825] gcd [Fixnum, -1] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741825] gcd [Fixnum, -2] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741825] gcd [Fixnum, -4] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741825] gcd [Fixnum, -5] => ", "[Fixnum, 5]"],
|
||||
["[Bignum, 1073741825] gcd [Fixnum, -25] => ", "[Fixnum, 25]"],
|
||||
["[Bignum, 1073741825] gcd [Fixnum, 1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741825] gcd [Fixnum, -1073741823] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741825] gcd [Fixnum, -1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741825] gcd [Bignum, 1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741825] gcd [Bignum, 1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741825] gcd [Fixnum, -1073741824] => ", "[Fixnum, 1]"],
|
||||
["[Bignum, 1073741825] gcd [Bignum, -1073741825] => ",
|
||||
"[Bignum, 1073741825]"],
|
||||
["[Bignum, 1073741825] gcd [Bignum, 1073741825] => ", "[Bignum, 1073741825]"]]
|
||||
else
|
||||
pp RbConfig::CONFIG
|
||||
@@expected = nil
|
||||
end
|
||||
|
||||
def test_results
|
||||
values =
|
||||
[
|
||||
1, 2, 4, 5, 25,
|
||||
-1, -2, -4, -5, -25,
|
||||
@@biggest_positive_fixnum, - @@biggest_positive_fixnum,
|
||||
@@biggest_negative_fixnum, - @@biggest_negative_fixnum,
|
||||
@@smallest_positive_bignum, - @@smallest_positive_bignum,
|
||||
@@smallest_negative_bignum, - @@smallest_negative_bignum,
|
||||
]
|
||||
|
||||
result = [ ]
|
||||
values.each do | x |
|
||||
values.each do | y |
|
||||
result <<
|
||||
[ "#{xc(x)} gcd #{xc(y)} => ",
|
||||
begin
|
||||
xc(x.gcd(y))
|
||||
rescue => err
|
||||
err
|
||||
end
|
||||
]
|
||||
end
|
||||
end
|
||||
|
||||
if @@expected
|
||||
if result != @@expected
|
||||
@@expected.each_with_index do | x, i |
|
||||
y = result[i]
|
||||
assert_equal x, y
|
||||
end
|
||||
end
|
||||
else
|
||||
puts "@@expected = "
|
||||
pp result
|
||||
end
|
||||
end
|
||||
end
|
1205
test/rational/test_rational.rb
Normal file
1205
test/rational/test_rational.rb
Normal file
File diff suppressed because it is too large
Load diff
1387
test/rational/test_rational2.rb
Normal file
1387
test/rational/test_rational2.rb
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Add table
Add a link
Reference in a new issue