我试图对两个变量进行除法,但是当我想打印结果时,程序打印出 0te 程序正确打印了 LeadTime 和 endAmount,但 MonthAmount 打印为 0。此外,如果我删除 endAmount 和 LeadTime 周围的 float64(),它将打印为 0var leadTime intif currentAge < 45 {    leadTime  = 120} else if currentAge > 45 && currentAge < 55 {    leadTime = 90} else if currentAge > 55 {    leadTime = 60}endAmount, _ := strconv.Atoi(amountAsString)monthlyAmount:= (float64(endAmount) / float64(leadTime)fmt.Println("leadTime :", leadTime )fmt.Println("Total amount:", endAmount)fmt.Println("monthlyAmount:", monthlyAmount)使用我正在测试的标准输入,leadTime = 120 和 endAmount = 93735.00 所以每月金额应该是:781.13
                    
                    
                1 回答
                            慕侠2389804
                            
                                
                            
                        
                        
                                                
                    TA贡献1719条经验 获得超6个赞
问题是你试图将浮动字符串转换为 int
endAmount, _ := strconv.Atoi(amountAsString)
这会给出一个错误,但你只是忽略了它。用于strconv.ParseFloat(amountAsString, 64)解决您的问题。
- 1 回答
 - 0 关注
 - 177 浏览
 
添加回答
举报
0/150
	提交
		取消
	