-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 に答える