Swift 程式檢查數字是否為完全立方數


如果一個整數的三次乘積等於該整數本身,則該整數為完全立方數。例如:數字 5 是一個

數字 = 125

125 = 5*5*5

這裡 125 是一個完全立方數。

數字 = 98

這裡 98 不是一個完全立方數。

在這篇文章中,我們將學習如何編寫一個 Swift 程式來檢查一個數字是否為完全立方數。

方法 1:使用使用者自定義函式

要檢查給定數字是否為完全立方數,我們建立一個函式,檢查從 1 到 M 的每個數字,如果其中任何一個數字的立方等於 M,則該數字為完全立方數,否則不是。

演算法

步驟 1 − 建立一個函式。

步驟 2 − 從 1 到 num 執行一個 for 迴圈。

步驟 3 − 使用 if 語句檢查當前迭代器 x 的立方是否等於該數字,如果是,則返回 true。否則返回 false。

步驟 4 − 建立一個變數來儲存輸入數字。

步驟 5 − 將輸入數字傳遞到函式中。

步驟 6 − 列印輸出。

示例

以下 Swift 程式檢查數字是否為完全立方數。

import Foundation
import Glibc

// Function to check if the number is a perfect cube or not
func checkPerfectCube(num: Int) -> Bool {
   for x in 1...num  {
      if x*x*x == num {
         return true
      }
   }
   return false
}

// Input 1
let N1 = 125
if checkPerfectCube(num: N1) {
   print("\(N1) is a perfect cube.")
} else {
   print("\(N1) is not a perfect cube.")
}

// Input 2
let N2 = 98
if checkPerfectCube(num: N2) {
   print("\(N2) is a perfect cube.")
} else {
   print("\(N2) is not a perfect cube.")
}

輸出

125 is a perfect cube.
98 is not a perfect cube.

在上面的程式碼中,我們建立了一個名為 checkPerfectCube() 的函式來檢查給定數字是否為完全立方數。此函式接收一個正整數作為輸入,然後執行一個 for 迴圈來迭代從 1 到 num 的每個數字。在 for 迴圈內,檢查當前迭代器“x”的立方是否等於該數字。如果是,則此函式返回 true。否則返回 false。

方法 2:使用內建函式

要檢查給定數字是否為完全立方數,我們使用 cbrt() 函式查詢輸入值的立方根,然後查詢立方根的立方。如果立方根的立方等於該數字,則該數字為完全立方數。否則不是。

演算法

步驟 1 − 建立一個函式。

步驟 2 − 使用 cbrt() 函式查詢輸入數字的立方根。

步驟 3 − 計算立方根的立方。

步驟 4 − 如果立方根的立方和輸入數字相等,則返回 true。否則返回 false。

步驟 5 − 建立一個變數來儲存輸入數字。

步驟 6 − 將輸入數字傳遞到函式中。

步驟 7 − 列印輸出。

示例

以下 Swift 程式檢查數字是否為完全立方數。

import Foundation
import Glibc

// Function to check if the number is a perfect cube or not
func checkPerfectCube(num: Double) -> Bool {
   let cubeRoot = cbrt(num)
   let cube = cubeRoot * cubeRoot * cubeRoot

 
   // Return return if the cube is equal to num
   
   // Otherwise return false
   return cube == num
}

// Input 1
let M1 = 41.0
if checkPerfectCube(num: M1) {
   print("\(M1) is a perfect cube.")
}
else {
   print("\(M1) is not a perfect cube.")
}

// Input 2
let M2 = 512.0
if checkPerfectCube(num: M2) {
   print("\(M2) is a perfect cube.")
}
else {
   print("\(M2) is not a perfect cube.")
}

輸出

41.0 is not a perfect cube.
512.0 is a perfect cube.

在上面的程式碼中,我們建立了一個名為 checkPerfectCube() 的函式來檢查給定數字是否為完全立方數。此函式接收一個正整數作為輸入,然後使用 cbrt() 函式查詢該數字的立方根。然後,計算結果立方根的立方。現在檢查立方根的立方是否等於輸入數字。如果它們相等,則此函式返回 true,表示該數字是完全立方數。否則返回 false,表示該數字不是完全立方數。

結論

這就是我們如何檢查給定數字是否為完全立方數。

更新於: 2023-02-16

631 次瀏覽

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告
© . All rights reserved.