「微妙・五言絶句」をF#に移植してしまった件

| コメント(0) | トラックバック(0)

どんなジレンマの「微妙・五言絶句」が面白かったので、またも F# に移植してしまいました。

open System
open System.Text.RegularExpressions
let re = new Regex("[一-龠]");;
let random = new Random();;
let extractKanji source = [| for i in re.Matches(source) -> i.Value |];;
let randomKanji source =
let kanjiText = extractKanji source in
[| for i in 1..20 -> kanjiText.[random.Next(kanjiText.Length)]|];;
let main =
let kanjis =
let text = Console.ReadLine() in
randomKanji text in
Console.WriteLine("{0} {1} {2} {3}", kanjis.[0], kanjis.[1], kanjis.[2], kanjis.[3]);
Console.WriteLine("{0} {1} {2} {3}", kanjis.[4], kanjis.[5], kanjis.[6], kanjis.[7]);
Console.WriteLine("{0} {1} {2} {3}", kanjis.[8], kanjis.[9], kanjis.[10], kanjis.[11]);
Console.WriteLine("{0} {1} {2} {3}", kanjis.[12], kanjis.[13], kanjis.[14], kanjis.[15]);
Console.WriteLine("{0} {1} {2} {3}", kanjis.[16], kanjis.[17], kanjis.[18], kanjis.[19]);;
List 1. Source code

ソースコードは、今までのものよりもシンプルになっています。実行結果も示します。

今日は、今日はどんな陽気ですか。こちらは台風が通り過ぎ、飛行機雲が見えたりしましたよ。風邪を引いたと聞きましたが、体調はもう良いのですか。あまり無理せず、今日も良い一日になさって下さい。
通 良 台 今
一 調 雲 過
下 日 邪 通
風 日 日 調
聞 今 日 日
List 2. Result
Foundations of F# (Expert's Voice in .Net) Foundations of F# (Expert's Voice in .Net)
Robert Pickering

Apress 2007-05-28
売り上げランキング : 1025

Amazonで詳しく見る
by G-Tools
Expert F# (Expert's Voice in .Net) Expert F# (Expert's Voice in .Net)
Don Syme

Apress 2007-12-03
売り上げランキング : 1007

Amazonで詳しく見る
by G-Tools
Technorati のタグ:

トラックバック(0)

トラックバックURL: http://www.cworld2000.com/cgi-bin/mt/mt-tb.cgi/434

コメントする

Recent Tracks

gorn708's Profile Page

このブログ記事について

このページは、gornが2008年6月 9日 01:47に書いたブログ記事です。

ひとつ前のブログ記事は「アクセスログ解析ツール」です。

次のブログ記事は「Blassreiter -ブラスレイター- #10: 陰謀の中で」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

Adwords