You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kotlin电话账单计算器问题:无法正确计算15%税费

电话账单计算器税费问题修正

问题所在

你代码里的税费计算逻辑错误:当前是把15/100=0.15直接加到费用里,这不是对小计收取15%税费,而是固定加0.15。正确逻辑应该是小计金额 × 1.15(或者 小计 + 小计×0.15),这样才是在小计基础上增收15%税费。

另外,修改原始输入变量numberOfCalls的值虽然不影响结果,但不够规范,建议用临时变量存储超出套餐的分钟数。

修正后的代码

import java.util.*

fun main(args: Array<String>) {
    val scan = Scanner(System.`in`)
    print("Enter the Total Minutes of Calls Made this Month: ")
    val totalMinutes = scan.nextInt()
    
    val baseFee = 10f
    val overMinuteRate = 0.25f
    val taxRate = 0.15f
    
    // 计算税前小计
    val subtotal = if (totalMinutes <= 60) {
        baseFee
    } else {
        val overMinutes = totalMinutes - 60
        baseFee + overMinutes * overMinuteRate
    }
    
    // 加上15%税费
    val phoneBill = subtotal * (1 + taxRate)
    println("\nTelephone Bill this Month = $phoneBill")
}

核心修改说明

  • 保留原始输入totalMinutes,用临时变量overMinutes存储超出套餐的分钟数,代码逻辑更清晰
  • 拆分计算步骤:先算出税前小计,再基于小计计算税费,逻辑更直观
  • 税费计算改为subtotal * (1 + taxRate),准确实现“对小计收取15%税费”的需求
  • 提取常量并命名,提升代码的可读性和后续维护性

内容的提问来源于stack exchange,提问作者Sonnalight

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 01:05:25