Récapitulatif - Division sécurisée
Fait partie de la section Logique et flux du Journey Lua de Coddy. Leçon 34 sur 54.
Défi
FacileÉcrivez une fonction safeDivide qui prend a et b et renvoie le résultat de la division de a par b, ou un message d'erreur si la division échoue.
La fonction doit utiliser pcall() pour effectuer l'opération de division en toute sécurité. Créez une fonction interne qui effectue la division et lève une erreur si b est égal à zéro, puis enveloppez-la avec pcall() pour intercepter toute erreur.
Logique :
- Créez une fonction interne qui vérifie si
best 0 - Si
best 0, appelezerror("Cannot divide by zero") - Sinon, renvoyez
a / b - Utilisez
pcall()pour exécuter la fonction interne - En cas de succès, renvoyez
"Result: "suivi du résultat de la division - Si une erreur survient, renvoyez
"Error: "suivi du message d'erreur
Paramètres :
a(nombre) : Le dividendeb(nombre) : Le diviseur
Retourne : Une chaîne de caractères contenant soit "Result: " suivi du résultat de la division, soit "Error: " suivi du message d'erreur (chaîne)
Essayez vous-même
function safeDivide(a, b)
-- Écrire le code ici
end
Toutes les leçons de Logique et flux
1Itération avancée des tables
Itérer avec pairs()Itérer avec ipairs()pairs() contre ipairs()Récapitulatif - Fiche de personnage2Fonctions supplémentaires de la bibliothèque table
table.concat()construction de tables et unpack()table.sort()Tri personnalisé avec des fonctionsRécapitulatif - Tableau des meilleurs scores3Concepts avancés des fonctions
Retourner plusieurs valeursFonctions variadiques (...)Les fonctions comme valeurs de première classeFonctions anonymesQu’est-ce qu’une fermeture ?Récapitulatif - Gestionnaire d’événements simple6Gestion des erreurs
La fonction error()Appels protégés avec pcall()Récapitulatif - Division sécuriséeEntraînez-vous par vous-même : Compilateur Lua en ligne