Ana içeriğe geç

Diziler ve Sözlükler

Lordex'te karmaşık veri yapıları oluşturmak için diziler ve sözlükler kullanılır.

Diziler (Arrays)

Dizi Oluşturma

// Boş dizi
bos_dizi = []

// Elemanlarla dizi
sayilar = [1, 2, 3, 4, 5]
meyveler = ["Elma", "Armut", "Muz"]
karisik = [1, "iki", 3.14, evet]

Dizi Elemanlarına Erişim

meyveler = ["Elma", "Armut", "Muz", "Çilek"]

ilk = meyveler[0] // "Elma"
ikinci = meyveler[1] // "Armut"
son = meyveler[3] // "Çilek"

yaz(ilk)
İndeks Uyarısı

Diziler 0'dan başlar. İlk eleman dizi[0], ikinci eleman dizi[1] şeklindedir.

Dizi Güncelleme

sayilar = [10, 20, 30]
sayilar[1] = 99
yaz(sayilar) // [10, 99, 30]

Dizi İşlemleri

// Eleman ekleme
liste = [1, 2, 3]
ekle(liste, 4)
yaz(liste) // [1, 2, 3, 4]

// Uzunluk
yaz(uzunluk(liste)) // 4

// Eleman silme
sil(liste, 0) // İlk elemanı sil
yaz(liste) // [2, 3, 4]

Diziler Üzerinde Döngü

meyveler = ["Elma", "Armut", "Muz"]

icin (meyve in meyveler) {
yaz("- " + meyve)
}

İç İçe Diziler (Matris)

matris = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]

// Erişim
eleman = matris[0][1] // 2 (1. satır, 2. sütun)
yaz(eleman)

// Döngü ile gezinme
icin (satir in matris) {
icin (eleman in satir) {
yaz(eleman)
}
}

Sözlükler (Dictionaries)

Sözlük Oluşturma

// Boş sözlük
bos_sozluk = {}

// Elemanlarla sözlük
kisi = {
"ad": "Ahmet",
"soyad": "Yılmaz",
"yas": 30,
"sehir": "İstanbul"
}

Sözlük Erişimi

kisi = {
"ad": "Ahmet",
"yas": 25
}

isim = kisi["ad"] // "Ahmet"
yas = kisi["yas"] // 25

yaz("İsim: " + isim)
yaz("Yaş: " + yas)

Sözlük Güncelleme

kisi = {"ad": "Ali", "yas": 20}

// Değer değiştirme
kisi["yas"] = 21

// Yeni anahtar ekleme
kisi["sehir"] = "Ankara"

yaz(kisi)

İç İçe Sözlükler

ogrenci = {
"ad": "Ayşe",
"notlar": {
"matematik": 90,
"fizik": 85,
"kimya": 88
},
"iletisim": {
"email": "ayse@example.com",
"telefon": "555-1234"
}
}

// Erişim
mat_notu = ogrenci["notlar"]["matematik"]
yaz("Matematik notu: " + mat_notu)

Karmaşık Yapılar

// Öğrenci listesi
ogrenciler = [
{"ad": "Ali", "not": 85},
{"ad": "Ayşe", "not": 92},
{"ad": "Mehmet", "not": 78}
]

// Döngü ile gezinme
icin (ogr in ogrenciler) {
yaz(ogr["ad"] + ": " + ogr["not"])
}

Pratik Örnekler

Telefon Rehberi

rehber = {
"Ali": "555-1234",
"Ayşe": "555-5678",
"Mehmet": "555-9012"
}

isim = oku("Kimi arıyorsunuz?")
telefon = rehber[isim]
yaz("Telefon: " + telefon)

Envanter Sistemi

urunler = [
{"ad": "Kalem", "fiyat": 5, "stok": 100},
{"ad": "Defter", "fiyat": 15, "stok": 50},
{"ad": "Silgi", "fiyat": 3, "stok": 200}
]

yaz("=== ÜRÜNLER ===")
icin (urun in urunler) {
yaz(urun["ad"] + " - " + urun["fiyat"] + " TL")
yaz("Stok: " + urun["stok"])
yaz("---")
}

İpuçları

En İyi Pratikler
  1. Dizi elemanlarına erişmeden önce uzunluğu kontrol edin
  2. Sözlük anahtarlarının var olduğundan emin olun
  3. İlgili verileri sözlüklerde gruplayın
  4. Karmaşık veriler için iç içe yapılar kullanın
Dikkat Edilmesi Gerekenler
  • Geçersiz dizi indeksi hata verir
  • Olmayan sözlük anahtarına erişim hata verebilir
  • Diziler değiştirilebilir (mutable), dikkatli olun

Sonraki Adımlar