Member-only story
HackerRank — Java Loops II
Döngüler, Math kütüphanesi, Java Loops II sorusunun çözümü
HackerRank üzerindeki Java problemlerini çözüyoruz. Bu yedinci problem. Eğer diğer problem çözümlerini okumadıysanız önce onlara bakmanızı tavsiye ederim, hepsinin toplu hali:
Yazının devamını göremeyenler “bu linkten” erişebilirler.
Önce problemi anlayalım sonra da çözümüne geçelim. Problemi anlama kısmını okuduktan sonra problemi çözmeyi denemenizi sonra da buradaki çözümle karşılaştırmanızı şiddetle tavsiye ederim :)
Problemin linki 👇
Problemi anlayalım
Problemi çözerken önceki “Loop I” probleminde olduğu gibi döngüleri kullanacağız. For loop bu tarz problemler için tercihim. Bu problemden öğrenebileceğimiz konu: Math kütüphanesi.
Math kütüphanesi, çoğu matematiksel işlemi gerçekleştirebileceğimiz methodlar sunar. Eğer Math kütüphanesini kullanmazsak genelde yapmamız gereken işlemler bitwise shift işlemleri olur, ki bunları da her seferinde hesaplamak biraz can sıkıcı. Onun yerine hazır method kullanmak çoğu zaman kullanışlı ve okunaklı oluyor. Bitwise operatörler ileriki problemlerde daha çok haşır neşir olacağımız bir konu, o yüzden Math kütüphanesi ile devam edelim.
Math kütüphanesi içinde tanımlı bir çok metod var, bunlardan en sık kullanılanları:
- Math.max(x,y): Hangi sayının daha büyük olduğunu döner
- Math.min(x,y): Hangi sayının daha küçük olduğunu döner
- Math.sqrt(x): Sayının karekökünü döner
- Math.abs(x): Sayının mutlak değerini döner
- Math.random(): Rastgele bir sayı döner
- Math.floor(x): Sayıya en yakın bir…