網頁

2022/9/20

Golang 取得數值位數 count the number of digits

Go取得數值位數(即小數點前幾位)的方式如下。


下面的CountDigits()函式可取得數值(整數或浮點數)的位數。

main.go

package main

import (
    "fmt"
)

func main() {
    fmt.Println(CountDigits(0.123))   // 0
    fmt.Println(CountDigits(1))       // 1
    fmt.Println(CountDigits(12))      // 2
    fmt.Println(CountDigits(123.123)) // 3
    fmt.Println(CountDigits(0))       // 0
    fmt.Println(CountDigits(-1))      // 0
}

func CountDigits(num float64) int {
    count := 0
    for num >= 1 {
        num /= 10
        count++
    }
    return count
}

沒有留言:

張貼留言