2016-08-04 33 views
-2

編寫一個程序來打印商和餘數,但是在任何地方都可以將quotientProblem函數改爲一個名爲quotientString的函數,它只返回字符串而不是直接打印字符串。具有主函數將每次調用的結果打印到quotientString函數。在商和剩餘的輸出中顯示'None'

def value(): 
    a=int(input("Enter a number: ")) 
    b=int(input("Enter next number: ")) 
    z=print("When",a,"is divided by",b,"the remainder is",a%b,"and the quotient is",a//b,".") 
    print (division(a,b,z)) 
def division(x,y,z): 
    return z 
value() 

當我執行

>>>Enter a number: 5 
>>>Enter next number: 3 
When 5 is divided by 3 the remainder is 2 and the quotient is 1 . 
None 

這裏None持續顯示。

回答

0

您將print的結果指定給zprint沒有具體的回報,這意味着它返回None。然後您的division功能打印。請勿使用print的返回值。我不知道你期望它做什麼,但初始化z任何有用的東西都不是可能的結果。

+0

5除以3時餘數爲2,商爲1。我希望這個顯示。 –

0

你預計會發生什麼? division是一個接受三個參數並返回最後一個的函數。所以division(a, b, z)返回z。什麼是z?這是print的返回值。 print函數返回None。所以division(a, b, z)None。因此,您的print(division(a,b,z))行打印None

+0

做什麼更好?我只想顯示這個,「當5除以3時,餘數爲2,商數爲1。」 –

+0

只需保留: 'print(「當」,a「被除以」,b「時,餘數爲」,a%b「,商爲」,a // b,「。」) ' 刪除'z =',並刪除'print(除(a,b,z))'。 –

+0

退貨如何?我必須使用它嗎?爲了完全消除z,我不能使用它。但我的範圍是使用return來顯示輸出。我該怎麼做? –