Takip et

HackerRank Plus Minus: JavaScript ile Çözüm

HackerRank Plus Minus: JavaScript ile Çözüm

HackerRank platformunda sıkça karşılaşılan “Plus Minus” problemi, bir dizideki pozitif, negatif ve sıfır sayılarının oranlarını hesaplamayı gerektirir. Bu makalede, JavaScript kullanarak bu problemi nasıl çözebileceğinizi adım adım açıklayacağım. Öncelikle problemin tanımını daha iyi anlamak için, sorunun ne istediğini anlamamız gerekir. Sonrasında ise, etkili bir çözüm stratejisi geliştireceğiz. Bu strateji, kodumuzun okunabilirliğini ve performansını artıracaktır.

Problem Tanımı: Verilen bir tamsayı dizisinde, pozitif sayıların, negatif sayıların ve sıfırların oranlarını hesaplayın ve bunları virgülden sonra 6 basamağa yuvarlayarak yazdırın. Örneğin, dizi [-4, 3, -9, 0, 4, 1] ise, pozitif sayıların oranı 0.500000, negatif sayıların oranı 0.333333 ve sıfırların oranı 0.166667 olacaktır.

Çözüm Stratejisi

Bu problemi çözmek için, öncelikle dizideki her bir sayıyı kontrol edip pozitif, negatif veya sıfır olup olmadığını belirlememiz gerekiyor. Ardından, her kategori için bir sayaç tutarak, bu sayıları sayabiliriz. Son olarak ise, bu sayaçları dizinin toplam uzunluğuna bölerek oranları hesaplayacağız. Hesaplanan oranları virgülden sonra 6 basamağa yuvarlamak için JavaScript’in toFixed() metodunu kullanacağız. Bu sayede, istenilen çıktı formatını elde edeceğiz. Bu sayede, hatasız bir sonuç elde edebiliriz.

JavaScript Kodu


function plusMinus(arr) {
  let pozitifSayiSayisi = 0;
  let negatifSayiSayisi = 0;
  let sifirSayisi = 0;

  for (let i = 0; i < arr.length; i++) {
    if (arr[i] > 0) {
      pozitifSayiSayisi++;
    } else if (arr[i] < 0) {
      negatifSayiSayisi++;
    } else {
      sifirSayisi++;
    }
  }

  console.log((pozitifSayiSayisi / arr.length).toFixed(6));
  console.log((negatifSayiSayisi / arr.length).toFixed(6));
  console.log((sifirSayisi / arr.length).toFixed(6));
}

Bu kod, öncelikle üç değişken tanımlar: pozitif, negatif ve sıfır sayılarının sayısını tutacak sayaçlar. Daha sonra, dizi üzerinde döngü yaparak her bir elemanı kontrol eder ve ilgili sayaçları artırır. Son olarak, her bir sayaç dizinin uzunluğuna bölünerek oranlar hesaplanır ve toFixed(6) ile virgülden sonra 6 basamağa yuvarlanır. Bu oranlar konsola yazdırılır. Bu yöntem oldukça basit ve anlaşılırdır.

Ek Bilgiler ve İpuçları

Bu problem için daha karmaşık çözüm yolları da mevcuttur, ancak bu basit yaklaşım hem okunabilir hem de performans açısından oldukça yeterlidir. Daha büyük diziler için performansı iyileştirmek isterseniz, daha gelişmiş algoritmalar kullanabilirsiniz. Ancak bu problem için gerekli değildir. Ayrıca, kodun okunabilirliğini artırmak için anlamlı değişken isimleri kullanmayı unutmayın. Bu, kodun bakımını ve anlaşılmasını kolaylaştırır. Kodlama yaparken dikkat edilmesi gereken hususlar arasında hata ayıklama ve yorum satırları da yer almalıdır.

Umarım bu makale HackerRank Plus Minus problemini çözmenize yardımcı olmuştur. Daha fazla JavaScript ve algoritma çözümü için fatihsoysal.com adresini ziyaret edebilirsiniz.

Faydalı Kaynaklar:

#Etiketler: HackerRank, Plus Minus, JavaScript, Çözüm, Algoritma, Programlama, Kodlama, Oran, Dizi, toFixed, JavaScript Algoritmaları

Yorumlar
İçeriği beğendiniz mi? Bir tartışma başlatın veya görüşlerinizi paylaşın.
Yorum Yaz

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Gönder

E-posta Bülteni
Yazılım Topluluğuna Katılın
En son güncellemeleri, yaratıcı ipuçlarını ve özel kaynakları doğrudan e-posta kutunuza alın. Tasarım ve inovasyonun geleceğini birlikte keşfedelim.
Exit mobile version