如何在Swift中計(jì)算nPr的值含代碼

    如何在Swift中計(jì)算nPr的值

    nPr被稱為n個(gè)元素的排列數(shù),其中n代表總數(shù),r代表元素的排列。愛(ài)掏網(wǎng) - it200.com排列是指將元素按照指定的順序排列。愛(ài)掏網(wǎng) - it200.com元素可以按照順序或線性順序排列,例如,我們有一個(gè)元素集合[2, 4],其排列為:[4, 2],[2, 4]愛(ài)掏網(wǎng) - it200.com在排列中,元素的順序很重要,而在組合中,元素的順序并不重要。愛(ài)掏網(wǎng) - it200.com

    我們可以通過(guò)以下公式計(jì)算nPr的值:

    公式

    nPr = n!/(n - r)!
    

    示例演示

    這里,我們有n = 10和r = 5,所以nPr的值是30240。愛(ài)掏網(wǎng) - it200.com同樣,n = 8和r = 4,所以nPr的值是1680。愛(ài)掏網(wǎng) - it200.com

    算法

    第1步 - 創(chuàng)建一個(gè)函數(shù)來(lái)找到給定數(shù)字的階乘。愛(ài)掏網(wǎng) - it200.com

    第2步 - 創(chuàng)建另一個(gè)函數(shù)根據(jù)給定的公式計(jì)算nPr。愛(ài)掏網(wǎng) - it200.com

    第3步 - 聲明兩個(gè)變量來(lái)存儲(chǔ)N和R的值。愛(ài)掏網(wǎng) - it200.com

    第4步 - 現(xiàn)在調(diào)用nPr函數(shù)并將N和R傳遞給它。愛(ài)掏網(wǎng) - it200.com

    第5步 - 顯示輸出。愛(ài)掏網(wǎng) - it200.com

    示例

    在下面的Swift程序中,我們計(jì)算nPr的值。愛(ài)掏網(wǎng) - it200.com首先,我們創(chuàng)建一個(gè)名為findFactorial()的函數(shù)來(lái)計(jì)算指定數(shù)字的階乘。愛(ài)掏網(wǎng) - it200.com然后,我們創(chuàng)建另一個(gè)名為calculateNPR()的函數(shù)來(lái)找到給定nPr的值。愛(ài)掏網(wǎng) - it200.com在這個(gè)函數(shù)中,我們首先檢查n和r的值是否有效。愛(ài)掏網(wǎng) - it200.com如果無(wú)效,則返回?1,表示n或r的值無(wú)效。愛(ài)掏網(wǎng) - it200.com如果n和r的值有效,我們將使用給定的公式找到nPr的值,并返回nPr的最終值。愛(ài)掏網(wǎng) - it200.com在這里,為了找到階乘,我們將使用findFactorial()函數(shù)。愛(ài)掏網(wǎng) - 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程序中,我們計(jì)算nPr的值。愛(ài)掏網(wǎng) - it200.com首先我們創(chuàng)建一個(gè)名為findFactorial()的函數(shù)來(lái)計(jì)算指定數(shù)字的階乘。愛(ài)掏網(wǎng) - it200.com然后我們創(chuàng)建另一個(gè)名為calculateNPR()的函數(shù)來(lái)找到給定nPr的值。愛(ài)掏網(wǎng) - it200.com在這個(gè)函數(shù)中,我們將使用給定的公式計(jì)算nPr的值,并返回最終的nPr的值。愛(ài)掏網(wǎng) - it200.com為了找到給定數(shù)字的階乘,我們將使用findFactorial()函數(shù)。愛(ài)掏網(wǎng) - 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 的實(shí)際應(yīng)用

    nPr 的實(shí)際應(yīng)用如下:

    • 您可以使用 nPr 來(lái)計(jì)算一個(gè)安全密碼。愛(ài)掏網(wǎng) - it200.com

    • 使用 nPr 可以進(jìn)行座位安排。愛(ài)掏網(wǎng) - it200.com

    • 使用 nPr 可以找到游戲或彩票中的可能組合。愛(ài)掏網(wǎng) - it200.com

    • 它還可以用于創(chuàng)建安全的加密算法。愛(ài)掏網(wǎng) - it200.com

    結(jié)論

    這就是我們?nèi)绾斡?jì)算 nPr 的值。愛(ài)掏網(wǎng) - it200.com nPr 通常用于計(jì)算排列數(shù)、概率、組合分析、帶重復(fù)的置換等。愛(ài)掏網(wǎng) - it200.com這是一種數(shù)字或元素排列的方式。愛(ài)掏網(wǎng) - it200.com因此,您可以使用以上任何一種方法來(lái)計(jì)算 nPr 的值。愛(ài)掏網(wǎng) - it200.com

    聲明:所有內(nèi)容來(lái)自互聯(lián)網(wǎng)搜索結(jié)果,不保證100%準(zhǔn)確性,僅供參考。如若本站內(nèi)容侵犯了原著者的合法權(quán)益,可聯(lián)系我們進(jìn)行處理。
    發(fā)表評(píng)論
    更多 網(wǎng)友評(píng)論0 條評(píng)論)
    暫無(wú)評(píng)論

    返回頂部

    主站蜘蛛池模板: 久久青青草原一区二区| 日韩电影一区二区三区| 好爽毛片一区二区三区四| 亚洲韩国精品无码一区二区三区| 无码一区二区波多野结衣播放搜索 | 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 人妻AV中文字幕一区二区三区 | 色一情一乱一伦一区二区三区日本| 国产高清不卡一区二区| 亚洲人成网站18禁止一区| 成人精品一区二区三区校园激情 | 熟女精品视频一区二区三区| 国产另类ts人妖一区二区三区 | 无码精品尤物一区二区三区| 国产精品熟女一区二区| 在线观看国产一区| 在线观看国产一区| 国产成人高清视频一区二区| 日韩一区二区三区在线观看| 日本一区二区三区精品视频| 相泽南亚洲一区二区在线播放| 亚洲综合av一区二区三区| 国产91大片精品一区在线观看| 中文字幕精品一区二区日本| 人妻aⅴ无码一区二区三区| 色偷偷久久一区二区三区| 国产在线无码视频一区二区三区| 伊人久久精品无码av一区| 久久综合一区二区无码| 中文字幕日韩一区二区三区不| 中文字幕在线观看一区二区三区| 久久一区二区三区免费| 久99精品视频在线观看婷亚洲片国产一区一级在线 | 高清一区二区三区视频| 精品人妻一区二区三区四区| 国产在线观看一区二区三区| 精品一区二区三区四区电影| 中文字幕精品一区二区三区视频| 久久se精品一区精品二区| 99热门精品一区二区三区无码| 国产怡春院无码一区二区 |