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

About Suresh

Suresh is the founder of TutorialGateway and a freelance software developer. He specialized in Designing and Developing Windows and Web applications. The experience he gained in Programming and BI integration, and reporting tools translates into this blog. You can find him on Facebook or Twitter.