2017-10-16 2 views
0

私は の2つの質問があります1)forループでnの初期値をどのように繰り返すことができますか?この初期値nが最初に印刷されるようにする方法n) 2)どのように私は...、P 3から2に値1からprint文の変更に{P}させることができますPython:印刷文の値を変更する

コードPythonで:

p = int(input("Input a number: ")) 
n = int(input("Input a number: ")) 

for i in range(p): 

    s = n%p 
    v = n - s 
    k = (v//p) - s 
    n = k*(p-1) 

    s = 'no' if s == 0 else str(s) 
    nuts = 'nut' if s == 1 else 'nuts' 

    print(f'{n} nuts = {k} nuts for cows#{p} and {s} {nuts} for the snake') 
+0

、それはS == 1の場合は、コードが読みやすく、したがって、 – 0TTT0

答えて

0

印刷nその値が変更される前に。

p = int(input("Input a number: ")) 
n = int(input("Input a number: ")) 

for i in range(p): 

    s = n % p 
    v = n - s 
    k = v // p - s 

    s = 'no' if s == 0 else str(s) 
    nuts = 'nut' if s == 1 else 'nuts' 

    print(f'{n} nuts = {k} nuts for cows#{p+1} and {s} {nuts} for the snake') 

    n = k*(p-1) 
+0

を修正することが容易になります私はprintのステートメントでナットの代わりにナッツを持っています。私のコードで何が間違っているのかわかりません – user8703504

+0

あなたのコードに何が間違っているのかを言うのは難しいです。あなたの変数名はその目的について何も言わない。あなたはコメントがありません。 – warvariuc

+0

すべてはコードで問題ありません。私は代入の前に可変ナットを使用していますが、これは間違っています。 s == 1の場合、彼は 'ナット'を表示しませんが、正しくない 'ナット'を表示します。どのように調整できますか? – user8703504

0

P = INT(入力( "入力数: ")) N = INT(入力(" 入力数:"))

をIために印刷時p1を追加範囲(1、P + 1):単一の文字変数とは対照的に、あなたのコードに実際の変数名を使用する必要があります

s = n%p 
v = n - s 
k = (v//p) 

if s == 0: 
    print(f'{n} nuts = {k} nuts for cow#{i} and no nuts for the snake') 

if s == 1: 
    print(f'{n} nuts = {k} nuts for cow#{i} and 1 nut for the snake') 

if s > 1: 
    print(f'{n} nuts = {k} nuts for cow#{i} and {s} nuts for the snake') 


n = k*(p-1)