使用陣列計算平均值的Swift程式


在本文中,我們將學習如何編寫一個Swift程式,使用陣列計算平均值。平均值定義為給定序列中所有元素之和與該序列中元素總數之比。平均值的通用公式為:

Average = (p1+p2+p3+..+pn)/n

這裡我們使用以下方法使用陣列計算平均值:

  • 使用預定義函式

  • 不使用預定義函式

方法1:使用預定義函式

要查詢給定陣列的平均值,我們使用`reduce()`方法查詢所有元素的總和,並使用`count`屬性查詢給定陣列中存在的元素總數。`reduce(_:_:)`方法用於根據給定的閉包組合給定的序列。

語法

func reduce<result>(_initial result: result, 
_nextResult:(result, Self.Element) throws->result)rethrows->result

這裡,`initial`引數用於初始累積值,並在第一次執行閉包時傳遞到`nextResult`。而`nextResult`是一個閉包,它將累積值和序列的項新增到一個新的累積值中,它在`nextResult`閉包的下一次呼叫中進一步使用。

演算法

  • 步驟1 - 建立一個整數型別的陣列。

  • 步驟2 - 使用`reduce`函式查詢陣列中所有元素的總和。

var arraySum = myArray.reduce(0, +)
  • 步驟3 - 使用`count`屬性計算陣列的元素總數。

var length = myArray.count
  • 步驟4 - 透過將總和除以陣列的元素總數來查詢給定陣列的平均值。

var average = Double(arraySum)/Double(length)
  • 步驟5 - 列印輸出。

示例

以下Swift程式使用預定義函式計算陣列的平均值。

import Foundation
import Glibc
 
// Creating an array of integer type
var myArray : [Int] = [3, 5, 6, 74, 32, 7, 31]

// Finding the sum of the given array elements
var arraySum = myArray.reduce(0, +)

// Calculating the total number of 
// elements present in the array
var length = myArray.count

// Finding the average
var average = Double(arraySum)/Double(length)

print("Array:", myArray)
print("Average:", average)

輸出

Array: [3, 5, 6, 74, 32, 7, 31]
Average: 22.571428571428573

在上面的程式碼中,我們建立了一個整數型別的陣列。首先,我們使用`reduce(0,+)`查詢所有陣列元素的總和,其中0是初始值,它將與給定陣列的第一個元素相加,然後結果將新增到下一個值,此過程將持續到最後一個元素。現在我們使用`count`屬性計算元素總數,然後透過將總和除以元素總數來查詢平均值並列印輸出。

方法2:不使用預定義函式

我們也可以使用迴圈查詢給定陣列的平均值。在這裡,我們使用`for`迴圈新增給定陣列的所有元素,然後查詢平均值。

演算法

  • 步驟1 - 建立一個整數型別的陣列。

  • 步驟2 - 使用`for`迴圈查詢陣列中所有元素的總和。

for x in 0..<myArray.count{
   arraySum += myArray[x]
}
  • 步驟3 - 使用`count`屬性計算陣列的元素總數。

var length = myArray.count
  • 步驟4 - 透過將總和除以陣列的元素總數來查詢給定陣列的平均值。

var average = Double(arraySum)/Double(length)
  • 步驟5 - 列印輸出。

示例

以下Swift程式使用迴圈計算陣列的平均值。

import Foundation
import Glibc
 
// Creating an array of integer type
var myArray : [Int] = [4, 56, 78, 21, 5, 6, 76, 3, 21, 1]

// Finding the sum of the given array elements
var arraySum = 0

for x in 0..<myArray.count{
   arraySum += myArray[x]
}

// Calculating the total number of 
// elements present in the array
var length = myArray.count

// Finding the average
var average = Double(arraySum)/Double(length)

print("Array:", myArray)
print("Average:", average)

在下面的示例中,我們使用條件語句檢查給定陣列是否為空。

輸出

Array: [4, 56, 78, 21, 5, 6, 76, 3, 21, 1]
Average: 27.1

在上面的程式碼中,我們建立了一個整數型別的陣列。首先,我們使用`for`迴圈查詢給定陣列元素的總和。這裡`for`迴圈遍歷每個元素並將它們加在一起,並將結果儲存到一個變數中。現在我們使用`count`屬性查詢給定陣列中存在的陣列總數,然後透過將總和除以元素總數來查詢平均值並列印輸出。

結論

這就是我們如何使用陣列查詢平均值的方法。在這裡,我們可以使用預定義函式或迴圈來查詢給定陣列的平均值。

更新於:2022年12月29日

3K+ 次瀏覽

開啟您的職業生涯

透過完成課程獲得認證

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