用Go實現過路口的問題

需求描述如下: 

過路口問題:

假設某人有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)
}

輸出結果如下:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章