2014-09-21 45 views
0

對不起,如果標題含糊不清,並且這不屬於這裏(因爲它更像是一個數學問題),但我有一個問題。如何使數字回到最大值

在這裏,我有一個算法,即增加了一些至另一號碼(例如,電流+ =步驟),並且如果該數目大於所述最大值時,所述的步驟的其餘部分被添加到最小:

int current = 89; 
int step = 4; 
final int max = 90; 
final int min = 29; 

current += step; 
if(current > max) current %= max; 
System.out.println(current + min); // this will give 32 

我的問題是,我該如何做倒退,以便如果數量小於最小值,則剩餘部分將從最大值中移除。我嘗試了一些不同的東西,但沒有一個似乎起作用。

謝謝!

+0

請提供輸入VS預期值的一些例子。 – dognose 2014-09-21 20:42:01

回答

2

您可以使用此代碼片段:

int current = 30; 
int step = 4; 
current -= step; 
if (current < this.min) { 
    current = this.min - current; 
} 
System.out.println(this.max - current); // this will give 87 
+0

是的,這正是我所需要的。謝謝! – 2014-09-21 20:52:00

相關問題