需求描述如下:
過路口問題:
假設某人有100,000現金。每經過一次路口需要進行一次交費。交費規則爲當他現金大於50,000時每次需要交5%如果現金小於等於50,000時每次交1,000。請寫一程序計算此人可以經過多少次這個路口?
代碼實現如下:
// 過路口問題:
// 假設某人有100,000現金。每經過一次路口需要進行一次交費。
// 交費規則爲當他現金大於50,000時每次需要交5%如果現金小於等於50,000時每次交1,000。
// 請寫一程序計算此人可以經過多少次這個路口。
func countCross() {
var countGreat int
var countLess int
var count int
var TotalCash float64 = 100000
var greatCash float64
var lessCash float64
for greatCash = TotalCash; greatCash > 50000; greatCash -= greatCash * 0.05 {
countGreat++
}
for lessCash = greatCash; lessCash < 50000; lessCash -= 1000 {
countLess++
if lessCash < 1000 {
break
}
}
count = countGreat + countLess
fmt.Println("countGreat=", countGreat)
fmt.Println("countLess=", countLess)
fmt.Printf("這個人可以經過%v次路口,他還剩下%v塊錢\n", count, lessCash)
}
輸出結果如下: