Nilai terkecil di dalam Array yang lebih besar untuk tiap element

Halo para master, adakah disini yg bisa memberi saya pencerahan utk menyelesaikan logika seperti ini (dengan javascript):

Misalnya saya punya set bilangan (dalam array) sebanyak "n" bilangan acak. Berdasarkan set bilangan tersebut, saya pengen nyari bilangan terkecil yang lebih besar dari setiap bilangan.

----------------------------------------------------------------------------

Contoh input:

3  5  6  2  3  9  4  3  7

Expected output:

4  6  7  3  4  9  5  4  9

4 (nilai terkecil yg lebih besar dari 3)

6 (nilai terkecil yg lebih besar dari 5)

7 (nilai terkecil yg lebih besar dari 6)

3 (nilai terkecil yg lebih besar dari 2)

4 (nilai terkecil yg lebih besar dari 3)

9 (pengecualian, karna paling besar)

5 (nilai terkecil yg lebih besar dari 4)

4 (nilai terkecil yg lebih besar dari 3)

9 (nilai terkecil yg lebih besar dari 7)

----------------------------------------------------------------------------

Kode yg saya punya sekarang baru bekerja utk index[0] saja, bagaimana ya agar bisa berulang utk tiap indexnya?

----------------------------------------------------------------------------

let input = prompt("enter nilai input:").split(" ");
function BiggerThan(inArray) {
 return inArray > input;}
let arrBiggerElements = input.filter(BiggerThan);
let nextElement = Math.min.apply(null, arrBiggerElements);
console.log(nextElement);

image.png

avatar mpales7
@mpales7

6 Kontribusi 2 Poin

Diperbarui 4 tahun yang lalu

1 Jawaban:

<div>sepertinya pertanyaan dan sample (contoh input dan expected output) berbeda.<br>kalau dibilang bilang terkecil min-dari-array, ini lebih ke max-dari-array.<br>Dan di-index terakhir itu max-dari-array.<br><br>-------------------------------------------<br>kalau dari code yang ada, tinggal di-loop input variable.<br>caranya banyak dari for-each, for, map dan lainnya.<br><br>Code dibawah, loopnya pakai map.<br><figure data-trix-attachment="{&quot;contentType&quot;:&quot;image/png&quot;,&quot;filename&quot;:&quot;sk_mpales7_20200918MathMax_4.png&quot;,&quot;filesize&quot;:11907,&quot;height&quot;:271,&quot;url&quot;:&quot;https://i.ibb.co/M1bhdbL/sk-mpales7-20200918-Math-Max-4.png&quot;,&quot;width&quot;:727}" data-trix-content-type="image/png" data-trix-attributes="{&quot;presentation&quot;:&quot;gallery&quot;}" class="attachment attachment--preview attachment--png"><img src="https://i.ibb.co/M1bhdbL/sk-mpales7-20200918-Math-Max-4.png" width="727" height="271"><figcaption class="attachment__caption"><span class="attachment__name">sk_mpales7_20200918MathMax_4.png</span></figcaption></figure></div>

avatar soeleman
@soeleman

120 Kontribusi 147 Poin

Dipost 4 tahun yang lalu

Tanggapan

sudah saya update penjelasannya di pertanyaan mas, biar lebih jelas

updated jawaban

Login untuk ikut Jawaban