Récapitulatif - Division sécurisée
Fait partie de la section Logique et déroulement du programme du Journey Lua de Coddy. Leçon 34 sur 54.
Défi
FacileÉcris 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ée une fonction interne qui effectue la division et déclenche une erreur si b est égal à zéro, puis enveloppe-la avec pcall() pour intercepter les erreurs.
Logique :
- Crée une fonction interne qui vérifie si
best égal à 0 - Si
best égal à 0, appelleerror("Cannot divide by zero", 0)(le0exclut le nom du fichier et le numéro de ligne du message) - Sinon, renvoie
a / b - Utilise
pcall()pour exécuter la fonction interne - En cas de réussite, renvoie
"Result: "suivi du résultat de la division - En cas d’erreur, renvoie
"Error: "suivi du message d’erreur
Paramètres :
a(nombre) : Le dividendeb(nombre) : Le diviseur
Renvoie : Une chaîne 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)
-- Écrivez le code ici
end
Toutes les leçons de Logique et déroulement du programme
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