• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Zadanie z sortowaniem listy RGB, proszę pomocy! Javascript

Mały hosting, OGROMNE możliwości
0 głosów
714 wizyt
pytanie zadane 3 maja 2022 w JavaScript przez Konrad Milewski Nowicjusz (180 p.)
Colors have to be ordered in such way:
            - Higher Red value first; if the same then:
            - Higher Green value first; if the same then:
            - Higher Blue value first; if the same then on the same position

 

Zadanie wygląda następująco. Nie wiem absolutnie jak to zrobić ani jakby to miało wyglądać. Najlepiej jeżeli funkcja przyjmowałaby tablicę z kolorami w HEX. Np:

[

    "#FF1100",

    "#44FF00",

    "#1900FF",

    "#E02500",

    "#54E600",

    "#0206DE",

  ]

 

No i zwracała posortowaną tablicę tak jak w zadaniu, proszę czy ktoś umie to zrobić? Czy ktoś mi wytłumaczy jak to zrobić? Siedzę nad tym już 3 dni i nie mogę do niczego dojść, pozdrawiam.

2 odpowiedzi

+3 głosów
odpowiedź 3 maja 2022 przez SzkolnyAdmin Szeryf (90,290 p.)
Potraktuj dane z tablicy jako stringi. Do sortowania użyj metody sort, dla której napiszesz własną funkcję sortującą. Funkcja ta porównuje pary znaków odpowiadające poszczególnym kolorom: dla R - znaki o indeksach 1 i 2, dla G - 3 i 4, B - 5 i 6 (# to znak o indeksie 0). Do pobrania pary znaków użyj np. metody substring, slice, substr.
1
komentarz 3 maja 2022 przez SzkolnyAdmin Szeryf (90,290 p.)

Albo jeszcze prościej (tablica ma nazwę kolory):

kolory.sort();
kolory.reverse();

Pierwsza instrukcja posortuje ci tablicę rosnąco, a druga odwróci ją. W rezultacie uzyskasz to co chcesz,

+1 głos
odpowiedź 3 maja 2022 przez wizarddos Nałogowiec (28,110 p.)

Przyszło mi do głowy kilka sposobów.

1. Porównujemy kolory zapisane w HEX'ie (wg. mnie trudniejszy)

2. konwertujemy HEX na RGB i porównujemy kolory jak zwykłe liczby, a następnie znowu konwertujemy na HEX

    + jakimś algorytmem sortujemy.

Kilka linków co do konwersji

https://convertingcolors.com/blog/article/convert_hex_to_rgb_with_javascript.html

https://stackoverflow.com/questions/12943774/hex-to-rgb-converter

https://www.w3docs.com/snippets/javascript/how-to-convert-rgb-to-hex-and-vice-versa.html

Podobne pytania

0 głosów
0 odpowiedzi 462 wizyt
pytanie zadane 8 marca 2024 w C i C++ przez viktor23 Nowicjusz (130 p.)
0 głosów
1 odpowiedź 435 wizyt
pytanie zadane 13 marca 2017 w C# przez Zychu Użytkownik (710 p.)
0 głosów
1 odpowiedź 293 wizyt

93,717 zapytań

142,629 odpowiedzi

323,261 komentarzy

63,261 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...