diff --git a/calculadora/calc b/calculadora/calc
index cb2cd00fc38a60d043c73f4646d78a97ebe4c12f..8c5a63b8a734ec5b179fe7f08780936ebf71cebd 100755
Binary files a/calculadora/calc and b/calculadora/calc differ
diff --git a/calculadora/calculadora.c b/calculadora/calculadora.c
index 135f58c0fc72351059f872d9e1f379d61358cdce..e8384e0d82564c19583ab1cdacf292f7d010f32d 100644
--- a/calculadora/calculadora.c
+++ b/calculadora/calculadora.c
@@ -45,8 +45,8 @@ int converte_operador(t_operador *op, char c) {
 
 /* Retorna 1 se o operador op1 tem precedencia sobre o operador op2.
    Retorna 0 caso contrario. */
-int precede(t_operador op1, t_operador op2) {
-    if((op1 - op2) > 1.0)
+int precedencia_maior_ou_igual(t_operador op1, t_operador op2) {
+    if(floor(op1) >= floor(op2))
         return 1;
     return 0;
 }
@@ -224,7 +224,7 @@ int main() {
 				   ao topo da pilha de operadores. */
 				while(topo(&op_topo, pilha_operadores) &&
 					  op_topo != PAR &&
-					  precede(op_topo, operador) &&
+					  precedencia_maior_ou_igual(op_topo, operador) &&
 					  !flag_erro) {
 					/* Enquando o topo da pilha tiver precedencia, desempilha e
 					   processa o operador do topo da pilha. */
diff --git a/calculadora/calculadora.o b/calculadora/calculadora.o
index 75aa8ca8394defc602ff5f894730255f6ec58fe2..fc6f3bd3442be1b6a4b9972ea64ae897f738878c 100644
Binary files a/calculadora/calculadora.o and b/calculadora/calculadora.o differ