Swift 编程语言求两个数的最小公倍数
本教程将讨论如何编写一个 Swift 程序来查找两个数字的最小公倍数。
最小公倍数也称为最小公倍数。它用于计算两个或多个数字之间最小的公倍数。这里的公倍数表示两个或多个数字的倍数。例如,我们有两个数字 10 和 8
10 的因数 = 2 x 5
8 的因数 = 2 x 2 x 2
两个因数的并集 = 2 x 2 x 2 x 5 = 40
所以 10 和 8 的最小公倍数是 40。
这是查找最小公倍数的简单方法,但查找最小公倍数最有效的方法是使用以下公式。
公式
以下是最小公倍数的公式:
LCM(n, m) = n *m/gcd(n, m)
这里 gcd 表示最大公约数。
下面是相同内容的演示:
输入
假设我们的给定输入是:
Number 1 - 10 Number 2 - 8
输出
期望的输出将是:
LCM 40
算法
以下是算法:
步骤 1 - 创建一个名为 findGCD() 的函数。此函数返回两个数字的最大公约数。
步骤 2 - 创建另一个名为 findLCM 的函数。此函数返回两个数字的最小公倍数。
return (n1 * n2/findGCD(n1, n2))
步骤 3 - 调用 findLCM() 函数并在其中传递两个参数。此处参数的值可以是用户定义的或预定义的。
步骤 4 - 打印输出
示例 1
以下程序显示了如何查找两个数字的最小公倍数。
import Swift import Foundation // Function to find gcd of two numbers func findGCD(_ num1: Int, _ num2: Int) -> Int { var x = 0 // Finding maximum number var y: Int = max(num1, num2) // Finding minimum number var z: Int = min(num1, num2) while z != 0 { x = y y = z z = x % y } return y } // Function to find lcm of two numbers func findLCM(n1: Int, n2: Int)->Int{ return (n1 * n2/findGCD(n1, n2)) } // Calling Function var result = findLCM(n1: 10, n2:8) print("LCM of 10 and 8 is ", result)
输出
LCM of 10 and 8 is 40
在这里,在上面的代码中,我们创建了一个名为 findGCD() 的函数来查找两个数字的最大公约数。我们创建了另一个名为 findLCM() 的函数,使用数学公式查找两个数字的最小公倍数:
return (n1 * n2/findGCD(n1, n2))
现在我们调用 findLCM() 函数并在其中传递两个参数,即 10 和 8,并显示 10 和 8 的最小公倍数,即 40。
示例 2
以下程序显示了如何查找两个数字的最小公倍数。
import Swift import Foundation // Function to find gcd of two numbers func findGCD(_ num1: Int, _ num2: Int) -> Int { var x = 0 // Finding maximum number var y: Int = max(num1, num2) // Finding minimum number var z: Int = min(num1, num2) while z != 0 { x = y y = z z = x % y } return y } // Function to find lcm of two numbers func findLCM(n1: Int, n2: Int)->Int{ return (n1 * n2/findGCD(n1, n2)) } // Taking input from the user print("Please enter the value of number 1:") var number1 = Int(readLine()!)! print("Please enter the value of number 2:") var number2 = Int(readLine()!)! // Calling Function var result = findLCM(n1: number1, n2:number2) print("So the LCM of \(number1) and \(number2) is ", result)
标准输入
Please enter the value of number 1: 26 Please enter the value of number 2: 35
输出
So the LCM of 26 and 35 is 910
在这里,在上面的代码中,我们创建了一个名为 findGCD() 的函数来查找两个数字的最大公约数。我们创建了另一个名为 findLCM() 的函数,使用数学公式查找两个数字的最小公倍数:
return (n1 * n2/findGCD(n1, n2))
在这里,我们使用 readLine() 函数从用户那里获取两个整数类型的数字。并调用 findLCM() 函数并将这两个数字作为参数传递并显示输出。假设用户输入 number1 = 26 和 number2 = 35,则它们的最小公倍数为 910。