Menu
CoddyTech

Rangkuman: Pengurutan papan peringkat

Termasuk bagian Logika dan Alur dalam perjalanan PHP di Coddy. Pelajaran 26 dari 68.

challenge icon

Tantangan

Mudah

Kamu akan menerima dua input: pertama, associative array berisi nama pemain dan skornya dalam format JSON, dan kedua, urutan pengurutan (bisa "asc" atau "desc"). Baca kedua input, ubah string JSON menjadi array, urutkan papan peringkat berdasarkan skor sesuai urutan yang ditentukan, lalu cetak nama dan skor setiap pemain pada baris terpisah dengan format: Name: Score

Gunakan asort() untuk urutan menaik dan arsort() untuk urutan menurun agar hubungan nama pemain dengan skornya tetap terjaga.

Format input:

  • Baris pertama: object JSON dengan nama pemain sebagai key dan skor sebagai nilai (contoh: {"Alice":1500,"Bob":2300,"Charlie":1800,"Diana":2100})
  • Baris kedua: Urutan pengurutan, bisa asc atau desc

Output yang diharapkan: Nama dan skor setiap pemain pada baris terpisah dengan format Name: Score, diurutkan sesuai urutan yang ditentukan

Coba sendiri

<?php
// Baca input JSON
$jsonInput = fgets(STDIN);
$leaderboard = (array)json_decode($jsonInput, true);

// Baca urutan pengurutan
$order = trim(fgets(STDIN));

// TODO: Tulis kodemu di bawah ini untuk mengurutkan leaderboard sesuai urutan tersebut


// Tampilkan nama dan skor setiap pemain
foreach ($leaderboard as $name => $score) {
    echo "$name: $score\n";
}
?>

Semua pelajaran di Logika dan Alur

Latihan sendiri: Compiler PHP online