使用函式顯示區間內素數的Swift程式


本教程將討論如何編寫使用函式顯示區間內素數的Swift程式。

素數是指大於1且只有兩個因數(1和它本身)的數。例如,7是素數,因為它只有1和7兩個因數。

以下是演示:

輸入

假設給定的輸入是:

Lower Interval = 18
Upper Interval = 42

輸出

期望的輸出是:

Prime numbers between 18 to 42 are
19
23
29
31
37
41

演算法

以下是演算法:

步驟1 - 建立一個函式

步驟2 - 迭代給定區間內的每個數字。

步驟3 - 跳過1和0,因為它們不是素數。

步驟4 - 宣告一個標誌變數。它表示給定數字是否是素數。如果標誌 = 0,則該數字是素數;否則不是。

步驟5 - 執行另一個for迴圈來檢查給定數字是否是素數。

步驟6 - 宣告上下限區間。

步驟7 - 呼叫函式並將上下限區間作為引數傳遞。

步驟8 - 列印輸出。

示例1

下面的程式演示瞭如何使用函式顯示區間內的素數。

import Foundation
import Glibc
func FindPrimeNumber(lowerInterval: Int, upperInterval: Int){
   for x in stride(from:lowerInterval, to: upperInterval+1, by:1){
      if (x == 0 || x == 1){
         continue
      }
      // Flag tells if x is a prime number or not
      var flag = 0
      for y in stride(from:2, to: x/2 + 1, by:1){
         if ((x % y) == 0){
            flag = 1
            break
         }
      }
      // If the flag = 0 then the number is prime number
      if (flag == 0){
         print(x)
      }
   }
}
var x = 5
var y = 19
print("Prime numbers in between (x) to (y) are:")
FindPrimeNumber(lowerInterval: x, upperInterval: y)

輸出

Prime numbers in between 5 to 19 are:
5
7
11
13
17
19

在上面的程式碼中,我們建立了一個名為FindPrimeNumber()的函式。在這個函式中,我們找到5到19之間的素數。在這裡,我們使用了巢狀的for迴圈以及stride()函式。外部for迴圈用於迭代給定區間內的每個數字,內部for迴圈用於透過查詢餘數來檢查給定數字是否是素數。

for y in stride(from:2, to: x/2 + 1, by:1){
   if ((x % y) == 0){
      flag = 1
      break
   }
}

如果餘數等於0,則該數字不是素數,所以標誌 = 1,並中斷迴圈。如果餘數不等於0,則該數字是素數,所以標誌 = 0,並顯示該數字。這個過程將持續到上限區間。

示例2

下面的程式演示瞭如何使用函式顯示區間內的素數。

import Foundation
import Glibc
func FindPrimeNumber(number: Int)->Int{
   var flag = 1
   for x in stride(from:2, to: number/2 + 1, by:1){
      if ((number % x) == 0){
         flag = 0
         break
      }
   }
   return flag
}
var x = 1
var y = 19
print("Prime numbers in between (x) to (y) are:")
for k in x...y{
   if (k == 0 || k == 1){
      continue
   }
   let flag = FindPrimeNumber(number: k)
   if (flag == 1){
      print(k)
   }
}

輸出

Prime numbers in between 1 to 19 are:
2
3
5
7
11
13
17
19

更新於:2022年12月13日

199次瀏覽

開啟你的職業生涯

完成課程獲得認證

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