Menyelesaikan Plus Minus Challenge dengan Javascript HackerRank - hapidzfadli.id
News Update
Loading...

Sabtu, 17 Oktober 2020

Menyelesaikan Plus Minus Challenge dengan Javascript HackerRank

 


Pada postingan kali ini saya akan kembali menyelesaikan tantangan dari hackerrank. Tantangan yang akan saya selesaikan yaitu Plus Minus Challenge. Dalam kasus ini kita di suruh untuk membuat function atau fungsi untuk menghitung rasio untuk angka positif, negatif dan nol

Contoh:

Jika kita di beri array dengan bilangan bulat di dalamnya seperti berikut [1, 2, 0, -1, -2]. Dalam array ini terdapat dua bilangan positif, dua bilangan negatif dan satu angka nol. Setelah menemukan berapa jumlah bilangan positif, negatif dan nol, selanjutnya kita bagi setiap jumlah bilangan ini dengan pangjang array nya, dalam array di atas panjang array nya 5. Jadi untuk bilangan positif rasionya 2 / 5 = 0, 4, untuk bilangan negatif 2 / 5 = 0,4 dan untuk nol 1 / 5 = 0,2. 

Jadi Hasilnya adalah:

  • Positif = 0,4
  • Negatif = 0,4
  • Nol = 0,1

Berikut code pemrograman untuk menyelesaikan Plus Minus Challenge menggunkan javascript:

function plusMinus(arr) {
var positif = 0
var negative = 0;
var nol = 0;

for( var i = 0; i < arr.length; i++){
    if (arr[i] < 0){
        negative += 1 / arr.length;
    }
    if (arr[i] > 0){
        positif += 1 / arr.length;
    }
    if (arr[i] === 0){
        nol += 1 / arr.length;
    }
}
console.log(positif);
console.log(negative);
console.log(nol);

}

Dalam kode di atas saya mendeklarasikan tiga buah variabel. Variabel positif di tujukan untuk menyimpan jumlah bilangan positif, variabel negatif untuk jumlah bilangan negatif begitupun dengan variabel nol untuk jumlah bilangan nol. 

Penggunaan for lopp di tujukan untuk mengulangi setiap bilangan yang ada dalam array, di dalam for terdapat tiga buah kondisi menggunakan if. Kondisi pertama bila bilangan array lebih kecil dari nol, jumlah bilangan negatif bertambah satu. Kondisi bila bilangan array lebih besar dari nol jumlah bilangan positif bertambah satu. Dan kondisi ketiga jika bilangan array sama dengan nol jumlah bilangan nol bertambah satu. Terakhir tampilkan setiap variabel dengan console.log.

Berikut  kode lain yang dapat anda gunakan:

function plusMinus(arr) {
     let positives = 0, negatives = 0, zeros = 0;
     const len = arr.length || 0;
      
     if (len > 0 && len <= 100) {
          arr.map((elem, key) => {
               if (elem > 0) {
                    positives++;
               } else if (elem < 0) {
                    negatives++; 
               } else {
                    zeros++;
               }
                  
               return elem; 
          }); 
     } 
     
     console.log((positives / len) || 0);
     console.log((negatives / len) || 0);
     console.log((zeros / len) || 0);      
}

Share with your friends

Give us your opinion

Notification
This is just an example, you can fill it later with your own note.
Done