İçeriğe geç

Fizz Buzz algoritması ve Kod Katası

Merhabalar bu yazımda Kod katası nedir ve Basit bir kata algoritmalarından olan Fizz Buzz algoritması nasıl yazılır örneği vereceğim.

Bildiğimiz gibi programlamada spor dalları veya bilimin hangi dalı olursa olsun uğraşılıp üstünde çalışılarak gelişen bir olay. Yazılım dünyasında kod katası diye geçen bir deyim vardır. Bu deyim kod pratiği anlamına gelmektedir. Yani yazılan kodun mantık ve düşünmeye bizi ne kadar sevk ettiği ile alakalıdır.

Örneğin Web veya Mobil arayüz geliştirirken beynimizin yorulmas seviyesi ile mantıksal olarak bizi zorlayan algoritmaları koda döktüğümüzdeki yorulma oranı aynı değildir. Bu sebeble analitik düşünme ve karar verme yeteneğimizi algoritmik çalışmalar daha çok geliştirmektedir.Kata yapmanın amacı çalışır bir uygulama geliştirmek değildir.Programcı sorunun basitliğine değil, kata esnasında tekrarladığı işlemlere konsantre olmalıdır.

Fizz Buzz örneğide çok basit bir algoritma olmasına rağmen çoğu iş görüşmelerinde çok kısa sürelerde bu tarz algoritmaları çözümlemeniz istenmektedir.

Bu örnekte sayı setinde üç sayısına tam bölünen sayılar Fizz, beş sayısı ile tam bölünenlerde Buzz kelimesine karşılık gelmekte. on beş sayısına bölünebilende Fizz Buzz kelimesine karşılık gelir.

extension String {
    func toInt() -> Int {
        return Int(self)!
    }
}

func fizzBuzz(_ n:Int) -> [String] {
    
    var fbSet:[String] = []
    
    for c in 1...n {
        fbSet.append("\(c)")
    }
    
    for i in 0..<fbSet.count {
        
        if fbSet[i].toInt()%3 == 0 && fbSet[i].toInt()%5 == 0 {
            fbSet[i] = "Fizz Buzz"
        } else if fbSet[i].toInt()%3 == 0 {
            fbSet[i] = "Fizz"
        } else if fbSet[i].toInt()%5 == 0 {
            fbSet[i] = "Buzz"
        }
        
    }
    
    return fbSet
}

print(fizzBuzz(100))

 

Kategori:Algorithm

Bu yazı yorumlara kapalı.

Copyright © 2022 Kenan Atmaca