A Tour of Go : Exercise: Loops and Functions
A Tour of Go系列。如有问题欢迎指出~
Tour的第一个练习,非常简单,答案如下:
1 package main 2 3 import ( 4 "fmt" 5 ) 6 7 func Sqrt(x float64) float64 { 8 z:=float64(1) //z须为float64型变量 9 for i:=0;i<10;i++{ 10 z=z-(z*z-x)/(2*z) 11 } 12 return z 13 } 14 15 func main() { 16 fmt.Println(Sqrt(2)) 17 }
需要注意的是Go中变量的类型转换应为明确指出的,所以用z:=float64(1)。当然,用z:=1.0也是可以的,Go中常量都是精确的,即Go会自动转换常量到所需要的类型。