Challenge’ın 5. gününden Selamlaar, gelsin bakalım günün soru ve çözümü.
Günün Sorusu: Staircase 🦉
Satırın en sonundan( n-1 kadar boşluk) başlayıp 1 yıldız ekleyerek n kadar yıldız olana kadar yıldız satırı oluşturmamızı istemişler.
Hiç yıldızlı soru çözdünüz mü? Çözdüyseniz benzer mantıkla işlem yapıcaz. Çözmediyseniz hadi ilk yıldızlı soru mantığını çözelim :)
Çözüm 1: Arkadaşlar space ve star adında iki değişken oluşturuyorum. benden istenen kareleri hesaplamak için bir for yazıyorum. Ama her satır için space’de eklemem gerekiyor. Bunu da for döngüsü ile yapabilirim. Space’imin sayısını bir önceki for’un index’inden başlatıyorum.
Çözüm 2: Ama for içinde for olunca bir durup düşünmek gerekiyor daha iyi nasıl yazabilirim diye performansı düşüren bir durum çünkü :(
Kodumuzu biraz daha dikkatli inceleyelim. Farkettiniz mi? Space sayımızı n sayısından star’ın uzunluğunu çıkarınca bulabiliyoruz. Ee çok güzel bir tane for kalkıyor yani. Tamam ama uzunluğu bulduk elimizde sadece sayı var. Boşluğu nasıl ekleyeceğiz?
O kısımda repeat() devreye giriyor. O da bize boşluğu kaç kere yazabileceğimize yardım ediyor. Bize sonuç olarak çiçek gibi bir fonksiyon veriyor.
Eveeeet 5. günün sorusu da geldi 🥳Sizin de ben daha güzel birşey düşündüm dediğiniz bir şey varsa lütfen bizim için de yorum kısmına yazın. Yukarıdaki çözümü github’ta da bulabilirsin 🎉