昨日の夜飯は在庫整理 カツカレー
カツは、もちろんスーパーの惣菜380円税抜きですが、肉は美味しいのですが薄くて硬かったので、玉手のあの厚切りクオリティーはかなり素晴らしいかもw
松屋の冷凍カレー食い切ったw在庫0やっと松屋の冷凍シリーズあと残すところ牛どん2パックになりまして、なんとか在庫整理成功。
昨日の続きでキャラアニメですw
昨日の花火はただPRINTを付けてWAITして消して、またPRINTの繰り返しだけのアニメでしたが、本日は代数を使ったアニメーション処理で花火の部分だけ作ってデータ処理で読み込ませます。
●昨日のPRINTのみ花火アニメ
LOCATE 15,15: PRINT"*"
WAIT 30
LOCATE 14,14: PRINT"***"
LOCATE 14,15 PRINT"* *"
LOCATE 14,16: PRINT"***"
WAIT 30
昨日はこの表示切り替えだけw
昨日の基本的に打ち上がり時に使ったLOCATION値をY+1で加算するだけの処理をたくさん作るだけですw
たくさん加減算で8方向くらい作ってWAIT値を触るだけで、綺麗なアニメーションになると思います。
カーブなんかもできるようになるとさらに素晴らしいものが作れるのですが、まあさらに高度になるので、まずはただの加減算数のみでw
●本日の代数アニメ
CLS
A=15:B=15:C=15:D=15
LOCATE 15,A: PRINT"*"
LOCATE 15,B: PRINT"*"
LOCATE C,15: PRINT"*"
LOCATE D,15: PRINT"*"
LOCATE C,A: PRINT"*"
LOCATE D,B: PRINT"*"
LOCATE A,C: PRINT"*"
LOCATE B,D: PRINT"*"
WAIT5
A=A+1:B=Bー1:C=C+1:D=Dー1
GOTO 2行目
これで8方向なはずw
でもこの書き方だと入力が面倒なので、代数を増やして文字数を減らしますw
PRINT"*"は同じなので、代数化できるのでP=PRINT"*"みたいな感じですね。
P=PRINT"*"
LOCATE 15,A: P
LOCATE 15,B: P
LOCATE C,15: P
LOCATE D,15: P
LOCATE C,A: P
LOCATE D,B: P
LOCATE A,C: P
LOCATE B,D: P
これでメモリ節約+入力手間省略できるはずですが・・・でも実際はできませんでしたw
命令文の代数は無理ですねw
これができるのがオブジェクト指向?とは言わないか?組み合わせ型引数?確かVBとかはできたと思いますが、20年前の記憶なので、定かではありませんw
命令文の代数はできませんので、そのまま入力。
まあこれはVBでもできないかも?w
あとこのテレコパターンもNGだったは間違えていましたw
LOCATE A,C: PRINT"*"
LOCATE B,D: PRINT"*"
これに修正。
LOCATE A,D: PRINT"*"
LOCATE B,C: PRINT"*"
これでバッチリですねw
でも場所が固定されてしまいましたw
これでは使い物にならないので、考える必要があり・・・こういうのが面倒臭いw
まあY軸AB=5上部位置、X軸CD=15中央位置でそれぞれ揃えればいけますが・・・XYの値が異なるとやはり、これがテレコした場合のこの数式が通用しませんので、別途作る必要が出てきました。
LOCATE A,D: PRINT"*"
LOCATE B,C: PRINT"*"
やっぱり横着は許されないw
コンピューターは次々と問題が出てきますので、永遠と問題が発生して、問題を解決するという試行錯誤の連続w
CLS
A=5:B=5:C=15:D=15:E=5:F=5:G=15:H=15
LOCATE 15,A: PRINT"*"
LOCATE 15,B: PRINT"*"
LOCATE C,5: PRINT"*"
LOCATE D,5: PRINT"*"
LOCATE C,A: PRINT"*"
LOCATE D,B: PRINT"*"
LOCATE G,F: PRINT"*"
LOCATE H,E: PRINT"*"
WAIT5
A=A+1:B=Bー1:C=C+1:D=Dー1:E=E+1:F=Fー1:G=G+1:H=Hー1
IF A=17 GOTO 1行目
GOTO 2行目
これで完成ですね。
計算も集約でまとめられるところをまとめていくとスッキリしますので、数学のセンスが問われますw
0 件のコメント:
コメントを投稿