Problème | Solution |
---|---|
Random via une fonction - Javascript - |
function rnd(min, max) { min = Math.ceil(min); max = Math.floor(max); return Math.floor(Math.random() * (max - min)) + min; } |
Dans un hangar cherchez le doublon d'un colis - LUA - |
hangar = {05, 17, 36, 98, 78, 14, 11, 87, 45, 69, 78, 14, 11, 24, 15, 98, 87, 25, 01, 65, 07} -- trouvez un doublon du colis 11 puis arrêter la recherche cherchez = 11 trouvez = 0 -- Parcourir la liste pour trouver la variable 11 avec une boucle for for i, v in ipairs(hangar) do if v == cherchez then trouvez = trouvez + 1 elseif trouvez == 2 then print("Colis en double !!") break end end |
Afficher 100 rectangles aléatoirement - LUA / TIC-80 - |
x = 100 listRect = {} while (#listRect < x) do local r = {} r.larg = math.random(1,25) r.haut = math.random(1,25) r.x = math.random(0,239 - r.larg) r.y = math.random(0,135 - r.haut) r.color = math.random(1,15) table.insert(listRect, r) end function TIC() cls(0) for i,v in ipairs(listRect) do rect(v.x, v.y, v.larg, v.haut, v.color) end end |
Afficher 100 rectangles aléatoirement sans qu'ils se touchent - LUA / TIC-80 - |
x = 100 listRect = {} function CheckCollision(x1,y1,w1,h1, x2,y2,w2,h2) return x1 < x2+w2 and x2 < x1+w1 and y1 < y2+h2 and y2 < y1+h1 end while (#listRect < x) do local r = {} local Collision = true r.larg = math.random(1,25) r.haut = math.random(1,25) r.x = math.random(0,239 - r.larg) r.y = math.random(0,135 - r.haut) r.color = math.random(1,15) for i,v in ipairs(listRect) do if CheckCollision(r.x,r.y,r.larg,r.haut,v.x,v.y,v.larg,v.haut) then Collision = false end end if Collision then table.insert(listRect, r) end end function TIC() cls(0) for i,v in ipairs(listRect) do rect(v.x, v.y, v.larg, v.haut, v.color) end end |
Gestion du Timing - LUA / TIC-80 - |
local startTime = time() local seconde = 0 function TIC() cls() -- Efface l'écran local currentTime = time() local elapsedTime = currentTime - startTime -- Vérifier si 1 seconde (1000 millisecondes) s'est écoulée if elapsedTime >= 1000 then startTime = currentTime -- Réinitialiser le temps de départ seconde = seconde + 1 -- Augmenter le compteur de secondes end -- Afficher le nombre de secondes écoulées print("Secondes écoulées : " .. seconde, 10, 10, 15) -- Vous pouvez ajouter d'autres éléments ou des commandes TIC ici end |