我怎么弄清楚有多少次我需要添加一个空头来获得另一个空头的价值?

时间:2013-08-02 18:14:43

标签: java math

如何确定必须添加一个空头以获得另一个空头的价值的次数?

我知道,我知道,这是一个奇怪的措辞问题。但是在更具体的情况下没有所有原始类型的Java ......

基本上,我有short x,我们将使用占位符7。我还有一个short y,我要说的是数字5。然后,我有short z,我会说236

现在,我想要做的是获得一个integer,它计算我必须将数字y (5)添加到数字x (7)的次数,以达到最大值{ z (236)

显然,我现在可以用铅笔和纸做一些,但我需要的是能输入3个值的东西,它会给我integer作为输出 - < em>我必须将值y添加到数字x以获得z的最大值的次数。

如果你仍然不明白我在做什么,那么更直观的例子是:

(Y * someint) + X = Z我如何进入someint

4 个答案:

答案 0 :(得分:7)

int result = (z - x) / y;

结果是int,即使除法具有在这种情况下被忽略的余数。

答案 1 :(得分:1)

正如其他人所说,这是简单的划分。但是,如果你正在寻找其他完全不必要的方法来实现这一点,那就是循环方式......

public static int getNumOfAdds(short x, short y, short target){
    int i;
    for(i = 0; y*i + x  < target; i++){}
    return i;
}

答案 2 :(得分:0)

val = (Z-X)/Y;
rem_val = (Z-X)%Y;

if (rem_val != 0)
  val++;

这应该这样做。

答案 3 :(得分:0)

递归?

尝试类似

的内容
Func(short x , short y, short z, int c) 
if ( x >= z )
return c
else
return Func(x+y,y,z,c)

你的第一个电话是Func(x,y,z,0)