Go Program to Count Digits in a Number

Write a Go Program to Count Digits in a Number using for loop. The for loop condition (num > 0) make sure the number is greater than zero. Within the loop, we are incrementing the count value. Next, we divide the number by ten (num = num / 10), which will remove the last digit from a number.

package main

import "fmt"

func main() {

    var num, count int
    count = 0

    fmt.Print("Enter any number to count digits = ")
    fmt.Scanln(&num)

    for num > 0 {
        num = num / 10
        count = count + 1
    }
    fmt.Println("The total Number to Digits = ", count)
}
SureshMac:GoExamples suresh$ go run countDigits1.go
Enter any number to count digits = 46782
The total Number to Digits =  5
SureshMac:GoExamples suresh$ go run countDigits1.go
Enter any number to count digits = 657
The total Number to Digits =  3
SureshMac:GoExamples suresh$ 

Golang Program to Count Digits in a Number

In this Golang example, we altered the for loop and counted the total number of individual digits in a user-given value.

package main

import "fmt"

func main() {

    var num, count int

    fmt.Print("Enter any number to count digits = ")
    fmt.Scanln(&num)

    for count = 0; num > 0; num = num / 10 {
        count = count + 1
    }
    fmt.Println("The total Number to Digits = ", count)
}
SureshMac:GoExamples suresh$ go run countDigits2.go
Enter any number to count digits = 560986
The total Number to Digits =  6
SureshMac:GoExamples suresh$ go run countDigits2.go
Enter any number to count digits = 23
The total Number to Digits =  2
SureshMac:GoExamples suresh$ 

Go example to Count Digits in a Number using a function

package main

import "fmt"

func digitCount(num int) int {
    var count int = 0
    for num > 0 {
        num = num / 10
        count = count + 1
    }
    return count
}

func main() {

    var num, count int

    fmt.Print("Enter any number to count digits = ")
    fmt.Scanln(&num)

    count = digitCount(num)
    fmt.Println("The total Number to Digits = ", count)
}
SureshMac:GoExamples suresh$ go run countDigits3.go
Enter any number to count digits = 2345
The total Number to Digits =  4
SureshMac:GoExamples suresh$ go run countDigits3.go
Enter any number to count digits = 987
The total Number to Digits =  3
SureshMac:GoExamples suresh$ 

In this Go Program to return Digits in a Number, we call digitCount(num / 10) function recursively with the updated value. 

package main

import "fmt"

var count int = 0

func digitCount(num int) int {
    if num > 0 {
        count = count + 1
        digitCount(num / 10)
    }
    return count
}

func main() {

    var num int

    fmt.Print("Enter any number to count digits = ")
    fmt.Scanln(&num)

    count = digitCount(num)
    fmt.Println("The total Number to Digits = ", count)
}
Golang Program to Count Digits in a Number 4