2013-05-16 26 views
-2

嗨餘我使用不同的書籍和在線解決方案,目前正在自學C#中,有一個鍛鍊,我真的不能避開我的頭。我不得不用C#中的另一個數字使用迭代和減法來分割數字,但其餘部分必須顯示在最後。我發現我可以使用while循環來保持一個數字除以另一個數字(可以說是400/18),但是如何從int數字最後顯示小數點是我無法得到我的頭部的部分。 任何幫助將大大appriciated :)劃分一個號碼,顯示在C#

+0

請將您的代碼的當前站點 –

+0

除以兩個數字涉及迭代,您需要顯示您截止的代碼截至目前問題模糊 – V4Vendetta

回答

-1

,如果你需要,其餘的容易和正確的方法是

int reminder = 400%18; 

,如果你要使用一個循環,你必須:

  1. 檢查數字小於除數或無論它叫什麼

2a.if是退出循環並顯示數字

2b如果不從數字中除去除數並繼續下一次迭代

+0

[%(Modulo)Operator](http:// msdn .microsoft.com/en-us/library/0w4e0fzs.aspx) – tnw

+0

OPs任務是使用interation和subtraction來做到這一點。 – KingCronus

+0

以及我對此的解釋是太... –

2

那麼讓我們來考慮一下C#語言以外的問題。因爲這實際上只是一個數學問題需要解決。

如果你有18分之400,你要使用迭代減法,你正在做的是說:「我有多少時間可以減去400 18?」吧?

所以那將是這個樣子:

remainder = 400 
value = 18 
while (remainder > value) 
    remainder = remainder - value 

一旦你退出,雖然環,你有你的其餘部分。

你可以使用模運算符「%」來解決這個一步到位,但根據你寫的東西,這是你會做什麼。

的你有剩餘可以表示爲這樣:

double theDecimalValue = (double)remainder/value; 

假設你處理整數,你只投剩餘價值,以避免截斷整數除法將要發生,否則。

+0

還可以添加一個計數器來找到結果過於:)+ 1 – Sayse

+0

啊,所以我的唯一真正的問題是事實,我沒有投的整理變量作爲雙以便它會顯示其餘的!感謝你這是非常appriciated,比我想象的更簡單:) – user2311703