浮点型
主要为了表示小数
也可细分float32和float64两种
float64提供比float32更高的精度
取值范围
类型 | 最大值 | 最小非负数 |
float32 | 3.402823466385288598117041834516925440e +38 |
1.401298464324817070923729583289916131280e -45 |
float64 | 1.797693134862315708145274237317043567981e +308 |
4.940656458412465441765687928682213723651e -324 |
运算结果不正确解决方式
原代码
package main
inport "fmt"
func main(){
var a,b,c float64
a=1.69
b=1.7
c=a*b
//正确结果2.873
fmt.Println(c)
}
改造后代码
package main
inport "fmt"
func main(){
var a,b,c float64
a=1.69*100
b=1.7*10
c=a*b/(100*10)
//正确结果2.873
fmt.Println(c)
}
尽量使用64位
浮点型
主要为了表示小数
也可细分float32和float64两种
float64提供比float32更高的精度
取值范围
类型 | 最大值 | 最小非负数 |
float32 | 3.402823466385288598117041834516925440e +38 |
1.401298464324817070923729583289916131280e -45 |
float64 | 1.797693134862315708145274237317043567981e +308 |
4.940656458412465441765687928682213723651e -324 |
运算结果不正确解决方式
原代码
package main
inport "fmt"
func main(){
var a,b,c float64
a=1.69
b=1.7
c=a*b
//正确结果2.873
fmt.Println(c)
}
改造后代码
package main
inport "fmt"
func main(){
var a,b,c float64
a=1.69*100
b=1.7*10
c=a*b/(100*10)
//正确结果2.873
fmt.Println(c)
}
尽量使用64位