< Initiation au Lua avec Scribunto < Exercices



Exercice 10-1

On considère un programme gérant des comptes se trouvant dans une table appelée banque dont l'accès se fait avec des clés sous forme de chaîne de caractères indiquant le nom d'une personne ayant un compte dans la table banque. Nous savons que, lorsque l’on essaye d'accéder à une table avec une clé qui n'existe pas, on obtient nil. Dans cet exercice, on modifiera ce comportement en faisant en sorte que, lorsque l’on essaye d'accéder à un compte dans la banque avec une clé indiquant un nom inexistant dans la banque, alors le compte doit être automatiquement créé avec une valeur égale au nombre 0 et on doit avoir comme retour une chaîne de caractères indiquant "compte créé". En utilisant ce comportement particulier, écrire une fonction p.place dans un module qui nous permettra de placer une certaine somme en banque sur le compte d'une personne dont on indiquera le nom. Si, par exemple, on souhaite placer 20 euros sur le compte d'Annabelle, on écrira {{#invoque:"nom du module"|place|Annabelle|20}}. En retour, on devra avoir un message indiquant si un nouveau compte a été créé et si l'opération s'est bien déroulée (on gérera les erreurs possibles).

Pour fixer les idées nous poserons que la table banque sera initialisée ainsi :

local banque = {["Jean"]=150,["Aurore"]=80,["Cindy"]=10,["Pénéloppe"]=110,["Gabriel"]=320}

Contrainte : Le programme ne devra utiliser qu'une seule table.



Exercice 10-2

Soit un espace vectoriel de dimension 3. Soit deux vecteurs A et B de coordonnées respectives (2,7,4) et (3,2,9). Écrire un programme permettant de faire le produit vectoriel de A et B en utilisant une instruction sous la forme P = A*B.


Le produit vectoriel se défini ainsi :



Exercice 10-3

Soit deux matrices carrées A et B d'ordre 2 ainsi définies :

Écrire un programme permettant de faire le produit matriciel de A et B en utilisant une instruction sous la forme P = C*D.


Le produit matriciel se défini ainsi :


Exercice 10-4

Écrire un programme permettant de concaténer les matrices colonnes : B = et C = sous la forme de la matrice carrée P = en utilisant une instruction sous la forme P = B..C.


Cet article est issu de Wikiversity. Le texte est sous licence Creative Commons - Attribution - Partage dans les Mêmes. Des conditions supplémentaires peuvent s'appliquer aux fichiers multimédias.