MacでRuby on Railsの環境を整える
とりあえず環境ができたのでメモ.
その1
Locomotiveを使う.超簡単.
その2
もうちょいがんばってみる.MacPorts(旧DarwinPorts)を使う.以下簡単な構成のメモ.
- MacPorts(DawrinPorts)
これで一応動いた.railsは- -include-dependenciesオプションを付けとくと,依存ファイル全部インストールされる.mysql4は+serverのvariantsを付けとくと,起動スクリプトも勝手に入る.あと,mysql4はインストール後のメッセージ見て,「sudo chown mysql:mysql /opt/なんとか」とかしないと使えない.
2006/11/21 01:44 | Ruby | トラックバック(0) | コメント(0)
Rubyで小町算
続きまして,1?9までの数字の間に適当に+,-,*,/を挟んで答えを100にする小町算をRubyでやってみました.
class Komachi
def initialize
@result = []
@reg = /(\+|\-|\*|\/)[2-9]/
calc()
calc('-1')
end
attr_reader :result
def calc(string = '1', n = 2)
if n == 10
@result.push(string+"=100") if eval(string.gsub(@reg, '.0\&')) == 100
else
['+', '-', '*', '/', ''].each do |cal|
calc(string + cal + n.to_s, n + 1)
end
end
end
end
komachi = Komachi.new()
komachi.result.each{|s| puts s}
puts komachi.result.size.to_s + '個発見!'
結果は別ファイルにしました.プログラムがあってれば,100になるパターンは162個あるようです.(,)とか累乗とか含めだすともっとありそうですが,めんどくさそうなのでやめておきます.
2006/07/23 19:26 | Ruby | トラックバック(0) | コメント(0)
Rubyで小町数
最近ちょっと勉強しはじめたRubyの練習です.「自乗したら小町数(1?9までを1回ずつ使った9桁の数,例:324587691)になる整数を全て列挙する」ってのをやってみました.
array = []
(Math.sqrt(123456789).ceil..Math.sqrt(987654321).floor).each do |i|
temp = (i ** 2).to_s.split('')
array.push(i) if temp.uniq.size == 9 and !(temp.include? '0')
end
array.each {|i| puts i.to_s + " ^ 2 = " + (i ** 2).to_s}
puts array.size.to_s + '個発見!'
実行結果
11826 ^ 2 = 139854276 12363 ^ 2 = 152843769 12543 ^ 2 = 157326849 14676 ^ 2 = 215384976 15681 ^ 2 = 245893761 15963 ^ 2 = 254817369 18072 ^ 2 = 326597184 19023 ^ 2 = 361874529 19377 ^ 2 = 375468129 19569 ^ 2 = 382945761 19629 ^ 2 = 385297641 20316 ^ 2 = 412739856 22887 ^ 2 = 523814769 23019 ^ 2 = 529874361 23178 ^ 2 = 537219684 23439 ^ 2 = 549386721 24237 ^ 2 = 587432169 24276 ^ 2 = 589324176 24441 ^ 2 = 597362481 24807 ^ 2 = 615387249 25059 ^ 2 = 627953481 25572 ^ 2 = 653927184 25941 ^ 2 = 672935481 26409 ^ 2 = 697435281 26733 ^ 2 = 714653289 27129 ^ 2 = 735982641 27273 ^ 2 = 743816529 29034 ^ 2 = 842973156 29106 ^ 2 = 847159236 30384 ^ 2 = 923187456 30個発見!
というわけで,30個ありました.
2006/07/22 00:54 | Ruby | トラックバック(0) | コメント(0)