如何在Swift中計算nPr的值
nPr被稱為n個元素的排列數,其中n代表總數,r代表元素的排列。愛掏網 - it200.com排列是指將元素按照指定的順序排列。愛掏網 - it200.com元素可以按照順序或線性順序排列,例如,我們有一個元素集合[2, 4],其排列為:[4, 2],[2, 4]
。愛掏網 - it200.com在排列中,元素的順序很重要,而在組合中,元素的順序并不重要。愛掏網 - it200.com
我們可以通過以下公式計算nPr的值:
公式
nPr = n!/(n - r)!
示例演示
這里,我們有n = 10和r = 5,所以nPr的值是30240。愛掏網 - it200.com同樣,n = 8和r = 4,所以nPr的值是1680。愛掏網 - it200.com
算法
第1步 - 創建一個函數來找到給定數字的階乘。愛掏網 - it200.com
第2步 - 創建另一個函數根據給定的公式計算nPr。愛掏網 - it200.com
第3步 - 聲明兩個變量來存儲N和R的值。愛掏網 - it200.com
第4步 - 現在調用nPr函數并將N和R傳遞給它。愛掏網 - it200.com
第5步 - 顯示輸出。愛掏網 - it200.com
示例
在下面的Swift程序中,我們計算nPr的值。愛掏網 - it200.com首先,我們創建一個名為findFactorial()的函數來計算指定數字的階乘。愛掏網 - it200.com然后,我們創建另一個名為calculateNPR()的函數來找到給定nPr的值。愛掏網 - it200.com在這個函數中,我們首先檢查n和r的值是否有效。愛掏網 - it200.com如果無效,則返回?1,表示n或r的值無效。愛掏網 - it200.com如果n和r的值有效,我們將使用給定的公式找到nPr的值,并返回nPr的最終值。愛掏網 - it200.com在這里,為了找到階乘,我們將使用findFactorial()函數。愛掏網 - it200.com
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的值。愛掏網 - it200.com首先我們創建一個名為findFactorial()的函數來計算指定數字的階乘。愛掏網 - it200.com然后我們創建另一個名為calculateNPR()的函數來找到給定nPr的值。愛掏網 - it200.com在這個函數中,我們將使用給定的公式計算nPr的值,并返回最終的nPr的值。愛掏網 - it200.com為了找到給定數字的階乘,我們將使用findFactorial()函數。愛掏網 - it200.com
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 來計算一個安全密碼。愛掏網 - it200.com
-
使用 nPr 可以進行座位安排。愛掏網 - it200.com
-
使用 nPr 可以找到游戲或彩票中的可能組合。愛掏網 - it200.com
-
它還可以用于創建安全的加密算法。愛掏網 - it200.com
結論
這就是我們如何計算 nPr 的值。愛掏網 - it200.com nPr 通常用于計算排列數、概率、組合分析、帶重復的置換等。愛掏網 - it200.com這是一種數字或元素排列的方式。愛掏網 - it200.com因此,您可以使用以上任何一種方法來計算 nPr 的值。愛掏網 - it200.com