Latihan 1 dari materi Metrics & Monitoring di DevOps — praktek dengan editor kode interaktif, test case otomatis, dan hint terpandu. Langsung jalan di browser.
Lengkapi function calculatePercentile(values, percentile) dengan metode nearest rank.
Urutkan salinanvalues dari kecil ke besar, pakai pembanding (a, b) => a - b. Array aslinya jangan diubah.
Hitung posisinya: Math.ceil((percentile * jumlahElemen) / 100) - 1. Posisi versi manusia dibulatkan ke atas, lalu dikurangi 1 karena index array mulai dari 0.
Kembalikan elemen di posisi itu.
Yang dinilai nilai kembaliannya:
calculatePercentile([10, 20, 30, 40, 50], 50) harus 30
calculatePercentile([10, 20, 30, 40, 50], 95) harus 50
Cek tersembunyi: p99 dari sepuluh angka 100, 200, sampai 1000 harus 1000, dan calculatePercentile([5, 3, 1, 4, 2], 20) harus 1 (array yang belum urut).
Dua baris console.log di kode awal biarkan saja.
Hint
Persentil dibaca dari daftar yang sudah urut: p95 adalah nilai di posisi 95% dari daftar itu, dihitung dari jumlah elemennya.
Salin dulu dengan [...values], urutkan dengan sort((a, b) => a - b), hitung index = Math.ceil((percentile * sorted.length) / 100) - 1, lalu kembalikan sorted[index].
const sorted = [...values].sort((a, b) => a - b); const index = Math.ceil((percentile * sorted.length) / 100) - 1; return sorted[index];
</>{ }.css=>#idfn()
Versi baru
HyperSheets
bagian dari BelajarWeb.dev
0%
Membuka gerbang…
HyperSheets
Memperbarui Aplikasi
Versi baru tersedia. Halaman akan dimuat ulang otomatis...