(03)数学运算

func main021() {
    //13
    fmt.Println(10 + 3)

    //7
    fmt.Println(10 - 3)

    //30
    fmt.Println(10 * 3)

    //3
    fmt.Println(10 / 3)
    //3.33333333
    fmt.Println(10.0 / 3.0)

    //1求余/求模
    fmt.Println(10 % 3)

    //四则运算,使用括号代表优先计算
    //2.25
    fmt.Println(((1+2)*3/4.0))
}

/*四舍五入、绝对值、乘方、开方、三角函数*/
func main022() {
    /*四舍五入*/
    fmt.Println(math.Round(3.4))
    fmt.Println(math.Round(3.5))
    //先对绝对值四舍五入再加负号
    fmt.Println(math.Round(-3.4))
    fmt.Println(math.Round(-3.5))

    /*纯舍,纯入*/
    fmt.Println("纯舍去地板",math.Floor(3.99))
    fmt.Println("纯入去天花板",math.Ceil(3.01))

    //绝对值
    fmt.Println(math.Abs(-3.4))

    //2^3=8 乘方
    fmt.Println(math.Pow(2,3))

    //3 = 9的平方根square root
    fmt.Println(math.Sqrt(9))
    //对8开立方,即求8的三分之一次方
    fmt.Println(math.Pow(8,(1.0/3)))

    //正弦余弦正切
    fmt.Println(math.Sin((30.0/180)*math.Pi))
    fmt.Println(math.Cos((30.0/180)*math.Pi))
    fmt.Println(math.Tan((30.0/180)*math.Pi))

    //0.52,反正弦,求正弦为0.5的弧度,0.52,即math.Pi/6,即30度
    fmt.Println(math.Asin(0.5))

}

/*整型和浮点型的互化*/
func main023() {

    //把整数化成浮点数
    var a = 123
    b := float64(a)
    fmt.Printf("b的类型是%T,值是%v\n",b,b)

    //将浮点数化为整数
    var c = 123.45
    d := int32(c)
    fmt.Printf("d的类型是%T,值是%v\n",d,d)
}

/*自加运算*/
func main() {
    var a int = 123
    //a = a + 2
    //a += 2
    //a -= 2
    //a *= 2
    //a /= 2
    //a %= 2

    //a++
    a--
    fmt.Println(a)

}


位运算


//按位或运算  两位某一位为1,结果就为1
fmt.Printf("12 | 10 的十进制结果是%d, 二进制结果是%b\n", 12|10, 12|10)


//按位异或运算  两位不相同,结果就为1.
fmt.Printf("12 ^ 10 的十进制结果是%d, 二进制结果是%b\n", 12^10, 12^10)


//按位与运算两位都为1 结果才为1
fmt.Printf("12 & 10 的十进制结果是%d, 二进制结果是%b\n", 12&10, 12&10)


//位移 左移运算  溢出边界的部分添0,对于有符号整形,要考虑移位后高位为1要按反码规则计算负数值。
fmt.Println(12 << 1)
fmt.Println(12 << 2)
fmt.Println(12 << 3)
fmt.Println(12 << 4)

 


//右移运算
fmt.Println(12 >> 1)
fmt.Println(12 >> 2)
fmt.Println(12 >> 3)


}






 

posted @ 2019-06-13 14:17  pad+  阅读(217)  评论(0编辑  收藏  举报