freeCodeCamp/curriculum/challenges/italian/02-javascript-algorithms-an.../basic-javascript/golf-code.md

3.1 KiB

id title challengeType videoUrl forumTopicId dashedName
5664820f61c48e80c9fa476c Giocare a golf 1 https://scrimba.com/c/c9ykNUR 18195 golf-code

--description--

Nel gioco del golf, ogni buca ha un par, che rappresenta il numero medio di strokes (colpi) che un golfista dovrebbe fare per mandare la palla in buca per completare il gioco. A seconda di quanto sopra o sotto al valore di par sono i tuoi strokes, c'è un soprannome diverso.

Alla tua funzione saranno passati gli argomenti par e strokes. Restituisci la stringa corretta in base a questa tabella che elenca i colpi in ordine di priorità; dall'alto (maggiore priorità) al basso (minore):

StrokesReturn
1"Hole-in-one!"
<= par - 2"Eagle"
par - 1"Birdie"
par"Par"
par + 1"Bogey"
par + 2"Double Bogey"
>= par + 3"Go Home!"

par e strokes avranno sempre valori numerici e positivi. Abbiamo aggiunto un array con tutti i nomi per tua comodità.

--hints--

golfScore(4, 1) dovrebbe restituire la stringa Hole-in-one!

assert(golfScore(4, 1) === 'Hole-in-one!');

golfScore(4, 2) dovrebbe restituire la stringa Eagle

assert(golfScore(4, 2) === 'Eagle');

golfScore(5, 2) dovrebbe restituire la stringa Eagle

assert(golfScore(5, 2) === 'Eagle');

golfScore(4, 3) dovrebbe restituire la stringa Birdie

assert(golfScore(4, 3) === 'Birdie');

golfScore(4, 4) dovrebbe restituire la stringa Par

assert(golfScore(4, 4) === 'Par');

golfScore(1, 1) dovrebbe restituire la stringa Hole-in-one!

assert(golfScore(1, 1) === 'Hole-in-one!');

golfScore(5, 5) dovrebbe restituire la stringa Par

assert(golfScore(5, 5) === 'Par');

golfScore(4, 5) dovrebbe restituire la stringa Bogey

assert(golfScore(4, 5) === 'Bogey');

golfScore(4, 6) dovrebbe restituire la stringa Double Bogey

assert(golfScore(4, 6) === 'Double Bogey');

golfScore(4, 7) dovrebbe restituire la stringa Go Home!

assert(golfScore(4, 7) === 'Go Home!');

golfScore(5, 9) dovrebbe restituire la stringa Go Home!

assert(golfScore(5, 9) === 'Go Home!');

--seed--

--seed-contents--

const names = ["Hole-in-one!", "Eagle", "Birdie", "Par", "Bogey", "Double Bogey", "Go Home!"];

function golfScore(par, strokes) {
  // Only change code below this line


  return "Change Me";
  // Only change code above this line
}

golfScore(5, 4);

--solutions--

function golfScore(par, strokes) {
  if (strokes === 1) {
    return "Hole-in-one!";
  }

  if (strokes <= par - 2) {
    return "Eagle";
  }

  if (strokes === par - 1) {
    return "Birdie";
  }

  if (strokes === par) {
    return "Par";
  }

  if (strokes === par + 1) {
    return "Bogey";
  }

  if(strokes === par + 2) {
    return "Double Bogey";
  }

  return "Go Home!";
}