基于Go語言實(shí)現(xiàn)分金幣游戲
問題
你有50枚金幣,需要分配給以下幾個人:Matthew,Sarah,Augustus,Heidi,Emilie,Peter,Giana,Adriano,Aaron,Elizabeth。
分配規(guī)則如下:
a. 名字中每包含'e'或'E'分1枚金幣
b. 名字中每包含'i'或'I'分2枚金幣
c. 名字中每包含'o'或'O'分3枚金幣
d: 名字中每包含'u'或'U'分4枚金幣
寫一個程序,計(jì)算每個用戶分到多少金幣,以及最后剩余多少金幣?
程序結(jié)構(gòu)如下,請實(shí)現(xiàn) ‘dispatchCoin’ 函數(shù)
代碼實(shí)現(xiàn)
package main import ( "fmt" "strings" ) var ( coins = 50 users = []string{ "Matthew", "Sarah", "Augustus", "Heidi", "Emilie", "Peter", "Giana", "Adriano", "Aaron", "Elizabeth", } distribution = make(map[string]int, len(users)) ) // strings.ContainsAny 判斷字符串s是否包含字符串chars中的任一字符 func dispatchCoin() int { for _, i := range users { if strings.ContainsAny(i, "e & E") { distribution[i]++ } if strings.ContainsAny(i, "i & I") { distribution[i] += 2 } if strings.ContainsAny(i, "o & O") { distribution[i] += 3 } if strings.ContainsAny(i, "u & U") { distribution[i] += 4 } coins -= distribution[i] } return coins } func main() { left := dispatchCoin() for _, i := range users { fmt.Println(i, distribution[i]) } fmt.Println("剩下:", left) }
運(yùn)行效果
D:\Software\godata\src\1201>go run main.go
Matthew 1
Sarah 0
Augustus 4
Heidi 3
Emilie 3
Peter 1
Giana 2
Adriano 5
Aaron 3
Elizabeth 3
剩下: 25
到此這篇關(guān)于基于Go語言實(shí)現(xiàn)分金幣游戲的文章就介紹到這了,更多相關(guān)Go分金幣游戲內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Golang如何實(shí)現(xiàn)任意進(jìn)制轉(zhuǎn)換的方法示例
進(jìn)制轉(zhuǎn)換是人們利用符號來計(jì)數(shù)的方法,進(jìn)制轉(zhuǎn)換由一組數(shù)碼符號和兩個基本因素“基數(shù)”與“位權(quán)”構(gòu)成,這篇文章主要給大家介紹了關(guān)于Golang如何實(shí)現(xiàn)10進(jìn)制轉(zhuǎn)換62進(jìn)制的方法,文中給出了詳細(xì)的示例代碼供大家參考學(xué)習(xí)學(xué)習(xí),下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2017-09-09Go語言循環(huán)遍歷含有中文的字符串的方法小結(jié)
這篇文章主要介紹了Go語言循環(huán)遍歷含有中文的字符串的幾種方法,文章通過代碼示例講解的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴跟著小編一起來看看吧2023-07-07用go寫的五子棋預(yù)測算法的實(shí)現(xiàn)
這篇文章主要介紹了用go寫的五子棋預(yù)測算法的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12Golang連接并操作PostgreSQL數(shù)據(jù)庫基本操作
PostgreSQL是常見的免費(fèi)的大型關(guān)系型數(shù)據(jù)庫,具有豐富的數(shù)據(jù)類型,也是軟件項(xiàng)目常用的數(shù)據(jù)庫之一,下面這篇文章主要給大家介紹了關(guān)于Golang連接并操作PostgreSQL數(shù)據(jù)庫基本操作的相關(guān)資料,需要的朋友可以參考下2022-09-09golang實(shí)現(xiàn)對docker容器心跳監(jiān)控功能
這篇文章主要介紹了golang實(shí)現(xiàn)對docker容器心跳監(jiān)控功能,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2019-09-09