-7

有一个名为 absolute() 的方法,它接受一个整数参数并返回其绝对值。正整数 x 的绝对值为 x。负整数 –x 的绝对值也是 x。即该函数应将负数转换为正数,但保持正数不变。我的代码:

int absolute(int x) {
    boolean y=true;
    if(y==false) return x;
    else return x;  
}

在输出中我得到一个错误(负数),但在任何时候它都应该是正数......

4

3 回答 3

3

你应该做:

int absolute(int x) {
    if(x < 0) return -x;
    else return x;  
}
于 2013-10-21T21:59:27.150 回答
1

您在该功能中没有做任何事情。您只是返回您发送的值。在您的情况下,y 始终为 true,因此它将返回 x。即使它不是真的,它也会返回 x。你应该重新考虑你的功能。

于 2013-10-21T22:00:22.127 回答
0

您可以使用<-Operator 来确定一个数字是否小于零(因此您必须将其乘以-1......只是一个想法。

于 2013-10-21T21:59:50.453 回答