Menu
Coddy logo textTech

Sıralı Yapı Operatörleri

Coddy'nin Swift Journey'sinin Temeller bölümünün bir parçası — ders 75 / 86.

Swift, döngüler yazmadan diziler hakkında hızlıca bilgi toplamanıza olanak tanıyan yararlı yerleşik özellikler ve yöntemler sunar. Bu dizi operatörleri, minimum kodla yaygın hesaplamaları yapmanıza yardımcı olur.

count özelliği, bir dizideki öğe sayısını döndürür:

let scores = [85, 92, 78, 90]
print(scores.count)  // 4

Sayısal diziler için Swift, en küçük ve en büyük değerleri bulmak için yöntemler sunar. Boş bir dizinin minimum veya maksimum değeri olmadığı için min() ve max() yöntemleri opsiyoneller (optionals) döndürür:

let temperatures = [72, 68, 75, 80, 65]

if let lowest = temperatures.min() {
    print(lowest)  // 65
}

if let highest = temperatures.max() {
    print(highest)  // 80
}

Tüm öğelerin toplamını hesaplamak için reduce yöntemini kullanın. Bir başlangıç değerinden başlayarak tüm değerleri birleştirir:

let prices = [10, 20, 30]
let total = prices.reduce(0, +)
print(total)  // 60

0 başlangıç değeridir ve + Swift'e her bir öğeyi ara toplama eklemesini söyler. Bu operatörleri birleştirerek kolayca bir ortalama hesaplayabilirsiniz:

let grades = [85, 90, 78, 92]
let average = grades.reduce(0, +) / grades.count
print(average)  // 86
challenge icon

Görev

Kolay

scores dizisini alan ve dizi hakkındaki istatistikleri içeren bir özet dizesi döndüren bir analyzeScores fonksiyonu yazın.

Puanların sayısını, minimumunu, maksimumunu ve ortalamasını hesaplamak için dizi operatörlerini kullanın, ardından bunları tek bir özet dizesi şeklinde formatlayın.

Mantık:

  1. count kullanarak elemanların toplam sayısını alın
  2. min() kullanarak minimum değeri bulun
  3. max() kullanarak maksimum değeri bulun
  4. reduce(0, +) kullanarak toplamı hesaplayın ve ortalamayı bulmak için eleman sayısına bölün
  5. Tüm istatistikleri içeren formatlanmış bir dize döndürün

Parametreler:

  • scores ([Int]): Tam sayı puanlardan oluşan bir dizi (en az bir eleman içereceği garanti edilir)

Dönüş Değeri: İstatistikleri içeren formatlanmış bir dize (String). Format: "Count: X, Min: X, Max: X, Avg: X"

Örnek: Eğer scores dizisi [85, 90, 78, 92] ise, fonksiyon "Count: 4, Min: 78, Max: 92, Avg: 86" döndürmelidir.

Not: Ortalama, tam sayı bölmesi kullanılarak hesaplanmalıdır (ondalık basamak olmamalıdır).

Kopya kağıdı

Swift, döngüler yazmadan dizilerle çalışmak için yerleşik özellikler ve yöntemler sunar.

count özelliği eleman sayısını döndürür:

let scores = [85, 92, 78, 90]
print(scores.count)  // 4

min() ve max() yöntemleri en küçük ve en büyük değerleri bulur. Boş dizilerin minimum veya maksimum değeri olmadığı için opsiyonel (optional) değerler döndürürler:

let temperatures = [72, 68, 75, 80, 65]

if let lowest = temperatures.min() {
    print(lowest)  // 65
}

if let highest = temperatures.max() {
    print(highest)  // 80
}

reduce yöntemi, başlangıç değerinden başlayarak tüm değerleri birleştirerek toplamı hesaplar:

let prices = [10, 20, 30]
let total = prices.reduce(0, +)
print(total)  // 60

reduce ve count özelliklerini birleştirerek bir ortalama hesaplayın:

let grades = [85, 90, 78, 92]
let average = grades.reduce(0, +) / grades.count
print(average)  // 86

Kendin dene

func analyzeScores(scores: [Int]) -> String {
    // Kodunuzu buraya yazın
}
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Temeller bölümündeki tüm dersler