スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

F# 雑記 Numbering 再び

 BLUEPIXYさんの記事を参考に、Numberingで引数をリストのリストにするVersionを書いてみました。 
 
> let numbering (ori_ranges:list<list<int>>) = 
    let maxDepth = List.length ori_ranges 
    let rec numbSub (range:list<list<int>>) upperStr = 
        match range with 
        | [] -> () 
        |hd::tl -> let curDepth = List.length range 
                   for i in hd do  
                     let outStr = (string i) 
                     printfn "%*s%s%s" ((maxDepth - curDepth)*3) "" upperStr outStr   
                     numbSub tl (upperStr + outStr + ".")   
    numbSub ori_ranges "";; 
 
val numbering : int list list -> unit 
 
(実行例) 
> numbering [[1;2;3];[5;6]];; 
   1.5 
   1.6 
   2.5 
   2.6 
   3.5 
   3.6 
val it : unit = () 
 
(実行例) 
> numbering [[1;2;3];[5;6];[7;8;9];[1;2]];; 
   1.5 
      1.5.7 
         1.5.7.1 
         1.5.7.2 
      1.5.8 
         1.5.8.1 
         1.5.8.2 
      1.5.9 
         1.5.9.1 
         1.5.9.2 
   1.6 
      1.6.7 
         1.6.7.1 
         1.6.7.2 
      1.6.8 
         1.6.8.1 
         1.6.8.2 
      1.6.9 
         1.6.9.1 
         1.6.9.2 
   2.5 
      2.5.7 
         2.5.7.1 
         2.5.7.2 
      2.5.8 
         2.5.8.1 
         2.5.8.2 
      2.5.9 
         2.5.9.1 
         2.5.9.2 
   2.6 
      2.6.7 
         2.6.7.1 
         2.6.7.2 
      2.6.8 
         2.6.8.1 
         2.6.8.2 
      2.6.9 
         2.6.9.1 
         2.6.9.2 
   3.5 
      3.5.7 
         3.5.7.1 
         3.5.7.2 
      3.5.8 
         3.5.8.1 
         3.5.8.2 
      3.5.9 
         3.5.9.1 
         3.5.9.2 
   3.6 
      3.6.7 
         3.6.7.1 
         3.6.7.2 
      3.6.8 
         3.6.8.1 
         3.6.8.2 
      3.6.9 
         3.6.9.1 
         3.6.9.2 
val it : unit = () 
スポンサーサイト

テーマ : プログラミング
ジャンル : コンピュータ

コメントの投稿

非公開コメント

プロフィール

T GYOUTEN

Author:T GYOUTEN
F#と英単語とフリーソフトと読書に興味があります。
ホームページでフリーソフトも公開しています。どぞ御贔屓に。

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
フリーエリア
フリーエリア
blogram投票ボタン
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QRコード
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。