如何在Swift中计算nPr的值

如何在Swift中计算nPr的值

nPr被称为n个元素的排列数,其中n代表总数,r代表元素的排列。排列是指将元素按照指定的顺序排列。元素可以按照顺序或线性顺序排列,例如,我们有一个元素集合[2, 4],其排列为:[4, 2],[2, 4]。在排列中,元素的顺序很重要,而在组合中,元素的顺序并不重要。

我们可以通过以下公式计算nPr的值:

公式

nPr = n!/(n - r)!

示例演示

这里,我们有n = 10和r = 5,所以nPr的值是30240。同样,n = 8和r = 4,所以nPr的值是1680。

算法

第1步 - 创建一个函数来找到给定数字的阶乘。

第2步 - 创建另一个函数根据给定的公式计算nPr。

第3步 - 声明两个变量来存储N和R的值。

第4步 - 现在调用nPr函数并将N和R传递给它。

第5步 - 显示输出。

示例

在下面的Swift程序中,我们计算nPr的值。首先,我们创建一个名为findFactorial()的函数来计算指定数字的阶乘。然后,我们创建另一个名为calculateNPR()的函数来找到给定nPr的值。在这个函数中,我们首先检查n和r的值是否有效。如果无效,则返回−1,表示n或r的值无效。如果n和r的值有效,我们将使用给定的公式找到nPr的值,并返回nPr的最终值。在这里,为了找到阶乘,我们将使用findFactorial()函数。

import Foundation
import Glibc

// Function to calculate the factorial 
func findFactorial(number: Int) -> Int 
{
    var fact = 1
    for x in 1...number {
        fact *= x
    }
    return fact
}

// Function to calculate nPr 
func calculateNPR(n: Int, r: Int) -> Int {

    if n < 0 || r < 0 || r > n {
        return -1 
    }

    let numerator = findFactorial(number:n)
    let denominator = findFactorial(number: n - r)
    let nPr = numerator / denominator
    return nPr
}

// Test case
let N = 10
let R = 5

let resultantNPR = calculateNPR(n: N, r:R)

if resultantNPR != -1 {
    print("\(N)P\(R):", resultantNPR)
} else {
    print("Please enter a valid input")
}

输出

10P5: 30240

示例

在下面的Swift程序中,我们计算nPr的值。首先我们创建一个名为findFactorial()的函数来计算指定数字的阶乘。然后我们创建另一个名为calculateNPR()的函数来找到给定nPr的值。在这个函数中,我们将使用给定的公式计算nPr的值,并返回最终的nPr的值。为了找到给定数字的阶乘,我们将使用findFactorial()函数。

import Foundation
import Glibc

// Function to calculate the factorial 
func findFactorial(number: Int) -> Int 
{
    if (number <= 1){
        return 1
    }
    return number * findFactorial(number: number - 1)
}

// Function to calculate nPr 
func calculateNPR(n: Int, r: Int) -> Int {

    let nPr = findFactorial(number: n)/findFactorial(number: n-r)
    return nPr
}

// Test case
let N = 6
let R = 3

let resultantNPR = calculateNPR(n: N, r:R)
print("\(N)P\(R):", resultantNPR)

输出

6P3: 120

nPr 的实际应用

nPr 的实际应用如下:

  • 您可以使用 nPr 来计算一个安全密码。

  • 使用 nPr 可以进行座位安排。

  • 使用 nPr 可以找到游戏或彩票中的可能组合。

  • 它还可以用于创建安全的加密算法。

结论

这就是我们如何计算 nPr 的值。 nPr 通常用于计算排列数、概率、组合分析、带重复的置换等。这是一种数字或元素排列的方式。因此,您可以使用以上任何一种方法来计算 nPr 的值。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程