Python ile Listedeki Tüm Çift Sayıları Ayrı Bir Listede Döndürme
Python kullanarak örnek algoritma sorularını çözdüğümüz serimizin üçüncü sorusuna geçelim:
- Bir dizideki tüm çift sayıları bir liste içinde döndüren bir fonksiyon yazın.
- Örnek girdi: [1, 2, 3, 4, 5, 6]
- Örnek çıktı: [2, 4, 6]
1 2 3 4 5 6 7 8 9 |
# 1. Çözüm Yolu: List Comprehension def cift_sayilari_bul_lc(dizi): return [sayi for sayi in dizi if sayi % 2 == 0] # Örnek kullanım: giris = [1, 2, 3, 4, 5, 6] cikis_lc = cift_sayilari_bul_lc(giris) print("List Comprehension ile Çıkış:", cikis_lc) # [2, 4, 6] |
Sorunun çözümünde ilk olarak “list comprehension” yöntemini kullandım. Bu yöntemle, tek satırda dizi içerisindeki her bir elemanı kontrol edebildim. Kontrol işlemler için for döngüsünü ve if ifadesini kullandım. Eğer bir sayının 2’ye bölümünden kalanı 0 ise bu sayı çifttir ve bu sayıyı sonuç listesine ekliyoruz. Bu şekilde tüm çift sayıları içeren bir liste oluşturdum.
1 2 3 4 5 6 7 8 9 10 11 12 13 |
# 2. Çözüm Yolu: For Döngüsü def cift_sayilari_bul_for(dizi): cift_sayilar = [] for sayi in dizi: if sayi % 2 == 0: cift_sayilar.append(sayi) return cift_sayilar # Örnek kullanım: giris = [1, 2, 3, 4, 5, 6] cikis_for = cift_sayilari_bul_for(giris) print("For Döngüsü ile Çıkış:", cikis_for) # [2, 4, 6] |
For döngüsü kullanarak da bu sorunu çözebiliriz. Bu yaklaşımda, boş bir “cift_sayilar” listesi oluşturduk ve gelen dizi üzerinde döngü ile tüm sayıları teker teker kontrol ediyoruz. Eğer sayı çift ise (yani 2’ye bölündüğünde kalan 0 ise), bu sayıyı “cift_sayilar” listesine ekliyoruz. Döngü tamamlandığında da bu listeyi döndürdüm.