2006/07/27
      
      勝手にどう書く0.0
                手前味噌ですが今日の一行というコーナーを2004年からやっていて、「どう書く」的なネタがかなり溜まっています。
たとえば、7/10には、
            
    
            
                
                
            
            
            
            
        たとえば、7/10には、
という問題があり、Gaucheではこう書けます。(7/11)各要素が「0または1をとる乱数」から成る長さnのリストを得よ。
ex.
gosh> (make-binary-random-list 24)
(1 1 1 1 1 0 0 1 1 0 1 1 1 0 1 1 1 0 0 1 0 1 0 1)
(use srfi-27)PythonやHaskellでは簡単そうですね。
(use srfi-42)
(define (make-binary-random-list length)
(list-ec (: i length) (random-integer 2)))
- Category(s)
- その他
- キミならどう書く2.0
- The URL to Trackback this entry is:
                    Pythonで特定の何種類かの値からランダムに選んでリストを作る方法
                   Pythonで特定の何種類かの値からランダムに選んでリストを作る方法
               
               
                勝手にどう書く0.0を読んで、勝手に抽象化しました。 >>> from ran...
      
                   
                   
                       
               
                    [Squeak][Smalltalk] 各要素が「0または1をとる乱数」から成る長さnのリスト
                   [Squeak][Smalltalk] 各要素が「0または1をとる乱数」から成る長さnのリスト
               
               
                勝手にどう書く0.0 より。 (1 to: 10) collect: [:i | 2 atRandom - 1] (1 to: 10) collect: [:i | #(0 1) atRandom] (1 to: 10) collect: [:i | 'ACGT' atRandom] use や import がいらないのが Python や Scheme に対して、Smalltalk のよいところでもあり、悪い
      
                   
                   
                       
               
                    各要素が「0または1をとる乱数」から成る長さnのリスト
                   各要素が「0または1をとる乱数」から成る長さnのリスト
               
               
               勝手にどう書く0.0 より。あまり興味を惹かれるお題ではないけど、一応。
Prelude> :module +Random
Prelude Random> :module +Monad
Prelude Random Monad> xs <- liftM (take 10 . randomRs (0,1)) newStdGen
Prelude Random Monad> xs
[1,0,0,1,1,0,1,1,0,1]
      
                   
                   
                       
               
                    [プログラミング]Concurrent Clean : 各要素が「0または1をとる乱数」から成る長さnのリストを得よ。
                   [プログラミング]Concurrent Clean : 各要素が「0または1をとる乱数」から成る長さnのリストを得よ。
               
               
                CleanJの切りも良いので、ちょっと息抜き。 import StdEnv, OptEnv, MersenneTwister Start = mbrl 10 1 //make binary random list mbrl n seed = take n $ map (\x = (abs x) rem 2) $ genRandInt seed 乱数種を与える方法として、OptEnvライブラリでrandSeedという関
      
                   
                   
                       
               
                    勝手にどう書く0.0 — Lightweight Language Ring
                   勝手にどう書く0.0 — Lightweight Language Ring
               
               
               勝手にどう書く0.0 † Lightweight Language Ring 各...
      
                   
                   
                       
               
                    各要素が「0または1をとる乱数」から成る長さnのリスト @ Ruby
                   各要素が「0または1をとる乱数」から成る長さnのリスト @ Ruby
               
               
               about 勝手にどう書く0.0
素直に書いてみました.
  ruby -e 'p (0...24).collect { rand(2) }'
 
24のとこをARGV[0].to_iとすれば任意の引数が取れます.
      
                   
                 
     
 
 
             
            
awk だと一行野郎でこんな感じでしょうか。
BEGIN{srand();for(;i<=24;i++){printf int(2*rand())" "}print}
http://gauc.no-ip.org/wiki.cgi/private?page=Blog%2F2006%2D7%2D29#p2
愚直すぎ?