ETİKETLER

ios

İÇERİK TÜRLERİ

Dizilerin Kopyasının Oluşturulması

 

Bir dizinin bir kopyasını çok kısa bir yoldan oluşturmak mümkündür. Basit bir atama işlemi dizinin bir kopyasını oluşturacaktır.

 

ÖRNEK:

var x:[Int]=[12,23,3,87,45,9,11,34]

var y=x//x’in kopyası y oluşturuluyor

print("x DİZİSİ....\(x)")

print("y DİZİSİ....\(y)")

var z=y//y’nin kopyası z oluşturuluyor

print("z DİZİSİ....\(z)")

 

PROGRAMIN ÇIKTISI

x DİZİSİ....[12, 23, 3, 87, 45, 9, 11, 34]

y DİZİSİ....[12, 23, 3, 87, 45, 9, 11, 34]

z DİZİSİ....[12, 23, 3, 87, 45, 9, 11, 34]

 

Kare Matris Swift Programı

BİR KARE MATRİSİN ESAS KÖŞEGEN ELEMANLARININ TOPLAMINI VE DİĞER KÖŞEGEN ELEMANLARININ ÇARPIMINI BULAN SWIFT PROGRAMI


var t: [[Int]] = [
    [3, 5, 7, 8],
    [2 ,4 ,5 ,6],
    [3 ,6 ,1, 9],
    [1 ,3 ,6 ,8]
]

var s: Int = 0
var p: Int = 1

for i in 0...3 {
    for j in 0...3 {
        print("\(t[i][j])....", terminator: "")
    }
    
    print()
}

for i in 0...3 {
    s = s + t[i][i]
    p = p * t[i][3-i]
}

print()

print("ESAS KÖŞEGEN ELEMANLARI TOPLAMI.....\(s)")
print("DİĞER KÖŞEGEN ELEMANLARI ÇARPIMI.....\(p)")

 

PROGRAMIN ÇIKTISI

Bir Tablonun Satır ve Sütun Toplamları ve Genel Toplamı

 

Pratikteki pek çok uygulamada bir tablonun satır toplamları sütun toplamları ve genel toplamı istenebilir. Örneğin Excel’de sum fonksiyonu ile bunu kolayca gerçekleştirebilirsiniz. Oysa burada vereceğimiz Swift kodu, tabiri caizse Excel’deki sum fonksiyonunun arka cephesi olacaktır.

 

 

ÖRNEK PROGRAM: TABLODA TOPLAMLAR

Dizilere İlk Değer Atamak için Alternatif bir Yol:count ve repeatedValue Metotları

Double türde bir dizinin başlangıçta 10 elemanlı olacağını ve her elemanının da 1.5 olacağını planlamış olalım. Bunu gerçekleştirmenin en pratik yolu, count ve repeatedValue(Tekrarlanan Değer) metotlarını kullanmaktır.

ÖRNEK:

 

var a = [Double](repeating:1.5, count:10)

print("a...DİZİSİ..\(a)")

print("DİZİDEKİ ELEMAN SAYISI=\(a.count)")

Programın çıktısı ise aşağıdadır:

a...DİZİSİ..[1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5]

DİZİDEKİ ELEMAN SAYISI=10

 

 

Dizinin Elemanlarını Tarama

 

for in komutu ile dizi içindeki tüm elemanlara sıra ile erişilebilir.

 

ÖRNEK:

Aşağıdaki örnek program içinde dizi elemanları for in komutu ile listelenmiştir:

var a: [Int] = [12, 22, 67, 65, 89, 111]
print("a...DİZİSİ..\(a)")
print("a DİZİSİ")
for i in a {
    print(i)
}

 

PROGRAMIN ÇIKTISI:

a...DİZİSİ..[12, 22, 67, 65, 89, 111]
a DİZİSİ
12
22
67
65
89
111

 

 

COUNT METODU

 

Dizi İçine Aralık (Range) İfadesi ile Atama Yapma

PROGRAMIN ÇIKTISI:


Swift’in diğer ilginç bir özelliği de, dizi içine (…) şeklindeki aralık ifadesi yardımı ile atama yapılabilmesidir.

ÖRNEK:

Aşağıdaki örnekte a dizisi oluşturulduktan sonra, indisleri 2, 3, 4 ve 5 olan elemanların yerine, 23, -9, -7, 45, 34, 8 sayıları yerleştirilmektedir:

Üçlü Koşul Operatörü

 

Bu operator aşağıdaki şemaya göre çalışır:

 

koşul ? true ise yapılacak iş : false ise yapılacak iş

 

ÖRNEK:

var x:Int

x = -4

x>=0 ? print("\(x) POZİTİF YA DA SIFIRDIR..."):print("\(x) NEGATİFTİR...")

PROGRAMIN ÇIKTISI

 

-4 NEGATİFTİR...

 

TİP CASTING OPERATÖRLERİ

Bunlar iki tanedir : as ve is

Aşağıdaki biçimlerde kullanılırlar:

Ifade as tip

ifade as? tip

ifade is tip

ÖRNEK:

Atama (Assignment) Operatörü

 

Atama operatörünün işlevi diğer dillerden oldukça farklıdır. Genel atama ifadesi,

 

Ifade=Değer

 

şeklindedir. Burada ifade bir tuple türünde ise değer de tuple türünde olmalıdır.

 

ÖRNEK:

var x:String

var z:Int

var m:String

var k:Int

(x , (z,m,k)) = ("fener", (13,"gs",78))

print("x=\(x)")

print("z=\(z)")

print("m=\(m)")

print("k=\(k)")

 

 

 

PROGRAMIN ÇIKTISI

x=fener

z=13

m=gs

k=78

“_” SEMBOLÜ

 

İkili İfadeler

 

Bunların genel biçimi,

 

Operand1 Operatör Operand2

 

şeklindedir. Örneğin, çarpma ifadesi, a*b şeklinde bu kalıba uymaktadır.

Swift’te ikili ifadeler diğer dillerde de olduğu gibi çeşitli sınıflara ayrılırlar:

 

I. Üstel ifadeler (Exponentiative)

 

a) << Bit düzeyinde sola öteleme

b) >> Bit düzeyinde saga öteleme

 

II. Çarpımsal (Multiplicative) ifadeler

a) * çarpma

b) / bölme

c) % kalan

d) &* Overflow ihmal edilerek çarpma

Üç Boyutlu Dizi Tanımlama

 

ÖRNEK:

var ucBoyut: [[[Int]]] = [[[11, 3], [43, 6],[5,8]], [[45, 96], [17, 78]]]

print(ucBoyut)

 

Programın çıktısı ise aşağıdadır:


 

[[[11, 3], [43, 6], [5, 8]], [[45, 96], [17, 78]]]

OPSİYONEL TİP (OPTIONAL TYPE)

 

Opsiyonel tipi tanımlamak için de 2 farklı yol vardır:

var DegAd:Int?

var DegAd:Optional<Int>

Her ikisinde de DegAd adlı değişken opsiyonel türde tanımlanmıştır.

 

Abone ol ios