Go语言实现数字串运算符修改及计算
package main
import ( "fmt" "strconv" "strings" )
func main() { var n, m int fmt.Scan(&n)
nums := make([]int, n)
for i := 0; i < n; i++ {
fmt.Scan(&nums[i])
}
fmt.Scan(&m)
operations := make([]string, m)
for i := 0; i < m; i++ {
fmt.Scan(&operations[i])
}
for i := 0; i < m; i++ {
index, _ := strconv.Atoi(operations[i*2])
operator := operations[i*2+1]
nums[index-1] = calculate(nums[index-1], nums[index], operator)
}
result := nums[0]
for i := 1; i < n; i++ {
result = calculate(result, nums[i], '+')
}
fmt.Println(result)
}
func calculate(a, b int, operator string) int { switch operator { case '+': return a + b case '-': return a - b case '*': return a * b case '/': return a / b default: return 0 } }
原文地址: https://www.cveoy.top/t/topic/mAUX 著作权归作者所有。请勿转载和采集!