Upload
raul-lacabanne
View
215
Download
0
Embed Size (px)
DESCRIPTION
Intro Processing v1.5 - 05 - Raúl Lacabanne
Citation preview
17
Punto 5 – Aritmética
Operadores aritméticos básicos en Processing
Los operadores aritméticos básicos en Processing se representan de la siguiente manera:
+ Suma- Resta* Multiplicación/ División% Módulo
Orden de ejecución de operaciones aritméticas
Si tenemos la siguiente expresión aritmética: 3 + 4 * 5. ¿Cómo la evalúa Processing? Si la expresión anterior tuviera paréntesis la evaluaría de acuerdo a los mismos, pero en los casos en que no los tenga siempre evaluará de la siguiente forma: en primer lugar evalúa multiplicación, división y módulo; y en segundo lugar evalúa suma y resta; por lo tanto el resultado de dicha expresión evalúa en 23.
Expresiones
Cuando hablamos de expresiones podemos pensarlas como si fueran una frase de una oración (es decir un componente de una instrucción). Las expresiones contienen frecuentemente o bien un solo valor, o combinaciones de valores y operadores matemáticos y/o relacionales.
Una expresión siempre tiene un valor determinado por la evaluación de su contenido:
Expresión Valor
5 5
122.3 + 3.1 125.4
((3 + 2) * -10) + 1 -49
6 > 3 true
54 < 50 false
Muchas veces un conjunto de expresiones conforma una instrucción.
Una variable puede ser utilizada en varios contextos. Veremos a continuación tres usos diferentes: 1) como parámetro de función, 2) como componente de una expresión de asignación y 3) como componente de una expresión perteneciente a un parámetro de función.
Introducción a Processing v1.5+ Docente: Raúl Lacabanne
18
Uso de una variable como parámetro de función
Ejemplo:int a = 30;line(a, 0, a, height);
Uso de una variable como componente de una expresión de asignación
Ejemplo:int a = 30;int b = a + 40;line(b, 0, b, height);
Uso de variables como componentes de una expresión perteneciente a un parámetro de función
Ejemplo:int a = 30;int b = 40;line(b a, 0, b a, height);
Lectura recomendada
• Buioli, I. & Pérez Marín, J. "Processing: un lenguaje al alcance de todos", Autoedición, 2013, Alpha, Unidad 4 "Matemáticas: funciones aritméticas" (pag. 20).
• Reas, C. & Fry, B. "Processing: A Programming Handbook for Visual Designers and Artists”, MIT Press, 2007, Capítulo “Math 1: Arithmetic, Functions” (pag. 43).
Información complementaria
Operador Módulo %
El operador % calcula el resto de un cociente. A menudo se lo utiliza para mantener los números dentro de un rango deseado. Por ej.: si partimos de un contador ascendente desde el número 0 y queremos obtener cuatro valores que se reiteren (un ciclo de valores), usamos la siguiente expresión:
Introducción a Processing v1.5+ Docente: Raúl Lacabanne
19
Atajos aritméticos
Hay veces que podrán encontrar en bocetos de programación una variable, tomemos por caso x, que al lado tiene un conjunto de ++, o , o +=, etc. Esta escritura no se parece a nada de lo que hemos visto hasta ahora. Pero se trata simplemente de atajos aritméticos, es decir, formas de escritura abreviadas de operaciones aritméticas simples. Por ejemplo, x++ es una forma abreviada de escribir x + 1, es decir un incremento de un paso (positivo) del valor de la variable. A ++ se lo llama operador de incremento. Y a se lo llama operador de disminución. Veamos unos ejemplos:
Operador de incremento ++int x = 1;println(x); // Imprime "1" en la consolax++; // Equivale a x = x + 1println(x); // Imprime "2" en la consola
Operador de disminución int y = 1;println(y); // Imprime "1" en la consolay; // Equivale a y = y 1println(y); // Imprime “0" en la consola
x++ ó ++x
También a veces veremos que el operador de incremento o de disminución se coloca a la derecha o a la izquierda de la variable. ¿Qué significa entonces esto? Esto hace referencia a cuando se actualiza el valor de la variable, si antes o después de evaluar la expresión. Veamos dos ejemplos:
x++En este caso el valor de la variable es actualizada LUEGO de que se evalúa la expresión.int x = 1;println(x++); // Imprime "1" en la consolaprintln(x); // Imprime “2" en la consola
++xEn este caso el valor de la variable se actualiza ANTES de evaluar la expresión.int x = 1;println(++x); // Imprime “2" en la consolaprintln(x); // Imprime “2" en la consola
Operadores de asignación de suma y substracción
Se utilizan para realizar incrementos o disminuciones de más de un paso (una unidad de valor).
Suma +=int x = 1;println(x); // Imprime "1" en la consolax += 5; // Equivalente a x = x + 5println(x); // Imprime “6" en la consola
Introducción a Processing v1.5+ Docente: Raúl Lacabanne
20
Resta =int y = 1;println(y); // Imprime "1" en la consolay = 5; // Equivalente a y = y 5println(y); // Imprime “4" en la consola
Operadores de asignación de multiplicación y división
Se utilizan para realizar incrementos o disminuciones de más de un paso (una unidad de valor).
Multiplicación *=int x = 4;println(x); // Imprime "4" en la consolax *= 2; // Equivalente a x = x * 2println(x); // Imprime "8" en la consola
División /=int y = 4;println(y); // Imprime "4" en la consolay /= 2; // Equivalente a y = y / 2println(y); // Imprime “2" en la consola
Operadores de negación
Cambia el signo del valor.
Negación –int x = 5; // Asigna 5 a xx = x; // Equivalente a x = x * 1println(x); // Imprime "5"
Ejercicio 04
• Tomar el EJ03, declarar tres variables y utilizarlas en tres contextos distintos:1. como parámetro de función.2. como componente de una expresión de asignación. Utilizar operadores aritméticos de
suma o resta.3. como componente de una expresión perteneciente a un parámetro de función.
Utilizar operadores aritméticos de suma o resta.• Comentar todas las instrucciones.
Introducción a Processing v1.5+ Docente: Raúl Lacabanne