User:Cscott/Ideas/Improved for-loops for Lua/example1/fr
Appearance
locale fonction frame_args_to_table(frame)
-- frame.args n'est pas un vrai tableau dans Scribunto, donc on en crée un
locale liste = {}
locale i = 1
tant que frame.args[i] ~= nulle faire
table.insert(liste, frame.args[i])
i = i + 1
fin
renvoyer liste
fin
renvoyer {
max = fonction(frame, ... )
locale résultat = nulle;
pour _, élément de ipairs(frame_args_to_table(frame)) avec premier,dernier faire
si premier ou élément>résultat alors
résultat = élément
fin
alors
-- seulement si la boucle est exécutée au moins une fois
renvoyer résultat
sinon
-- si la boucle n'a jamais été exécutée (aucun élément dans la liste)
error( "liste de longueur nulle" )
fin
fin,
estPremier = fonction(frame, ... )
n=tonumber(frame.args[1] ) ;
pour x=2,n-1 faire
si n%x==0 alors arrêter fin
alors
renvoyer vrai
sinon
error( "n était inférieur à 2" )
fin
renvoyer faux
fin,
chiffresÀChaîner = fonction(frame, ... )
s = ""
pour _, d de ipairs(frame_args_to_table(frame)) faire
s = s .. tostring(d)
sinon
-- s'il n'y a pas de chiffres dans la liste de chiffres
s = "0"
fin
renvoyer s
fin,
}