Swift 程序检查数字是否为完全立方数
如果一个整数的三次乘积等于该整数本身,则该整数为完全立方数。例如:数字 5 是一个
数字 = 125
125 = 5*5*5
这里 125 是一个完全立方数。
数字 = 98
这里 98 不是一个完全立方数。
在这篇文章中,我们将学习如何编写一个 Swift 程序来检查一个数字是否为完全立方数。
方法 1:使用用户自定义函数
要检查给定数字是否为完全立方数,我们创建一个函数,检查从 1 到 M 的每个数字,如果其中任何一个数字的立方等于 M,则该数字为完全立方数,否则不是。
算法
步骤 1 − 创建一个函数。
步骤 2 − 从 1 到 num 运行一个 for 循环。
步骤 3 − 使用 if 语句检查当前迭代器 x 的立方是否等于该数字,如果是,则返回 true。否则返回 false。
步骤 4 − 创建一个变量来存储输入数字。
步骤 5 − 将输入数字传递到函数中。
步骤 6 − 打印输出。
示例
以下 Swift 程序检查数字是否为完全立方数。
import Foundation import Glibc // Function to check if the number is a perfect cube or not func checkPerfectCube(num: Int) -> Bool { for x in 1...num { if x*x*x == num { return true } } return false } // Input 1 let N1 = 125 if checkPerfectCube(num: N1) { print("\(N1) is a perfect cube.") } else { print("\(N1) is not a perfect cube.") } // Input 2 let N2 = 98 if checkPerfectCube(num: N2) { print("\(N2) is a perfect cube.") } else { print("\(N2) is not a perfect cube.") }
输出
125 is a perfect cube. 98 is not a perfect cube.
在上面的代码中,我们创建了一个名为 checkPerfectCube() 的函数来检查给定数字是否为完全立方数。此函数接收一个正整数作为输入,然后运行一个 for 循环来迭代从 1 到 num 的每个数字。在 for 循环内,检查当前迭代器“x”的立方是否等于该数字。如果是,则此函数返回 true。否则返回 false。
方法 2:使用内置函数
要检查给定数字是否为完全立方数,我们使用 cbrt() 函数查找输入值的立方根,然后查找立方根的立方。如果立方根的立方等于该数字,则该数字为完全立方数。否则不是。
算法
步骤 1 − 创建一个函数。
步骤 2 − 使用 cbrt() 函数查找输入数字的立方根。
步骤 3 − 计算立方根的立方。
步骤 4 − 如果立方根的立方和输入数字相等,则返回 true。否则返回 false。
步骤 5 − 创建一个变量来存储输入数字。
步骤 6 − 将输入数字传递到函数中。
步骤 7 − 打印输出。
示例
以下 Swift 程序检查数字是否为完全立方数。
import Foundation import Glibc // Function to check if the number is a perfect cube or not func checkPerfectCube(num: Double) -> Bool { let cubeRoot = cbrt(num) let cube = cubeRoot * cubeRoot * cubeRoot // Return return if the cube is equal to num // Otherwise return false return cube == num } // Input 1 let M1 = 41.0 if checkPerfectCube(num: M1) { print("\(M1) is a perfect cube.") } else { print("\(M1) is not a perfect cube.") } // Input 2 let M2 = 512.0 if checkPerfectCube(num: M2) { print("\(M2) is a perfect cube.") } else { print("\(M2) is not a perfect cube.") }
输出
41.0 is not a perfect cube. 512.0 is a perfect cube.
在上面的代码中,我们创建了一个名为 checkPerfectCube() 的函数来检查给定数字是否为完全立方数。此函数接收一个正整数作为输入,然后使用 cbrt() 函数查找该数字的立方根。然后,计算结果立方根的立方。现在检查立方根的立方是否等于输入数字。如果它们相等,则此函数返回 true,表示该数字是完全立方数。否则返回 false,表示该数字不是完全立方数。
结论
这就是我们如何检查给定数字是否为完全立方数。