Menu
Coddy logo textTech

Podsumowanie: sortowanie tabeli wyników

Część sekcji Logika i przepływ programu ścieżki PHP w Coddy. Lekcja 26 z 68.

challenge icon

Wyzwanie

Łatwy

Otrzymasz dwa dane wejściowe: najpierw tablicę asocjacyjną z nazwami graczy i ich wynikami w formacie JSON, a następnie kolejność sortowania (albo "asc", albo "desc"). Odczytaj oba dane wejściowe, przekształć ciąg JSON w tablicę, posortuj ranking według wyników zgodnie z podaną kolejnością i wypisz nazwę każdego gracza oraz jego wynik w osobnym wierszu w formacie: Name: Score

Użyj asort() do sortowania rosnącego i arsort() do sortowania malejącego, aby zachować powiązanie nazw graczy z ich wynikami.

Format danych wejściowych:

  • Pierwszy wiersz: obiekt JSON z nazwami graczy jako kluczami i wynikami jako wartościami (przykład: {"Alice":1500,"Bob":2300,"Charlie":1800,"Diana":2100})
  • Drugi wiersz: kolejność sortowania — albo asc, albo desc

Oczekiwane dane wyjściowe: Nazwa każdego gracza i jego wynik w osobnym wierszu w formacie Name: Score, posortowane zgodnie z podaną kolejnością

Spróbuj swoich sił

<?php
// Odczytaj dane wejściowe JSON
$jsonInput = fgets(STDIN);
$leaderboard = (array)json_decode($jsonInput, true);

// Odczytaj kolejność sortowania
$order = trim(fgets(STDIN));

// TODO: Napisz poniżej kod sortujący tabelę wyników zgodnie z podaną kolejnością


// Wyświetl imię i wynik każdego gracza
foreach ($leaderboard as $name => $score) {
    echo "$name: $score\n";
}
?>

Wszystkie lekcje w sekcji Logika i przepływ programu

Poćwicz samodzielnie: Kompilator PHP online