HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2010
0323
荒河軒持IF文の判定3解決


荒河軒持

リンク

2010/3/23(Tue) 04:42:16|NO.31486

以下のサンプルの動作は仕様とバグのどちらでしょうか。
さりげなく書き辛くて困ってます。

mes "&あり" repeat 20 if 6<=cnt & cnt<=15{ mes "O "+cnt }else:mes "X "+cnt loop pos 60,0 mes "&なし" repeat 20 if 6<=cnt<=15{ mes "O "+cnt }else:mes "X "+cnt loop



この記事に返信する


荒河軒持

リンク

2010/3/23(Tue) 04:48:38|NO.31487

・補足
当環境では&ありは目的の範囲のみif文が作動し、&なしの方が条件関係なく全部反応してしまいます。



test

リンク

2010/3/23(Tue) 09:33:04|NO.31488

仕様です。
6<=cnt<=15
は、左から順番に処理されるので、まず
6<=cnt
の式ですが、
repeat 20
	mes 6<=cnt
loop
で分かるように、正しければ1、正しくなければ0という仕様になっています。 従って、
6<=cnt<=15
は、
0<=15
1<=15
にしかならず、結果かならず全部反応してしまいます。
そのようなことをするには、上のサンプルのように&を使いましょう。



荒河軒持

リンク

2010/3/23(Tue) 10:18:39|NO.31489

どうもありがとうございました



ONION software Copyright 1997-2021(c) All rights reserved.