Sha256: e8f1600fb31d362d5fa54451f040e4e1e5e74bd169b5832c3c87e9b46f53bc27

Contents?: true

Size: 774 Bytes

Versions: 5

Compression:

Stored size: 774 Bytes

Contents

# coding: utf-8
# A000651
TAKEUCHI = [0, 1, 4, 14, 53, 223, 1034, 5221, 28437, 165859, 1029803, 6772850,
            46983238, 342509396, 2615606677, 20865444825, 173446634597, 
            1499111445237, 13445550920288, 124919896067530, 
            1200320663197275, 11910845573790488]

describe Integer, "#takeuchi" do
  TAKEUCHI.each_with_index do |t, n|
    it "returns #{t} as the #{n}#{n.ordinal} Takeuchi number" do
      n.takeuchi.should == t
    end
  end
end

describe Integer, "#takeuchi?" do
  TAKEUCHI.each do |n|
    it "returns true for Takeuchi number #{n}" do
      n.should be_takeuchi
    end
  end

  TAKEUCHI.to_seq.invert.sample(100).each do |n|
    it "returns false for non-Takeuchi number #{n}" do
      n.should_not be_takeuchi
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
numb-0.186.0 spec/numb/takeuchi_spec.rb
numb-0.185.0 spec/numb/takeuchi_spec.rb
numb-0.184.0 spec/numb/takeuchi_spec.rb
numb-0.181.0 spec/numb/takeuchi_spec.rb
numb-0.170.0 spec/numb/takeuchi_spec.rb