ここから本文です

Unity C#を学んでいる初心者です。Unity入門書での構文の理解がイマイチですので教...

mic********さん

2019/3/719:01:14

Unity C#を学んでいる初心者です。Unity入門書での構文の理解がイマイチですので教えて頂きたいですm(*_ _)m

int num = 8;
bool flag = true;
for (int i = 2 ; I <= (nun / 2) ; i++){
if (nun % i ==0){
flg = false;
break;
}
}
string s = "「" + num +"」は、素数";
if (flg){
s +="です!";
}else {
s +="じゃないよ。";
}
text.text = s ;
}

言わずもがな、こちらは変数numの値が素数かチェックして結果を表示する物です。

forの真下ifの実行がイマイチ理解出来ていません。このifはforの構文でfalseに実行されるのでしょうか?そしてifの条件はforの構文を抜けた時点の値で計算するのでしょうか?

どなたか教えてくださいm(*_ _)m宜しくお願い致します。

閲覧数:
32
回答数:
1

違反報告

ベストアンサーに選ばれた回答

プロフィール画像

カテゴリマスター

tre********さん

2019/3/719:33:13

>forの真下ifの実行がイマイチ理解出来ていません。
>このifはforの構文でfalseに実行されるのでしょうか?

numが素数でない場合にflagにfalseがセットされます。

どのような順番でプログラムが実行されるかは、ステップ実行してみると理解が深まると思います。


>そしてifの条件はforの構文を抜けた時点の値で計算するのでしょうか?

forを抜けた後にあるif (flg){ の事ならそうです。

基本的に1文ずつ順番に実行されるので、処理がif (flg){に来た時点の変数の値を用いて条件分岐します。

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

質問した人からのコメント

2019/3/9 08:51:29

とても丁寧に有難うございますm(*_ _)mベストアンサーに選ばせて頂きます。

あわせて知りたい

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる