[Resuelto] Problema con suma y resta

  • Autor Autor Gridalo
  • Fecha de inicio Fecha de inicio
Gridalo

Gridalo

Kappa
Verificado por Whatsapp
Hola amigos, estoy aprendiendo php y me acabo de encontrar con algo que no entiendo, consigo hacer multiplicaciones y divisiones asi:

Multiplicacion:

echo "El resultado es: ".$_POST['s2']*$_POST['s3'];

Division:
echo "El resultado es: ".$_POST['s2']/$_POST['s3'];

El problema es que cuando pruebo a hacer una suma o una resta no funciona y me da un resultado erroneo, partiendo de que $s2 vale 2 y $s3 vale 3 cuando pongo la suma asi no funciona:

echo "El resultado es: ".$_POST['s2']+$_POST['s3']; (me devuelve 3)

mientras que si quito el string de texto asi:

echo $_POST['s2']+$_POST['s3']; (en este caso me devuelve 5)

Como puede ser esto posible que el string de texto no cambie el resultado de las multiplicaciones ni las divisiones pero si de las sumas y las restas?

Un saludo y gracias!
 
Última edición:
PHP:
echo "El resultado es: ".($_POST['s2']+$_POST['s3']);

Ya que sino estas concatenando s2 al texto... y luego tratar de sumar el texto a s3
 
PHP:
echo "El resultado es: ".($_POST['s2']+$_POST['s3']);

Ya que sino estas concatenando s2 al texto... y luego tratar de sumar el texto a s3

Muchas gracias Cicklow pero por que en las multiplicaciones y divisiones no ocurre?
 
Muchas gracias Cicklow pero por que en las multiplicaciones y divisiones no ocurre?

jeje recordas en la escuela cuando lo enseñaron?... por donde se separan las cuentas?... por el mas y el menos... entonces tu texto quedaria separado por el mas y por el menos... y no por el * y el /...

ejemplo
PHP:
5+6/2 = ?
lo que hace ahi es dividir 6 por 2 = 3 y a eso se lo suma al 5 ... :encouragement:
Lo que seria
PHP:
5 + (6/2) =
 
jeje recordas en la escuela cuando lo enseñaron?... por donde se separan las cuentas?... por el mas y el menos... entonces tu texto quedaria separado por el mas y por el menos... y no por el * y el /...

ejemplo
PHP:
5+6/2 = ?
lo que hace ahi es dividir 6 por 2 = 3 y a eso se lo suma al 5 ... :encouragement:
Lo que seria
PHP:
5 + (6/2) =

jajaja vale ahora si lo pille! ves? si cuando se me explican las cosas como a un niño lo entiendo! xDDDD

Muchas gracias
 
Jijiji creo que ya quedo mas que claro, pero por si no. Solo usa los parentesis en los terminos que quieres que se operen primero.

Cada lenguaje tiene su prioridad de operaciones, el usual es:
0 Parentesis
1 Suma
2 Resta
3 Multi
4 Divi
5 Modulo

Quiere decir que primero hara las operaciones con parentesis en toda la expresion, luego las sumas, restas... etc.
 
P.D. seria bueno buscar cual la prioridad de operaciones que usa PHP, asi no llenas de parentesis tus expresiones, luego es facil perderse xD
 
Jijiji creo que ya quedo mas que claro, pero por si no. Solo usa los parentesis en los terminos que quieres que se operen primero.

Cada lenguaje tiene su prioridad de operaciones, el usual es:
0 Parentesis
1 Suma
2 Resta
3 Multi
4 Divi
5 Modulo

Quiere decir que primero hara las operaciones con parentesis en toda la expresion, luego las sumas, restas... etc.

De hecho, no es así, suma/resta son de las últimas, por lo regular son:

- Paréntesis
- Potencias
- División / Multiplicación
- Suma / Resta
 
De hecho, no es así, suma/resta son de las últimas, por lo regular son:

- Paréntesis
- Potencias
- División / Multiplicación
- Suma / Resta

Estás en todo lo correcto, lo mencioné todo alrevés XD

Edito:

Para yo tampoco hacerme bolas dejo esta imagen por aquí
operator_precedence.webp
 
Última edición:

Temas similares

Atrás
Arriba