32nd Diary

過去の日記
today: , yesterday: , total:
2006年
8月
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31

めーるあどれす:ruby -r base64 -e 'puts Base64.decode64("dGFrQG5vMzIudGs=")'


トップ «前の日記(2006-08-10 (Thursday)) 最新 次の日記(2006-08-12 (Saturday))» 編集

2006-08-11 (Friday) [長年日記]

各要素が「0または1をとる乱数」から成る長さnのリスト @ Ruby

about 勝手にどう書く0.0

素直に書いてみました.

ruby -e 'p (0...24).collect { rand(2) }'

24のとこをARGV[0].to_iとすれば任意の引数が取れます.

Tags: Ruby LL

いろいろ安くなっていてビビる

所用で都内に移動.途中,秋葉原に寄ってみた.

そしたらUSBのフラッシュメモリが1GBで3000円とかになってるわけですよ! 話には聞いていたのですが,実際に見るとビビりますね. BSDかLinuxをインストールして持ち歩こうかな,とか考えてしまいます...

でもって,DVD-DLに対応したドライブも4000円くらいで買えるんですよ!

もう,何買ったらいいのかわかんなくて何にも買いませんでした(ぶ

Tags: Hardware
本日のツッコミ(全6件) [ツッコミを入れる]
machy (2006-08-13 (Sunday) 12:19)

僕も書いたぜ!こういうの多そう。<br>ruby -e "printf('%0'+ARGV[0]+'b',rand(1<<ARGV[0].to_i))" 123

machy (2006-08-13 (Sunday) 12:34)

補足。リストを得よ、だから表示は二の次か…。ちょっとまずいか。

tyv (2006-08-13 (Sunday) 18:32)

ruby -e 'p [].fill( 0, ARGV[0].to_i ) { rand(2) }' 100<br><br>これじゃおもしろくもなんともないなぁ

32 (2006-08-13 (Sunday) 21:39)

> machyさん<br>ruby -e "p format('%0'+ARGV[0]+'b',rand(1<<ARGV[0].to_i)).scan(/./).map{|s| s.to_i}" 123<br>なーんてことをすれば無理矢理リストにできますよー.(ぉ<br>「randを一度しか実行しない」という縛りなら,こんな書き方もいいかもしれません.<br>ruby -e 'puts rand(1 << ARGV[0].to_i).to_s.unpack("b#{ARGV[0]}")' 123<br><br>> tyvさん<br>割と個人の好みが表れるよねぇ.<br>「最初に配列を作ってから値を入れる」つながりなら,injectを使った書き方もなかなかです.<br>ruby -e 'p (0...ARGV[0].to_i).inject([]){|a,i| a << rand(2) }' 100

machy (2006-08-14 (Monday) 00:25)

unpackは使えないか考えたんだけど、to_sのunpackは'0''1'の文字コードが二進数表記になってしまうので、ダメじゃないかな。<br>ちなみに'%0'+ARGV[0]+'b'なんて読みにくい書き方したのは、ruby -e '...'だと中の<<がシェルの方で解釈されてうまく動かなかったためruby -e "..."とせざるを得なかったのです…。@windows

32 (2006-08-14 (Monday) 02:51)

そうなんですよね.一発でリストにすることはできなさげですね...<br>.to_s.scan(/./).map{|s|s.to_i}すればリストは得られるのですが,イマイチ...

[]
本日のPingbacks(全0件)