2017-09-27 4 views
0
while x > 0: 
    print (str(x) + "green bottles hanging on the wall") 
    print (str(x) + "green bottles hanging on the wall") 
    print ("if one green bottle accidently falls") 

これは私のコードですが、動作しません。何か助けてもらえますか?緑のボトル10曲を作る

+1

正確にはどのような問題がありますか?エラーが発生していますか?間違った出力? – Mureinik

+0

'while x> 0'ですが、' x'は決して変更されません。なぜループが終了するのですか? – CoryKramer

答えて

2
x = 10 
while x > 0: 
    print (str(x) + "green bottles hanging on the wall") 
    print (str(x) + "green bottles hanging on the wall") 
    print ("if one green bottle accidently falls") 
    x = x - 1 
    print ("there will be " + str (x) + "hanging on the wall") 

コードに追加してください。 'Whileループ'は、xが0より大きい間、プログラムがソングをループするようにします。ソングは合計x = x - 1を行い、新しい 'x'を変数として出力します。

+0

また、 "緑"と "ぶら下げる"単語の前に余分なスペースを追加する必要があります。 –

0

あなたのwhileブロックは、条件が満たされていないために終了しません(xが正しく初期化されていないと、満たされません)。このような用途では、whileではなく、forループを使用して、コードが終了することを確認することをお勧めします。例えば

​​

range機能はダウンカウント、10から1にリスト状オブジェクトを作成します。 forループはすべての要素を繰り返し処理し、終了すると終了します。