Skip to content

Instantly share code, notes, and snippets.

@tomcha
tomcha / syakyo.pl
Last active September 30, 2016 09:54
Perlで写経
#!/usr/bin/env perl
use strict;
use warnings;
my $kyo = <<"EOS";
ココニ
経典ヲ
記述セヨ
EOS
@tomcha
tomcha / recurcion_foldBack.rb
Created June 25, 2016 07:09
recurcion_foldBack.rb
#!/usr/bin/env ruby
# coding:utf-8
list = [1, 2, 3, 4]
sumproc = Proc.new{|initval, enum|
initval + enum
}
minproc = Proc.new{|initval, enum|
@tomcha
tomcha / recursion16.rb
Created June 23, 2016 03:35
recursion16.rb
list = [1, 3, 5]
pro = Proc.new{|i|
arr ||= []
(0..i).each do |j|
arr << j
end
arr
}
def collect(list, pro)
@tomcha
tomcha / recursion15.rb
Created June 23, 2016 03:34
recursion15.rb
list = [1, 3, 5]
#pro = Proc.new{|i| 0..i }
pro = Proc.new{|i|
res ||= []
(0..i).each do |j|
res << j
end
res
}
@tomcha
tomcha / recursion14.rb
Created June 23, 2016 03:31
recursion14.rb
list = [1, 2, 3, 4, 5, 6, 7]
pro = Proc.new{|i| i % 2 == 0 ? true : false}
def partition(list, pro)
@tlist ||= []
@flist ||= []
if list.size == 0
[@tlist, @flist]
else
i = list.shift
@tomcha
tomcha / recursion13.rb
Created June 23, 2016 03:30
recursion13.rb
list = [1, 2, 3, 4, 5, 6]
pro = Proc.new{|i| i % 2 == 0 ? true : false}
def filter(list, pro)
@newlist ||= []
if list.size == 0
@newlist
else
i = list.shift
@newlist << i if pro.call(i)
@tomcha
tomcha / recursion12.rb
Created June 23, 2016 03:29
recursion12.rb
list = [1, 2, 3, 4, 5]
pro = Proc.new{|i| i * 2}
class Map
def self.map(list, pro)
@newlist ||= []
if list.size == 0
@newlist
else
i = list.shift
@tomcha
tomcha / recursion11.rb
Created June 22, 2016 11:05
recursion11.rb
list = [1, 2, 3, 4, 5, 6, 7, 8, 9]
n = 3
pro = Proc.new{|n| n % 2 == 0 ? true : false}
class Rec
def self.whileTake(list, n, pro)
@newlist ||= []
if list.size == 0
@newlist
elsif n == 0
@tomcha
tomcha / recursion10.rb
Created June 22, 2016 11:04
recursion10.rb
list = [1, 2, 3, 4, 5, 6, 7, 8, 9]
n = 3
pro = Proc.new{|n| n % 2 == 0 ? true : false}
def whileSkip(list, n, pro)
if list.size == 0
list
elsif n == 0
list
else
@tomcha
tomcha / recursion9.rb
Created June 22, 2016 11:04
recursion9.rb
list = [1, 2, 3, 4, 5, 6, 7]
n = 3
def take(list , n)
if list.size < n
list
elsif list.size == n
list
else
list.pop