OneCompiler

LUA Calculator

177

local premiernombredexiemenombre = io.read()
local premiernombre, operateur, deuxiemenombre = premiernombredexiemenombre:match("([^%s]+) ([^%s]+) ([^%s]+)")
local resultat = 0
local testexposant = 0
local function calculadition (x, y)
resultat = premiernombre + deuxiemenombre
end

local function calculsoustraction (q, w)
resultat = premiernombre - deuxiemenombre
end

local function calculdivision (b, v)
resultat = premiernombre / deuxiemenombre
end

local function calculmultiplication (s, d)
resultat = premiernombre * deuxiemenombre
end

local function calculexposantdeux (f, g)
resultat = premiernombre * premiernombre
end

local function calculexposanttrois (x, y, z)
resultat = premiernombre * premiernombre * premiernombre
end

local function calculexposantquatre (x, y, z, c)
resultat = premiernombre * premiernombre * premiernombre * premiernombre
end

local function calculexposantcinq (x, c, v, b, n)
resultat = premiernombre * premiernombre * premiernombre * premiernombre * premiernombre
end

local function calculexposantsix (z, x, c, v, b, n)
resultat = premiernombre * premiernombre * premiernombre * premiernombre * premiernombre * premiernombre
end

local function calculexposantsept (z, x, c, v, b, n, m)
resultat = premiernombre * premiernombre * premiernombre * premiernombre * premiernombre * premiernombre * premiernombre
end

local function calculexposanthuit (z, x, c, v, b, n, m, g)
resultat = premiernombre * premiernombre * premiernombre * premiernombre * premiernombre * premiernombre * premiernombre * premiernombre
end

local function calculexposantneuf (z, x, c, v, b, n, m, g, h)
resultat = premiernombre * premiernombre * premiernombre * premiernombre * premiernombre * premiernombre * premiernombre * premiernombre * premiernombre
end

local function calculexposantdix (z, x, c, v, b, n, m, a, s, d)
resultat = premiernombre * premiernombre * premiernombre * premiernombre * premiernombre * premiernombre * premiernombre * premiernombre * premiernombre * premiernombre
end

local function calculracinecarre (z)
resultat = math.sqrt(premiernombre)
end

if premiernombre == nil then
end

if operateur == "+" then
calculadition (premiernombre, deuxiemenombre)
end

if (operateur == "--") and (deuxiemenombre == "v") then
calculracinecarre (premiernombre)
end

if operateur == "*" then
calculmultiplication (premiernombre, deuxiemenombre)
end

if operateur == "/" then
calculdivision (premiernombre, deuxiemenombre)
end

if operateur == "-" then
calculsoustraction (premiernombre, deuxiemenombre)
end

if (deuxiemenombre == "2") and (operateur == "^") then
testexposant = testexposant + 1
end

if (deuxiemenombre == "3") and (operateur == "^") then
testexposant = testexposant + 2
end

if (deuxiemenombre == "4") and (operateur == "^") then
testexposant = testexposant + 3
end

if (deuxiemenombre == "5") and (operateur == "^") then
testexposant = testexposant + 4
end

if (deuxiemenombre == "6") and (operateur == "^") then
testexposant = testexposant + 5
end

if (deuxiemenombre == "7") and (operateur == "^") then
testexposant = testexposant + 6
end

if (deuxiemenombre == "8") and (operateur == "^") then
testexposant = testexposant + 7
end

if (deuxiemenombre == "9") and (operateur == "^") then
testexposant = testexposant + 8
end

if (deuxiemenombre == "10") and (operateur == "^") then
testexposant = testexposant + 9
end

if testexposant == 1 then
calculexposantdeux (premiernombre, premiernombre)
testexposant = 0
end

if testexposant == 2 then
calculexposanttrois (premiernombre, premiernombre, premiernombre)
testexposant = 0
end

if testexposant == 3 then
calculexposantquatre (premiernombre, premiernombre, premiernombre, premiernombre)
testexposant = 0
end

if testexposant == 4 then
calculexposantcinq (premiernombre, premiernombre, premiernombre, premiernombre, premiernombre)
testexposant = 0
end

if testexposant == 5 then
calculexposantsix (premiernombre, premiernombre, premiernombre, premiernombre, premiernombre, premiernombre)
testexposant = 0
end

if testexposant == 6 then
calculexposantsept (premiernombre, premiernombre, premiernombre, premiernombre, premiernombre, premiernombre, premiernombre)
testexposant = 0
end

if testexposant == 7 then
calculexposanthuit (premiernombre, premiernombre, premiernombre, premiernombre, premiernombre, premiernombre, premiernombre, premiernombre)
testexposant = 0
end

if testexposant == 8 then
calculexposantneuf (premiernombre, premiernombre, premiernombre, premiernombre, premiernombre, premiernombre, premiernombre, premiernombre, premiernombre)
testexposant = 0
end

if testexposant == 9 then
calculexposantdix (premiernombre, premiernombre, premiernombre, premiernombre, premiernombre, premiernombre, premiernombre, premiernombre, premiernombre, premiernombre)
end

if testexposant >= 10 then
testexposant = 0
end

if premiernombredexiemenombre == nil then
print("aucun résultat")
end
print(resultat)
print()
print("Symbole et Info:")
print("adition: + Espacer entre chaque nombre ou symbole.")
print("soustraction: - Espacer entre chaque nombre ou symbole.")
print("multiplication: * Espacer entre chaque nombre ou symbole.")
print("division: / Espacer entre chaque nombre ou symbole.")
print("exposant: ^ 2, ^ 3, ^ 4, ect... De 1 à 9. Mettre un espace entre ^ et votre de 1 à 9.")
print("racine carré: -- v Espace entre -- et le v. Pour faire le -- faite - - et enlevé ensuite l'espace entre les deux. Un v minuscule.")