Go语言程序检查阿姆斯特朗数


在本教程中,我们将学习如何在Go编程语言中检查阿姆斯特朗数。

阿姆斯特朗数(也称为自恋数)是一个数,其各位数字的立方和等于该数本身。

  • 示例1:$\mathrm{(1^3) \:+ \:(5^3) \:+ \:(3^3)\:= \:153}$

  • 示例2:$\mathrm{(3^3) \:+ \:(7^3) \:+ \:(1^3)\:= \:371}$

在下面的示例中,我们将读取一个整数,然后使用Go语言程序检查给定的数是否为阿姆斯特朗数。

语法

Syntax of For loop
Initialize
for condition {
}
incrementor

初始化语句是可选的,在for循环开始之前执行。

条件语句包含一个布尔表达式,在循环的每次迭代开始时都会对其进行评估。如果条件语句的值为真,则循环执行。

增量语句在for循环体之后执行。在增量语句之后,条件语句再次进行评估;如果条件语句的值为假,则循环结束。

示例1:以下示例演示了如何在主函数中使用函数来检查阿姆斯特朗数

算法

  • 步骤1 − 导入fmt包。

  • 步骤2 − 开始函数main ()

  • 步骤3 − 声明并初始化变量。

  • 步骤4 − 使用带有条件和增量器的for循环。

  • 步骤5 − 使用fmt.Printf()打印结果。

示例

// Golang Program to check Armstrong Number package main // fmt package provides the function to print anything import "fmt" func main() { fmt.Println("Number = 153") // declare the variables var number, temp, remainder int var result int = 0 // initialize the variables number = 153 temp = number // Use of For Loop for { remainder = temp % 10 result += remainder * remainder * remainder temp /= 10 if temp == 0 { break // Break Statement used to stop the loop } } // If satisfies Armstrong condition if result == number { fmt.Printf("%d is an Armstrong number.", number) } else { fmt.Printf("%d is not an Armstrong number.", number) } // print the result }

输出

Number = 153
153 is an Armstrong number.

代码描述

  • 在上面的程序中,我们首先声明main包。main包用于告诉Go语言编译器必须编译该包并生成可执行文件。

  • 我们导入了fmt包,该包包含fmt包的文件,然后我们可以使用与fmt包相关的函数。

  • 现在开始函数main (),此函数是可执行程序的入口点。它不接受任何参数也不返回任何值。

  • 首先,我们声明四个整型变量。将number变量初始化为您想要的整数值,将result变量初始化为0。

  • 使用for循环 − 条件在if语句中给出,停止执行由break语句指定。

  • 最后使用fmt.Printf打印结果到屏幕。

示例2:以下示例演示了如何使用两个单独的函数来检查阿姆斯特朗数

算法

  • 步骤1 − 导入fmt包。

  • 步骤2 − 创建CHECKARMSTRONG ()函数。

  • 步骤3 − 声明并初始化变量。

  • 步骤4 − 使用带有条件和增量器的for循环。

  • 步骤5 − 开始函数main ()

  • 步骤6 − 调用函数CHECKARMSTRONG ()

  • 步骤7 − 使用fmt.Printf()打印结果。

示例

package main // fmt package provides the function to print anything import "fmt" // CREATE A FUNCTION TO CHECK FOR ARMSTRONG NUMBER func CHECKARMSTRONG(number int) bool { // declare the variables fmt.Printf("\nEntered Number =%d\n", number) temp := 0 remainder := 0 var result int = 0 // initialize the variables temp = number // Use of For Loop // here we calculate the sum of the cube of each digit of the // given number to check the given number is Armstrong or not for { remainder = temp % 10 result += remainder * remainder * remainder temp /= 10 if temp == 0 { break // Break Statement used to stop the loop } } // If satisfies Armstrong condition if result == number { fmt.Printf("%d is an Armstrong number.", number) } else { fmt.Printf("%d is not an Armstrong number.", number) } return true // print the result } func main() { fmt.Println("GOLANG PROGRAM TO CHECK ARMSTRONG NUMBER") // calling the function CHECKARMSTRONG() CHECKARMSTRONG(153) CHECKARMSTRONG(351) }

输出

GOLANG PROGRAM TO CHECK ARMSTRONG NUMBER

Entered Number =153
153 is an Armstrong number.
Entered Number =351
351 is not an Armstrong number.
Program exited.

代码描述

  • 在上面的程序中,我们首先声明main包。main包用于告诉Go语言编译器必须编译该包并生成可执行文件。

  • 我们导入了fmt包,该包包含fmt包的文件,然后我们可以使用与fmt包相关的函数。

  • 接下来创建CHECKARMSTRONG ()函数来检查该数是否为阿姆斯特朗数。

  • 将整型变量temp、remainder和result声明为0。

  • 接下来,我们使用带有条件和增量器的for循环来检查该数是否为阿姆斯特朗数。在代码中,我们计算给定数字的每个数字的立方和,以检查给定的数字是否为阿姆斯特朗数。

  • 现在我们开始函数main (),此函数是可执行程序的入口点。它不接受任何参数也不返回任何值。

  • 接下来,我们使用需要检查阿姆斯特朗数的整数值调用CHECKARMSTRONG ()函数。

  • 最后,结果使用fmt.Printf()函数打印到屏幕上。

结论

在以上两个示例中,我们已成功编译并执行了用于检查阿姆斯特朗数的Go语言程序代码。

更新于:2022年11月15日

753 次浏览

启动你的职业生涯

完成课程获得认证

开始学习
广告