トピック
だにえる haru2016nen

ボタン判定のif(応用?)

上下左右に反応するプログラムで、 「上(下左右)」を押したときに TRUEになり、 「斜方向」ではFALESになる ただし、XやYが押されていても 影響しない ようなIF文ってどうなります? 出来るだけ短いのをお願いします。
2そうだね
プレイ済み
返信[1]
親投稿
ΖΕΧ ZEX256
自分で考えましたか? REPEAT WAIT B=BUTTON()AND 15 ?B==1||B==2||B==4||B==8 UNTIL 0
0そうだね
プレイ済み
返信[2]
親投稿
だにえる haru2016nen
そんな方法もあるんですねー UNTIL 0 っていつでも成立するってことかな? でも僕がしたいのは 表示ではなく IFの真偽です
0そうだね
プレイ済み
返信[3]
親投稿
だにえる haru2016nen
「上下左右に反応するプログラム」 ってのがいけなかったですか、、、
0そうだね
プレイ済み
返信[4]
親投稿
ΖΕΧ ZEX256
IFに入れればいいよ
0そうだね
プレイ済み
返信[5]
親投稿
ΖΕΧ ZEX256
一言、言っておくが 君が理解するために教えてるんであって 君の代わりにコーディングしてあげる気はない
1そうだね
プレイ済み
返信[6]
親投稿
だにえる haru2016nen
まあ、こんな感じのが 出来ました とりあえず、ありがとです
0そうだね
プレイ済み
返信[7]
親投稿
Oskar oskar_liebig
二進数って知っている?
0そうだね
プレイ済み
返信[8]
親投稿
だにえる haru2016nen
一応、分かってます ANDとかORとかがまだ不十分かな 今度、 5進数がカクカクシカジカ(秘密) なプログラムを公開するつもりです!
0そうだね
プレイ済み
返信[9]
親投稿
だにえる haru2016nen
あぁ なるほど 15「1111」を掛けてるから そのケタのボタンしか反応しなくなる のか、な?
0そうだね
プレイ済み
返信[10]
親投稿
ANDはマスクと言って指定したbit部分だけを取り出すときによく使います。ORは逆に合成と言って指定したbitを立てる(1にする)ときによく使います。 なので15でANDすることでその部分だけを取り出して判定に利用しているので、他のbit(ボタン)の状態(ON/OFF)に関係なくその部分(15はちょうど十字ボタン)だけで処理できるってイメージですね。
0そうだね
プレイ済み
返信[11]
親投稿
☆Tatsukin★ tatu_kin1192
B=BUTTON() IF B>=1&&B<=8 THEN A=TRUE
0そうだね
プレイ済み
返信[12]
親投稿
☆Tatsukin★ tatu_kin1192
すみません、間違えました。 WHILE 1 B=BUTTON() IF B AND 1¦¦B AND 2¦¦B AND 4¦¦B AND 8 THEN A=TRUE WEND でいけると思います。
0そうだね
プレイ済み
返信[13]
親投稿
だにえる haru2016nen
皆さんありがとうございます (これとは別のプログラム) 好きな数字を心の中で決め、 その数字に対する質問に答えることで 決めた数字を当てる ってプログラムを公開したいんですが 既にこんなプログラム 公開されてたでしょうか? キーの取得は「二次利用可能な~」 からですか?
1そうだね
プレイ済み
返信[14]
親投稿
アップロードしてから「二次利用~」で上げたもの中から公開したいものをファイルを選ぶ
0そうだね
プレイ済み
返信[15]
親投稿
Oskar oskar_liebig
たぶん、そのプログラム、まさにn進数様々なのではないのかな~、と勝手に妄想してみる。
0そうだね
プレイ済み
返信[16]
親投稿
だにえる haru2016nen
もうすぐ投稿!
0そうだね
プレイ済み
返信[17]
親投稿
Oskar oskar_liebig
元の話で、IF文を出来るだけ短く、っていうことでいうと、前の質問の回答にもあった「0以外なら真」ということを使えば……
1そうだね
プレイ済み