如果数字的最右位数> = 5,则四舍五入为10的下一个倍数

时间:2019-05-25 10:24:44

标签: java

如果任何给定数字为负数或零,则返回-1。

如果给定数字中最右边的数字中的任何一个小于5,则将其值四舍五入为10的前一个倍数,否则,如果最右边的数字大于或等于5,则四舍五入为下一个10的倍数。

public static int sumOfRoundedValues(int n1, int n2, int n3) {
    int a = checkRound(n1);
    int b = checkRound(n2);
    int c = checkRound(n3);
    return a + b + c;
}

@SuppressWarnings("unused")
private static int checkRound(int n) {
    int a = n%10, b = n%10,c = n%10;
    if((a>=5) && (b>=5) && (c>=5) && (a<=10) && (b<=10) && (c<=10)) {
        if(a == 5 && b == 5 && c == 5) {
            n = n + 5;
        } else if(a == 6 && b == 6 && c == 6) {
            n = n + 6;
        } else if(a == 7 && b == 7 && c == 7) {
            n = n + 7;
        } else if(a == 8 && b == 8 && c == 8) {
            n = n + 8;
        } else if(a == 9 && b == 9 && c == 9) {
            n = n + 9;
        }
        return n;
    }
}

0 个答案:

没有答案