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

zadanie z funkcji

Object Storage Arubacloud
0 głosów
574 wizyt
pytanie zadane 7 lutego 2017 w JavaScript przez bartas1990 Początkujący (470 p.)
edycja 7 lutego 2017 przez ScriptyChris

Witam! Mam jeszcze jeden problem z zadaniem: 

Napisz funkcję calculateTip(amount, raiting), która będzie przyjmować dwa argumenty:

kwotę do zapłaty,

opis słowny obsługi. Jeśli opis jest taki jak zdefiniowano poniżej, funkcja ma zwracać kwotę napiwku, jeśli opis jest nieznany – funkcja powinna zwracać napis "Opis nieczytelny".

Opis może przyjmować następujące wartości: "Bardzo dobra obsluga" => 25% napiwku, "Dobra obsluga" => 20% napiwku, "Srednia obsluga" =>15% napiwku, "Zla obsluga" => 0% napiwku.

Przykład:

input -> 100, "Bardzo dobra obsluga"

output -> 25
 

i teraz zrobiłem taki kod:
 

function calculate(amount,raiting) {
  if(amount == null && raiting == "Bardzo dobra obsługa "  ) {
    console.log("25% napiwku");
  }
}
calculate(100, "Bardzo dobra obsługa");



oczywiście to nie wszystko tylko na potrzeby próby. Tylko nie wiem jak do zmiennej amount przypisać liczbę. Czy w ogóle dobrze kombinuje?

Pozdrawiam :)

1 odpowiedź

+1 głos
odpowiedź 7 lutego 2017 przez Adrian Spora Mądrala (5,100 p.)
edycja 7 lutego 2017 przez Adrian Spora

Nic nie musisz przypisywac do zmiennej amount. Po prostu sprawdzasz warunki czy raiting jest równy odpowiednio zdefiniowanym stringom i jeśli jest to zwracasz wartosć napiwku za pomocą instrukcji return, np:

if(raiting == "Bardzo dobra obsługa"  ) {
        return 0.25 * amount;
 } else if //kolejne warunki

 

komentarz 7 lutego 2017 przez bartas1990 Początkujący (470 p.)
tylko jeśli usunę tą linijkę z funkcji 'amount == null &&' to nadal mi nic nie wyświetla i przyznaję, że trochę nie wiem dlaczego
komentarz 7 lutego 2017 przez Adrian Spora Mądrala (5,100 p.)
Bo w warunku masz ten napis ze spacją na końcu. Najlepiej zapisz go do zmiennej i używaj tej zmiennej w warunku.
komentarz 7 lutego 2017 przez bartas1990 Początkujący (470 p.)
function calculate(amount,raiting) {
  var goodOpinion = "Bardzo dobra obsługa"
  if(raiting == goodOpinion) {
    return 0.25 * amount;
  }
}
calculate(100,"Bardzo dobra obsługa");

nadal konsola nic mi nie wyświetla :/ te spację usunąłem i dodałem zmienną. A jeśli wstawiam zmienną o wartości string do wywołania w funkcji to ją dobrze odczyta jeśli teraz zrobiłem zmienna goodOpinion?

komentarz 7 lutego 2017 przez Adrian Spora Mądrala (5,100 p.)
Tak jak Ci pisałem w poprzednim temacie - funkcja ma służyć tylko do zwracania wartosci, a żeby wypisać jej resultat musisz do tego użyć console.log. Popatrz na moją odpowiedź w swoim poprzednim wątku.
komentarz 7 lutego 2017 przez bartas1990 Początkujący (470 p.)
Racja! Dziękuję bardzo za pomoc, jednak jeszcze troszkę pracy przede mną :)

Podobne pytania

0 głosów
0 odpowiedzi 115 wizyt
0 głosów
2 odpowiedzi 518 wizyt
0 głosów
1 odpowiedź 239 wizyt
pytanie zadane 20 czerwca 2020 w C i C++ przez Oskardes Użytkownik (600 p.)

92,579 zapytań

141,432 odpowiedzi

319,663 komentarzy

61,964 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.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...