Module:Poly
Ce module sert d'exemple dans la leçon Initiation au Lua avec Scribunto. son utilisation est décrite en détail dans celle-ci et, par conséquent, ce module ne doit pas être modifié sans tenir compte de la leçon.
local p = {}
function p.poly1(frame)
local reponse = "Le résultat est "
local resultat
local minimum = 1
for i = 1, 30 do
local temps = os.clock()
resultat = 7*frame.args[1]^4+5*frame.args[1]^3+3*frame.args[1]^2+frame.args[1]+2
temps = os.clock() - temps
if temps < minimum then minimum = temps end
end
reponse = reponse..resultat.." et le temps d'exécution est "..minimum
return reponse
end
function p.poly2(frame)
local reponse = "Le résultat est "
local resultat
local minimum = 1
for i = 1, 30 do
local temps = os.clock()
local x = frame.args[1]
resultat = 7*x^4+5*x^3+3*x^2+x+2
temps = os.clock() - temps
if temps < minimum then minimum = temps end
end
reponse = reponse..resultat.." et le temps d'exécution est "..minimum
return reponse
end
function p.poly3(frame)
local reponse = "Le résultat est "
local resultat
local minimum = 1
for i = 1, 30 do
local temps = os.clock()
local x = frame.args[1]
resultat = (((7*x+5)*x+3)*x+1)*x+2
temps = os.clock() - temps
if temps < minimum then minimum = temps end
end
reponse = reponse..resultat.." et le temps d'exécution est "..minimum
return reponse
end
return p