Skip to content

Instantly share code, notes, and snippets.

obelisk68

Block or report user

Report or block obelisk68

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@obelisk68
obelisk68 / root.rb
Last active Nov 16, 2018
平方根の計算
View root.rb
require 'prime'
module Kernel
def Root(*args)
Root.new(*args)
end
end
module ExRoot
def to_root
View thirty_one_play.go
package main
import "fmt"
import "math/rand"
import "time"
var goal = 31
func min_max(cards []int, turn bool, sum int) int {
if sum == goal { if turn {return -10} else {return 10} }
if sum > goal { if turn {return 10} else {return -10} }
@obelisk68
obelisk68 / cairo_sample1.rb
Last active Oct 19, 2018
「コマ大数学科」GIFアニメ作成
View cairo_sample1.rb
require 'cairo'
require_relative 'gifanime'
require 'matrix'
include Math
Dir.chdir("picture") #作業用ディレクトリ
Width = 300
Surface = Cairo::ImageSurface.new(Cairo::FORMAT_ARGB32, Width, Width)
C = Cairo::Context.new(Surface)
@obelisk68
obelisk68 / rubysdl_tetris.rb
Last active Sep 29, 2018
Ruby/SDL でテトリス
View rubysdl_tetris.rb
# Gem 'rubysdl' に付属しているサンプルを modify したものです
require 'sdl'
class Object
def deep_clone
Marshal::load(Marshal.dump(self))
end
end
class Pattern
View μSchemeR_debug.rb
parameters = [:factorial]
args = [[:lambda, [:n], [:if, [:<, :n, 1], 1, [:*, :n, [:factorial, [:-, :n, 1]]]]]]
body = [:factorial, 4]
ext_env = [{:factorial=>:dummy},
{:+ =>[:prim, #<Proc:0x000055a6a4665a80@μSchemeR1.rb:24 (lambda)>],
:- =>[:prim, #<Proc:0x000055a6a4665a30@μSchemeR1.rb:25 (lambda)>],
:* =>[:prim, #<Proc:0x000055a6a46659e0@μSchemeR1.rb:26 (lambda)>],
:/ =>[:prim, #<Proc:0x000055a6a4665990@μSchemeR1.rb:27 (lambda)>],
:> =>[:prim, #<Proc:0x000055a6a4665940@μSchemeR1.rb:28 (lambda)>],
@obelisk68
obelisk68 / gtk_sample2c.rb
Last active Aug 4, 2018
Ruby/GTK+ でちょっと考えた
View gtk_sample2c.rb
require 'gtk2'
class GUI < Gtk::Window
Meth = [:wanwan, :nya]
def initialize(&bk)
super("GUI")
set_width_request(200)
box = Gtk::VBox.new
View 3d_maze_generate.rb
class CubeMaze
class Wall
def initialize(x, y, h, ob)
@wall = Array.new(h + 1) {Array.new(y) {Array.new(x, 1)}}
@x, @y = x, y
@cube = ob
end
attr_reader :wall
def break(num, n)
@obelisk68
obelisk68 / oekaki_sample19a.rb
Last active Jun 30, 2018
GTK+ で落書き 15
View oekaki_sample19a.rb
require 'oekaki'
Oekaki.app width: 500, height: 500 do
draw { clear(color(0x1694, 0x3447, 0x8d60)) }
t = Oekaki::Turtle.new
t.color(0xfe5f, 0xaa9a, 0x212a)
ln = 10
e = Enumerator.new do |y|
@obelisk68
obelisk68 / prime_table.rb
Last active Apr 30, 2018
省メモリで「エラトステネスの篩」同等の結果を得るコード
View prime_table.rb
def prime_table(n)
return [] if n < 2
return [2] if n == 2
table = [2, 3]
i, step = 5, 2
while i <= n
guard = Math.sqrt(i).to_i
table.each do |prime|
break if (i % prime).zero?
if prime > guard
@obelisk68
obelisk68 / blackjack.rb
Last active Mar 17, 2019
カードゲーム「ブラックジャック」の実装
View blackjack.rb
deck = nil #カードの山
shuffle = lambda do
print "カードをシャッフルします\n\n"
deck = 4.times.flat_map {|i| (1..13).map {|j| i * 100 + j} }.shuffle
end
# 一回の勝負
You can’t perform that action at this time.