用java Biddecal 实现=IFERROR((Z4/AD4-1)/90.1+(AA4/AD4-1)/90.2+(AB4/AD4-1)/90.2+(AC4/AD4-1)/90.5,"——")
时间: 2023-11-12 22:09:15 浏览: 86
您可以使用以下代码实现:
```java
import java.math.BigDecimal;
public class Main {
public static void main(String[] args) {
BigDecimal z = new BigDecimal("100");
BigDecimal ad = new BigDecimal("200");
BigDecimal aa = new BigDecimal("300");
BigDecimal ab = new BigDecimal("400");
BigDecimal ac = new BigDecimal("500");
BigDecimal result = BigDecimal.ZERO;
try {
BigDecimal part1 = z.divide(ad, 10, BigDecimal.ROUND_HALF_UP).subtract(BigDecimal.ONE).divide(new BigDecimal("90.1"), 10, BigDecimal.ROUND_HALF_UP);
BigDecimal part2 = aa.divide(ad, 10, BigDecimal.ROUND_HALF_UP).subtract(BigDecimal.ONE).divide(new BigDecimal("90.2"), 10, BigDecimal.ROUND_HALF_UP);
BigDecimal part3 = ab.divide(ad, 10, BigDecimal.ROUND_HALF_UP).subtract(BigDecimal.ONE).divide(new BigDecimal("90.2"), 10, BigDecimal.ROUND_HALF_UP);
BigDecimal part4 = ac.divide(ad, 10, BigDecimal.ROUND_HALF_UP).subtract(BigDecimal.ONE).divide(new BigDecimal("90.5"), 10, BigDecimal.ROUND_HALF_UP);
result = part1.add(part2).add(part3).add(part4);
} catch (ArithmeticException e) {
result = new BigDecimal("0");
}
String output = "——";
if (result.compareTo(BigDecimal.ZERO) != 0) {
output = result.toString();
}
System.out.println(output);
}
}
```
其中,您需要将`z`、`ad`、`aa`、`ab`和`ac`分别替换为您需要计算的数值。程序会输出计算结果,如果计算过程出现除以0的情况,结果会被设置为0。如果结果为0,则输出"——"。
阅读全文