カメ太の日記 / 2009-01-10

前の日 / 次の日 / 最新 / 2009-01

01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

2009-01-10 Sat

迷路抜けプログラム [dolittle]

maze

ドリトルで迷路抜けプログラムを作ってみました。
アルゴリズムは次の簡単なルールです。
・右に壁がなければ右を向く。
・前に壁があれば左を向く。そうでなければ前に進む。

ゴールに到達すると動きが止まり、メッセージが表示されます。
壁の座標は80の倍数になるように配置します。

// 迷路を描く
カメ太=タートル!作る 20 線の太さ。
「カメ太!480 歩く 90 右回り」!4回 繰り返す 図形を作る -240 240 位置。
横線=カメ太!80 歩く 図形を作る 1000 1000 位置。
縦線=横線!作る 90 右回り 1000 1000 位置。

横線!作る -240 160 位置。
縦線!作る -160  160 位置。
横線!作る -240 80 位置。

横線!作る -80 160 位置。
縦線!作る -80  160 位置。
縦線!作る -80  80 位置。
横線!作る -80 0 位置。

横線!作る -240 -80 位置。
横線!作る -160 -80 位置。
横線!作る -80 -80 位置。

横線!作る -240 -160 位置。
横線!作る -160 -160 位置。
横線!作る -80 -160 位置。

横線!作る 0 80 位置。
横線!作る 80 80 位置。
縦線!作る 80  80 位置。
縦線!作る 80  0 位置。
縦線!作る 80  -80 位置。
縦線!作る 80  -160 位置。

// スタート位置
カメ太!ペンなし -200 200 位置。

// 探索メソッドたち
カメ太:前進=「
「自分!右壁なし?」!なら「自分!90 右回り」実行。
「自分!前壁なし?」!なら「自分!80 歩く」そうでなければ「自分!90 左回り」実行。
」。

カメ太:右壁なし?=「
tmp=衝突。flag=はい。衝突=「flag=いいえ」。
自分!90 右回り 40 歩く 40 戻る 90 左回り。
衝突=tmp。flag。
」。

カメ太:前壁なし?=「
tmp=衝突。flag=はい。衝突=「flag=いいえ」。
自分!40 歩く 40 戻る。
衝突=tmp。flag。
」。

// ゴール
ゴール=縦線!作る 240  -160 位置(黄)塗る。
ゴール:衝突=「時計!中断。ラベル!"おめでとう!" 作る 24 文字サイズ(赤)文字色 0 280 位置」。

// 実行
時計=タイマー!作る 50 回数「カメ太!前進」実行。

フォトアルバム [life]

album

お試しの第2段として注文していたフォトアルバムがAppleから届きました。
今度は「中」のサイズです。上に乗せた先日の「小」(名刺大)と比べると、
リングも付いていてずいぶん立派なのがわかります。値段の差以上の満足
感がありそうです。

2012 : 01 02 03 04 05 06 07 08 09 10 11 12
2011 : 01 02 03 04 05 06 07 08 09 10 11 12
2010 : 01 02 03 04 05 06 07 08 09 10 11 12
2009 : 01 02 03 04 05 06 07 08 09 10 11 12
2008 : 01 02 03 04 05 06 07 08 09 10 11 12
2007 : 01 02 03 04 05 06 07 08 09 10 11 12

最終更新時間: 2012-08-19 23:58

RSS