if et else à l’intérieur d’une fonction
Comme les expressions if produisent des valeurs, elles peuvent être le résultat de fonctions, qui produisent elles aussi des valeurs.
Dans cet exercice, vous allez écrire le corps d’une fonction pour votre programme Twenty-One appelée pointsToBust, qui prend en entrée la valeur en points de la main courante et calcule le nombre de points restants jusqu’à 21. En tant que joueur, savoir combien de points supplémentaires feraient dépasser votre main actuelle vous aide à décider s’il faut tirer une carte ou rester. Les variables de cartes dont vous avez besoin et la fonction bust sont déjà définies pour vous.
Cet exercice fait partie du cours
Introduction à Scala
Instructions
- Écrivez une condition
if: si la main dépasse, faites de l’Int0 le résultat de la fonction. - Écrivez une condition
else: si la main ne dépasse pas, soustrayezhandde 21 et faites de cette différence le résultat de la fonction. - Appelez
pointsToBustavec une main contenant les cartestenSpadesetfiveClubsen argument.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
// Find the number of points that will cause a bust
def pointsToBust(hand: Int): Int = {
// If the hand is a bust, 0 points remain
___ ___
___
// Otherwise, calculate the difference between 21 and the current hand
___
___
}
// Test pointsToBust with 10♠ and 5♣
val myHandPointsToBust = ___
println(myHandPointsToBust)