में द्विआधारी संख्या का प्रतिनिधित्व करती है, मैंने इसके लिए एक बेवकूफ समाधान लिखा है, कोई बेहतर नुस्खा? जैसा कि आप वहां बहुत सारे बेकार रूपांतरण देख सकते हैं।जाओ - स्ट्रिंग कन्वर्ट करें जो int
package main
import (
"fmt"
"strconv"
"math"
)
func conv(str string) int {
l := len(str)
result := 0.0
for i,n := range str {
number,_ := strconv.Atof64(string(n))
result += math.Exp2(float64(l-i-1))*number
}
return int(result)
}
func main() {
fmt.Println(conv("1001"))
}
नीचे जवाब सिफारिश कर रहे हैं, लेकिन अगर आप वास्तव में रूपांतरण अपने आप को क्या करना चाहते हैं, तो आप यह कर सकते हैं पुस्तकालयों से किसी भी मदद के बिना। 'परिणाम' एक int बनाओ, और लूप के प्रत्येक पुनरावृत्ति के लिए, 'परिणाम = (परिणाम << 1) | (n-'0') ' – axw