投稿
FOG fogpanman
IFの勝手がわかったようなわかんなかったようなところで新たなる刺客WHILEにぶち当たって面食らってるなうです。なんか、プログラミングできる人って、英語も得意そう。
5そうだね
プレイ済み
返信[1]
親投稿
bigslope bigslope
WHILEは、直訳すれば「~の間」という意味で、ある条件が成立している間だけ、何回でも処理を繰り返し続けたいという時に便利な命令です。 例えば、FOR文の場合、 FOR I=1 TO 10 INPUT A PRINT A*2 NEXT I …と、10回処理を繰り返した時点で、必ず終了してしまいますが、WHILE文を使うと、 WHILE A!=999 INPUT A PRINT A*2 WEND こうすると、INPUT文で999が入力されていない限り、処理が回り続ける事になり、999を入れた時点で、ループから抜けて終了します。
3そうだね
プレイ済み
返信[2]
親投稿
いもいも imoimo0122
英語、苦手です・・・
0そうだね
プレイ済み
返信[3]
親投稿
よっぱらい yopparai1965
慣れたら、どうってことないです。 英語が得意になるには、もっと凄い量を覚えないといけませんから...
0そうだね
プレイ済み
返信[4]
親投稿
FOG fogpanman
繰り返し命令なんてFORで事足りるだろと思ってたけど、そういうわけでもないんですね。 英語より数学かな…
0そうだね
プレイ済み
返信[5]
親投稿
KU kerorinU
WHILE~WENDのほかにもREPEAT~UNTILというループ命令があります。これは条件が成立しないときにループを続け、条件が成立するとループを抜け出します。また、条件判定はループの最後にするので、UNTILまでの命令は必ず1回は実行することになります。 REPEAT INPUT A UNTIL A==999 これは999が入力されたら抜け出し、それ以外は回し続けるループです。
0そうだね
プレイ済み
返信[6]
親投稿
FOG fogpanman
うひい、似たような命令が三つもあるんですね。FOR TOは「~から~まで」、WHILEは「~の間に」、REPEAT UNTILは「~まで繰り返す」…なるほど日本語に直すと確かに似ている
1そうだね
プレイ済み
返信[7]
親投稿
bigslope bigslope
WHILE~WENDは、条件の判定がループの一番最初(WHILE)の所で行われるという性質があるので、場合によっては、一度もループ内の処理が行われないまま抜けてしまう事もあります。 A=999 '←これを追加 WHILE A!=999 INPUT A PRINT A*2 WEND こうすると、最初のWHILE文の所で、Aに999が入っているので、そのままループを抜けて、WENDの下に行ってしまいます。 これを逆手に取って、例えば『入力した数字が適切でない(エラー)場合は、処理を行わずに終了させたい』というような時、Aに999を入れて、そのまま抜けさせてしまうという裏技として使えます。
0そうだね
プレイ済み