| | |
| | | } |
| | | |
| | | public static void main(String[] args) { |
| | | BigDecimal amountTCAll = new BigDecimal(900); |
| | | BigDecimal amountTCBasicAmount = new BigDecimal(1000); |
| | | //购买套餐按照1000的基数去补贴,如5000,则补贴5次1000 |
| | | BigDecimal bigDecimal = amountTCAll.divideToIntegralValue(amountTCBasicAmount); |
| | | System.out.println(bigDecimal); |
| | | BigDecimal total = new BigDecimal(10000000); |
| | | |
| | | BigDecimal amountTotal = BigDecimal.ZERO; |
| | | BigDecimal scoreTotal = BigDecimal.ZERO; |
| | | |
| | | BigDecimal amountBasic = new BigDecimal(1000); |
| | | BigDecimal price = new BigDecimal(0.01); |
| | | |
| | | BigDecimal amountPercent = new BigDecimal(0.5); |
| | | BigDecimal scorePercent = new BigDecimal(0.35); |
| | | int times = total.divideToIntegralValue(amountBasic).intValue(); |
| | | |
| | | System.out.println("循环次数:"+times); |
| | | for(int i = 0; i < times; i++){ |
| | | BigDecimal amount = amountBasic.multiply(amountPercent); |
| | | amountTotal = amountTotal.add(amount); |
| | | |
| | | BigDecimal score = amountBasic.multiply(scorePercent).divide(price, 2 ,BigDecimal.ROUND_DOWN); |
| | | scoreTotal = scoreTotal.add(score); |
| | | price = amountTotal.divide(scoreTotal, 7 ,BigDecimal.ROUND_DOWN); |
| | | |
| | | System.out.println("现金池:"+amountTotal+",积分池:"+scoreTotal+",增长现金:"+amount+"增长积分:"+score+",价格:"+price); |
| | | } |
| | | } |
| | | } |