Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anterior Revisión previa Próxima revisión | Revisión previa Próxima revisión Ambos lados, revisión siguiente | ||
curso-cpp:variables-valores-tipos [2016/09/29 17:00] santo [Const] |
curso-cpp:variables-valores-tipos [2017/02/06 21:44] santo [Expresiones con char] |
||
---|---|---|---|
Línea 39: | Línea 39: | ||
Así, ''(1 + 5) * 3'' es una expresión aritmética. Otra más larga es ''( ( (1+5)*2)/3)*8''. Si ''x'' es un ''int'', entonces ''x+1'' es una expresión que denota al entero que le sigue a ''x'', y ''2*x'' es una expresión que indica el doble de ''x''. | Así, ''(1 + 5) * 3'' es una expresión aritmética. Otra más larga es ''( ( (1+5)*2)/3)*8''. Si ''x'' es un ''int'', entonces ''x+1'' es una expresión que denota al entero que le sigue a ''x'', y ''2*x'' es una expresión que indica el doble de ''x''. | ||
+ | Además de estas 4 operaciones aritméticas básicas, es común también utilizar la operación ''%'', que se llama "módulo", y sirve para obtener el **resto** de la división. De esta forma, la expresión ''9 / 2'' da por resultado ''4'' (ya que cuando trabajamos con enteros, como trabajaremos casi siempre, la operación da el resultado de hacer la **división entera**), y la operación ''9 % 2'' da por resultado ''1'', pues al dividir 9 por 2 se obtiene un **cociente** de 4, y un **resto** de 1. Similarmente, ''14 % 5'' da por resultado 4, mientras que ''14 / 5'' da por resultado 2. | ||
==== Expresiones con strings ==== | ==== Expresiones con strings ==== | ||
Línea 65: | Línea 65: | ||
Similarmente, podemos obtener la distancia en el abecedario entre dos letras haciendo su resta: '' 'e' - 'a' '' dará por resultado un **int**, en este caso 4 (pues desde la a hay que avanzar 4 letras para llegar a la e). Notar que si mezclamos mayúsculas con minúsculas, en estos casos tendremos resultados incorrectos, pues en la tabla ASCII mencionada las mayúsculas y minúsculas tienen códigos diferentes (no son el mismo caracter). | Similarmente, podemos obtener la distancia en el abecedario entre dos letras haciendo su resta: '' 'e' - 'a' '' dará por resultado un **int**, en este caso 4 (pues desde la a hay que avanzar 4 letras para llegar a la e). Notar que si mezclamos mayúsculas con minúsculas, en estos casos tendremos resultados incorrectos, pues en la tabla ASCII mencionada las mayúsculas y minúsculas tienen códigos diferentes (no son el mismo caracter). | ||
+ | Otra propiedad útil del ordenamiento ASCII es que los **dígitos** del '' '0' '' al '' '9' '' están en orden y todos juntos en el ordenamiento, por lo tanto si sabemos que la variable ''x'' contiene un ''char'' que corresponde a un dígito, con ''int valor = x - '0';'' podemos obtener el valor numérico del caracter, directamente en un entero. | ||
===== Variables ===== | ===== Variables ===== | ||