给你一个整数 n,请你帮忙计算并返回该整数「各位数字之积」与「各位数字之和」的差。
方法一(转化为字符串然后取各个位数的值)
package Algorithm;
public class subtractProductAndSum {
public int subtractProductAndSum(int n) {
String sn = String.valueOf(n);
int multiplication = 1;
int addition = 0;
int j = 0;
for (int i = 0; i < sn.length(); i++){
j = Integer.parseInt(String.valueOf(sn.charAt(i)));
multiplication *= j;
addition += j;
}
return multiplication - addition;
}
}
方法二(不断取余)
package Algorithm;
public class subtractProductAndSum2 {
public int subtractProductAndSum(int n) {
int add = 0;
int mul = 1;
while (n > 0){
int digit = n % 10;
add += digit;
mul *= digit;
n = n / 10;
}
return mul - add;
}
}