NHK Let’s Learn Japanese – Lecciones en video Adjetivos
Oct 13

En esta entrada vere un poco de operaciones basicas con numeros y algunas de las tantas funciones disponibles.

Operaciones aritmeticas

Tenemos las 4 operaciones basicas de suma, resta, multiplicacion y division, ademas del modulo o residuo como vemos en el siguiente ejemplo:

<?php
   echo 5 + 3;
   echo 9 - 2;
   echo 2 * 3;
   echo 10 / 2;
   echo 14 % 5; // residuo de 14/5
?>
87654

Como vimos en la entrada anterior tambien es posible hacer estas operaciones con variables, como:

<?php
   $a = 324;
   $b = 983;
   $suma = $a + $b;
   $ultimo = $suma % 10; // el residuo de un entero con 10 es el ultimo digito
   echo "La suma de $a con $b termina en $ultimo";
?>
La suma de 324 con 983 termina en 7

Precedencia de operadores

Asi como en otros lenguajes, los operadores tienen distinta precedencia, esto indica que operacion se debe realizar primero. Por ejemplo:

<?php
   echo 2 + 3 * 4;
?>
14

En este ejemplo se realiza la multiplicacion primero, puesto que el operador * tiene precedencia sobre la suma. Si queremos cambiar la precedencia podemos usar parentesis, veamos un par de ejemplos:

<?php
   $a = 2 + 3 * 4; # 14
   $b = (2 + 3) * 4; # 20

   $c = 20 - 10 / 5; # 18
   $d = (20 - 10) / 5; # 2

   $e = 20 / 5 % 3; # 1 (/ tiene precedencia sobre %)
   $f = 20 / (5 % 3); # 10
?>

Para ver una lista con las precedencias, click aqui.

Operadores combinados

Si bien tiene relación con los operadores de asignación, creo se ajusta mejor en esta entrada. Para explicar que es un operador combinado veamos la siguiente situacion:

<?php
   $a = 5;
   $a = $a + 10;
?>

En el ejemplo a la variable $a le sumamos 10 y guardamos el resultado en la misma variable. En otras palabras incrementamos el valor de $a en 10. Para este caso, asi como para las otras tres operaciones basicas existe un pequeño atajo que son los operadores combinados:

<?php
   $a = 5;
   $a += 20; # a = a + 20
   $a -= 10; # a = a - 10
   $a *= 3; # a = a * 3
   $a /= 5; # a = a / 5
   echo $a;
?>
9

Comenzamos con 5, incrementamos en 20(=25), restamos 10(=15), multiplicamos por 3(=45) y finalmente dividimos por 5(=9).

En el caso de incremento y decremento por 1 existen otros operadores.

Operadores de incremento y decremento

Estos operadores funcionan de la siguiente forma:

<?php
   $a = $b = 5;
   $a++; // aumenta el valor de $a en 1
   $b--; // disminuye el valor de $a en 1
   echo "a:$a b:$b";
?>
a:6 b:4

Tambien es posible escribir ++$a que no es exactamente igual. Ambos incrementan el valor de $a en 1, la diferencia es cuando. Veamos el siguiente ejemplo:

<?php
   $a = $b = 5;
   $c = $a++; // $c recibe 5, luego $a es incrementado en 1
   $d = ++$b; // $b es icrementado en 1, luego $d recibe 6
   echo "a = $a, b = $b, c = $c, d = $d";
?>
a = 6, b = 6, c = 5, d = 6

Aqui el unico que queda con 5 es $c puesto que recibe el valor de $a antes de que ocurra el incremento. Asi el operador ++ o — colocado despues de la variable se llama de post-incremento, mientras que si esta a la izquierda de la variable es de pre-incremento.

Numeros, funciones basicas

Php dispone de algunas funciones para calculos matematicos, como por ejemplo potencias y raices:

<?php
   $a = sqrt(9); // raiz cuadrada de 9
   $b = pow(2,3); // 2 elevado a 3 (2*2*2)

   // Tambien podemos usar pow para sacar raices
   $c = pow(9,0.5); // raiz cuadrada de 9 (9 elevado a 1/2)
   $d = pow(27, 1/3); // raiz cubica de 27

   // Un ejemplo
   $num = 64;
   $raiz = sqrt($num);
   echo "La raiz cuadrada de $num es $raiz";
?>
La raiz cuadrada de 64 es 8

Funciones de redondeo como:

<?php
   echo ceil(5.32)."<br />"; // Redondear hacia arriba
   echo floor(12.99); // Redondear hacia abajo
?>
6
12

Para calcular maximo, minimo, valor absoluto, generar numeros aleatorios;

<?php
   $maximo = max(6,3,4,8,25,13,17);
   $minimo = min(5,2,4,9);
   $positivo = abs(-5); # 5
   $aleatorio = rand(1,20); // random entre 1 y 20
   echo "Maximo: $maximo, Minimo: $minimo";
?>
Maximo: 25, Minimo: 2

Tambien trigonometricas para calcular seno, coseno, tangente y otros:

<?php
   /* Las funciones como sin, cos, asin trabajan con radianes.
   Para transformar a grados y viceversa se puede usar:
   deg2rad(): grados a radianes
   rad2deg(): radianes a grados */

   echo 'π/4 en radianes vale: '.deg2rad(45).'<br />';

   /* Php ademas cuenta con una funcion y una constante para
   el valor de pi, la funcion es pi(), la constante M_PI */

   echo "El coseno de pi es ".cos(M_PI).'<br />';

   // aca transformo el resultado de asin a grados
   echo "El arcoseno de raiz(2)/2 es ".rad2deg(asin(sqrt(2)/2));
?>
π/4 en radianes vale: 0.78539816339745
El coseno de pi es -1
El arcoseno de raiz(2)/2 es 45

Para mas funciones pueden visitar el manual de referencia, tambien pueden revisar la lista de constantes matematicas.
Hasta aqui por esta entrada.


Dejar un comentario