Skip to content

Instantly share code, notes, and snippets.

View komasaru's full-sized avatar

mk-mode komasaru

View GitHub Profile
@komasaru
komasaru / calc_factorial.rb
Last active April 19, 2018 04:59
Ruby script to compute factorials.
#! /usr/local/bin/ruby
#*********************************************
# 階乗計算(1! - 49! 各 64 桁)
#*********************************************
#
class CalcFactorial
L = 64 # 計算桁数
L2 = (L + 7 ) / 8 # 配列サイズ
N = 49 # 計算個数
@komasaru
komasaru / tweet_with_image.rb
Last active November 13, 2017 01:31
Ruby script to tweet with image files.
require 'twitter'
require 'oauth'
# Consumer key, Secretの設定
CONSUMER_KEY = "XXXXXXXXXXXXXXXXXXXX"
CONSUMER_SECRET = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
# Access Token Key, Secretの設定
ACCESS_TOKEN_KEY = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
ACCESS_SECRET = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
@komasaru
komasaru / calc_pi_klingenstierna.rb
Last active April 19, 2018 05:01
Ruby script to calc pi by Klingenstierna formula.
#! /usr/local/bin/ruby
#*********************************************
# 円周率計算 by Klingenstierna の公式
#*********************************************
#
class CalcPiKlingenstierna
FNAME = "pi_klingenstierna.txt"
def initialize(x)
@l = x # 計算桁数
@komasaru
komasaru / ccalc_pi_euler.rb
Last active April 19, 2018 05:02
Ruby script to compute Pi with Euler's formula.
#! /usr/local/bin/ruby
#*********************************************
# 円周率計算 by オイラーの公式
#*********************************************
#
class CalcPiEular
FNAME = "pi_eular.txt"
def initialize(x)
@l = x # 計算桁数
@komasaru
komasaru / calc_pi_arctan_old.rb
Last active April 19, 2018 05:04
Ruby script to compute Pi with arctan's formula.(old ver.)
#! /usr/local/bin/ruby
#*********************************************
# 円周率計算 by Arctan 系の公式
#
# 1: Machin
# 2: Klingenstierna
# 3: Euler
# 4: Euler(2)
#*********************************************
#
@komasaru
komasaru / cal_pi_arctan_2.rb
Last active April 19, 2018 05:03
Ruby script to compute Pi with arctan's formula.(v2)
#! /usr/local/bin/ruby
#*********************************************
# 円周率計算 by Arctan 系の公式
# ( 各項の Arctan を個別に計算後に加減算する方法 )
#
# 1: Machin
# 2: Klingenstierna
# 3: Euler
# 4: Euler(2)
# 5: Gauss
@komasaru
komasaru / calc_big_digits_2.rb
Last active April 19, 2018 05:14
Ruby script to compute big-digit values.(v2)
#! /usr/local/bin/ruby
#*********************************************
# 多桁計算
# ( 符号は考慮しない。)
#*********************************************
#
class CalcBigDigits
N_A = 1000 # 計算桁数 ( 被加減乗除数 )
N_B = 996 # 計算桁数 ( 加減乗除数 )
LIMIT = 4 # 配列1つあたり桁数
@komasaru
komasaru / multiply_normal.rb
Last active April 19, 2018 05:14
Ruby script to multiply big-digit values.
#! /usr/local/bin/ruby
#*********************************************
# 多倍長乗算 ( by 標準(筆算)方式 )
# - 多倍長 * 多倍長
# - 最下位の桁を配列の先頭とする考え方
#*********************************************
#
class MultiplyNormal
D_MAX = 1024 # 計算可能な最大桁数 ( 2のべき乗 )
D = 1024 # 実際に計算する桁数 ( D_MAX 以下の 4 の倍数 )
@komasaru
komasaru / multiply_karatsuba.rb
Last active April 19, 2018 05:13
Ruby script to multiply big-digit values with Karatsuba method.
#! /usr/local/bin/ruby
#*********************************************
# 多倍長乗算 ( by Karatsuba 法 )
# - 多倍長 * 多倍長
# - 最下位の桁を配列の先頭とする考え方
#*********************************************
#
class MultiplyKaratsuba
D_MAX = 1024 # 計算可能な最大桁数 ( 2のべき乗 )
D = 1024 # 実際に計算する桁数 ( D_MAX 以下の 4 の倍数 )
@komasaru
komasaru / multiply_toom_cook_3.rb
Last active April 19, 2018 05:12
Ruby script to multiply big-digit values with Toom-Cook 3-way method.
#! /usr/local/bin/ruby
#*********************************************
# 多倍長乗算 ( by Toom-Cook 法 (3-way) )
# - 多倍長 * 多倍長
# - 最下位の桁を配列の先頭とする考え方
#*********************************************
#
class MultiplyToomCook3
D_MAX = 729 # 計算可能な最大桁数 ( 3 のべき乗 )
D = 729 # 実際に計算する桁数 ( D_MAX 以下 )