Question:
以下を実行すると(21,0)の位置に0だけが表示されます。
int x
for x=0 to 20://63
locate(x,0):print (x mod 10);
next
Answer:
おかしいような気がするかもしれませんが、これは正常です。
X-BASICで正の数値の表示は
スペース+数値+スペース
となります。(x mode 10)は1桁数字になるので、
_0_
_1_
_2_
という具合に表示されていくので、最終的に残るのはlocate(20,0)からに_0_と表示される分だけです。
これをちゃんと各桁に1桁数字を表示したいなら、
print str$(x mod 10);
とします。
この動作はX-BASIC/68でも同じです。
ただし、V3.1までのX-BASIC for iOSではバグのためこれでも表示が出ません。
困ったもんだ。V3.4で修正されます。
0 件のコメント:
コメントを投稿