ズンドコキヨシ with ColdFusion(CFML&CFSCRIPT)


Colfusionの練習ついでに。

ColdfusionはAdobe製のプログラミング言語。マークアップ言語のCFML(ColdFusion Markup Language)と、JavaScript風のCFSCRIPTの2種類の書き方ができる。

CFMLの場合


<cfset z = "ズン" >
<cfset d = "ドコ" >
<cfset a = ArrayNew(1) >

<!--- 条件付きループ(whileに相当) 配列を文字列結合した値の中に該当の文字があるかチェック --->
<cfloop condition = 'Find(z&z&z&z&d,ArrayToList(a,"")) eq 0'  >
  <!--- 1 or 2の値をランダム生成し、一括で該当の文字に置換、配列に追加 --->
    <cfset ArrayAppend(a,ReplaceList(RandRange(1,2),"1,2","#z#,#d#")) >    
</cfloop>

<cfoutput>
<!--- 配列を文字列結合して出力 --->
#ArrayToList(a,"")#キ・ヨ・シ!
</cfoutput>

CFSCRIPTの場合


<cfscript>
z = "ズン";
d = "ドコ";
a = []; 

// 配列を文字列結合した値の中に該当の文字があるかチェック
while (Find(z&z&z&z&d,ArrayToList(a,"")) == 0 ) { 
    /* 1 or 2の値をランダム生成し、一括で該当の文字に置換、配列に追加 */
    ArrayAppend(a,ReplaceList(RandRange(1,2),"1,2","#z#,#d#"));
}
// 配列を文字列結合して出力
WriteOutput(ArrayToList(a,"") & "キ・ヨ・シ!");
</cfscript>