Enjoy programming more!
Kidspod is a post site which supports young programmers.
First step to join us.
Register as a member
For members

2023/01/09 13:49:01

MixJuice GET URL : kidspod.club/mj/2172

たしざんゲーム

■説明
たしざんをといて答えを入れていくゲームです。
画面は以下のようになっています。
┏━┓┏━┓┏━┓┏━━━━━┓
┃A┃┃B┃┃C┃┃A+B+C┃
┗━┛┗━┛┗━┛┗━━━━━┛
┏━┓┏━┓┏━┓┏━━━━━┓
┃D┃┃E┃┃F┃┃D+E+F┃
┗━┛┗━┛┗━┛┗━━━━━┛
┏━┓┏━┓┏━┓┏━━━━━┓
┃G┃┃H┃┃I┃┃G+H+I┃
┗━┛┗━┛┗━┛┗━━━━━┛
┏━┓┏━┓┏━┓
┃A┃┃B┃┃C┃
┃+┃┃+┃┃+┃
┃D┃┃E┃┃F┃
┃+┃┃+┃┃+┃
┃G┃┃H┃┃I┃
┗━┛┗━┛┗━┛

全部で10ステージです。
A~Iのうち5個が?になっています。
他の数字や足し算の合計を参考に?を当ててください。
?は0~9までの数字です。
間違えると2秒止まります。
5個当てると自動的に次の面に進みます。
全部で10ステージです。
全部クリアするとクリアタイムが表示されます。

■操作
場所移動:
 ↑
← →
 ↓

数字選択:
Z X

決定:スペースキー

■変数
C ?を何個埋めたかのカウント
D 面作成時 合計数字
E クリア出来なくなっていないかのチェックフラグ
F Y*3
I FOR
J FOR
K INKEY
M 問題数-1
P 面作成時数字表示座標X
Q 面作成時数字表示座標Y
X X座標
Y Y座標
Z 数字選択X座標
[0]~[8] ?かどうかのフラグ 1:?
[9]~[17] 盤の数字

■プログラム
10 初期設定、画面作成
20-30 数字をランダムで作成、?5カ所をランダムで決定
40-50 解けない形になっていないかのチェック、解けない場合再作成、解ける場合は数字と?を表示
60 合計値計算、ステージ数表示
70-80 キー判定、カーソル移動
90 正解判定、NG処理
100 ステージクリア処理、全面クリア判定
110 70行からを繰り返す
120-130 合計値表示
140 全面クリア処理

  • 1
  • 2
  • 1
  • 2

SOURCE CODE

10 CLS:CLV:FORI=0TO16:FORJ=0TO16:LCJ,I:?CHR$((I*J<208)*(!(I%4)+!(J%4))*6):NEXT:NEXT:FORI=0TO8:LCI%3*4+4,I/3*4+2:?CHR$(43+18*(I%3=2)):LCI%3*4+2,I/3*4+4:?CHR$(43+18*(I>5)):NEXT:LC1,18:?"0123456789":CLT
20 @A:C=0:FORI=9TO17:[I]=RND(10):[I-9]=0:NEXT:FORI=0TO4
30 A=RND(9):IF[A]CONTELSE[A]=1:NEXT
40 E=0:FORI=0TO8STEP3:R=[I]&[(I+3)%9]:S=[I+1]&[(I+4)%9]:T=[I+2]&[(I+5)%9]:IFR+S+T=2E=1
50 NEXT:IFEGOTO@AELSEFORI=0TO8:LCI%3*4+2,I/3*4+2:IF[I]?"?"ELSE?[I+9]
60 NEXT:FORI=0TO2:P=14:Q=I*4+2:D=[I*3+9]+[I*3+10]+[I*3+11]:GSB@P:P=I*4+2:Q=14:D=[I+9]+[I+12]+[I+15]:GSB@P:NEXT:LC19,1:?"STAGE:";M+1
70 @B:LCX*4+2,Y*4+3:?CHR$(226):LCZ+1,19:?CHR$(226):K=INKEY():IF!KCONT
80 LCX*4+2,Y*4+3:?" ":LCZ+1,19:?" ":X=(X+(K=29)-(K=28)+3)%3:Y=(Y+(K=31)-(K=30)+3)%3:Z=(Z+(K=88||K=120)-(K=90||K=122)+10)%10
90 F=Y*3:IFK=32IF[X+F+9]=ZC=C+[X+F]:[X+F]=0:LCX*4+2,Y*4+2:?[X+F+9]ELSELC19,3:?"NG":WAIT120:LC19,3:?"  "
100 IFC=5LC19,3:?"OK":WAIT60:LC19,3:?"  ":M=M+1:IFM=10GOTO@EELSEGOTO@A
110 GOTO@B
120 @P:LCP,Q:?D;:IFD<10?" "
130 RTN
140 @E:?TICK()/60;"s CLEAR

COMMENT

Kidspod運営チーム
Kidspod運営チーム2023/01/13 19:03:03

うわー! サムクロスだ! 個人的に、とても懐かしいパズルです。まさかIchigoJamで作り上げるとは! 感激しました。問題の自動生成にタイムアタック……楽しい……。