Go 程序用于查找数字的各位之和

编写一个 Go 程序,使用 for 循环查找数字的各位之和。for 循环条件确保数字大于零。在循环中, 

  • digiReminder = digiNum % 10 – 它将数字的最后一位加到 digiReminder。
  • digiSum = digiSum + digiReminder -> 将最后一位加到 digiSum。 
  • digiNum = digiNum / 10 – 它从 digiNum 中移除最后一位。
package main

import "fmt"

func main() {

    var digiNum, digiSum, digiReminder int

    fmt.Print("Enter the Number to find the Sum of Digits = ")
    fmt.Scanln(&digiNum)

    for digiSum = 0; digiNum > 0; digiNum = digiNum / 10 {
        digiReminder = digiNum % 10
        digiSum = digiSum + digiReminder
    }
    fmt.Println("The Sum of Digits in this Number = ", digiSum)
}
Go Program to Find Sum of Digits in a Number

Go 程序使用函数查找数字的各位之和

package main

import "fmt"

var digiSum int

func digitSum(digiNum int) int {
    var digiReminder int

    for digiSum = 0; digiNum > 0; digiNum = digiNum / 10 {
        digiReminder = digiNum % 10
        digiSum = digiSum + digiReminder
    }
    return digiSum
}

func main() {

    var digiNum int

    fmt.Print("Enter the Number to find the Sum of Digits = ")
    fmt.Scanln(&digiNum)

    digiSum = digitSum(digiNum)
    fmt.Println("The Sum of Digits in this Number = ", digiSum)
}
SureshMac:GoExamples suresh$ go run digitSum2.go
Enter the Number to find the Sum of Digits = 4567
The Sum of Digits in this Number =  22
SureshMac:GoExamples suresh$ go run digitSum2.go
Enter the Number to find the Sum of Digits = 98759
The Sum of Digits in this Number =  38

Golang 程序使用递归计算数字的各位之和 在此 Golang 程序中,我们递归调用 digitSum(digiNum/10) 函数来计算数字的各位之和。

package main

import "fmt"

var digiSum int

func digitSum(digiNum int) int {
    digiSum = 0
    if digiNum == 0 {
        return 0
    }
    digiSum = digiNum%10 + digitSum(digiNum/10)
    return digiSum
}

func main() {

    var digiNum int

    fmt.Print("Enter the Number to find the Sum of Digits = ")
    fmt.Scanln(&digiNum)

    digiSum = digitSum(digiNum)
    fmt.Println("The Sum of Digits in this Number = ", digiSum)
}
SureshMac:GoExamples suresh$ go run digitSum3.go
Enter the Number to find the Sum of Digits = 45678
The Sum of Digits in this Number =  30
SureshMac:GoExamples suresh$ go run digitSum3.go
Enter the Number to find the Sum of Digits = 8098603
The Sum of Digits in this Number =  34