アプリ版:「スタンプのみでお礼する」機能のリリースについて

Pythonです

コメントアウトしているforの中にq=1を入れると
11になることは理解できたのですが
forの中のq=1をコメントアウトしてforの外に
q=1とした場合に19となる理由が分かりません

過程を教えていただきたいです

「Pythonです コメントアウトしている」の質問画像

質問者からの補足コメント

  • forの中だと
    q が 2, 2, 4

    forの外だと
    q が 2, 4, 8 となります

    qが中と外でなぜ変わるのか教えて欲しいです

      補足日時:2022/05/27 23:55

A 回答 (4件)

i のループが回るたびに q を初期化してたのに


それをしなくしたんだから、q がどんどん変わってゆくのは
当たり前なんだけど・・・

このレベルだとどうやったら判らなくなるのか
わからないです。

あなたはどのようになると考えているのでしょう?
そこを聞きたい。
    • good
    • 0

> 補足しました


> 試しましたが理由がわかりません

「1行ずつ」やってください。
ついでに、手を動かて。
    • good
    • 0

> qが中と外でなぜ変わるのか教えて欲しいです



そう考えるから間違うんです。
for i in range(n+1):
 q = 1

の部分でqが再定義されてる、ってのが正解です。
そこに q = 1が置かれてない場合、qの値がq = q * xから継続して使われている、ってのが違うだけ、です。
    • good
    • 0

q の値がどう変化しているか、1行ずつ確認すればわかります。

    • good
    • 0
この回答へのお礼

補足しました
試しましたが理由がわかりません

お礼日時:2022/05/27 23:56

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!