如何在Swift中計算nPr的值?


nPr被稱為n排列r,其中n代表總數,r代表元素的排列方式。排列是指按特定順序排列元素。元素可以按順序或線性順序排列,例如,我們有一組元素[2, 4],則排列為:[4, 2],[2, 4]。在排列中,元素的順序很重要,而在組合中,元素的順序不重要。

我們可以用以下公式計算nPr的值

公式

nPr = n!/(n - r)!

示例演示

輸入1

n = 10 , r = 5 

輸出


輸入

n = 8 , r = 4  

輸出


這裡,我們有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的值。

更新於:2023年9月8日

92次瀏覽

啟動您的職業生涯

透過完成課程獲得認證

開始
廣告