HOME»基本情報技術者試験掲示板»繰り返し処理について質問
投稿する

繰り返し処理について質問 [5055]

 ピーター一ノ瀬さん(No.1) 
プログラム1
int a=0,b=0,c=0
do 
a=a+1
b=b+1
c=c+1
while(b<=3)
return a,b,c
プログラム2
int a=0,b=0,c=0
while(b<=3)
a=a+1
b=b+1
c=c+1
endwhile
return a,b,c
これらのプログラムについて、
プログラム1,2の出力はともに 3,3,3  でよいでしょうか?
(聞きたいのは、while文、do while文はwhileの()内の条件をwhileもしくはdo while内の途中の処理の中で満たしても、while文ならendwhileまで、do while文ならwhile()の直前の処理まで、while文、do while文内の処理は行われるかどうかです。)プログラムが変かもしれませんが、よろしくお願いいたします。
2023.09.04 15:35
 ピーター一ノ瀬さん(No.2) 
「プログラム1,2の出力はともに 3,3,3  でよいでしょうか?」
→「プログラム1,2の出力はともに 4,4,4  でよいでしょうか?」とさせてください。よろしくお願いいたします。
2023.09.04 15:42
まーぼさん(No.3) 
FE シルバーマイスター
>プログラム1,2の出力はともに 4,4,4  でよいでしょうか?

はい、合っています。

>聞きたいのは、while文、do while文はwhileの()内の条件をwhileもしくはdo while内の途中の処理の中で満たしても、while文ならendwhileまで、do while文ならwhile()の直前の処理まで、while文、do while文内の処理は行われるかどうかです。

これは
a=4
b=4と代入していくと途中でwhileの条件式を満たさなくなるからc=4が実行されないのではないか?ということでしょうか。

結論から言うとそれはないです。プログラムの基本は「上から下に順に実行」です。b=b+1を実行したら次は次の行のc=c+1です。
2023.09.04 15:50
 ピーター一ノ瀬さん(No.4) 
すみません。「()内の条件をwhileもしくはdo while内の途中の処理の中で満たしても」→「()内の条件をwhileもしくはdo while内の途中の処理の中で満たさなくなっても」でした。知りたかったことが知れました。ありがとうございます!
2023.09.04 16:55
 ピーター一ノ瀬さん(No.5) 
a=4
b=4と代入していくと途中でwhileの条件式を満たさなくなるからc=4が実行されないのではないか?ということでしょうか。

>です
2023.09.04 16:56
返信投稿用フォームスパム防止のためにスレッド作成日から30日経過したスレッドへの投稿はできません。
© 2010-2024 基本情報技術者試験ドットコム All Rights Reserved.

Pagetop