4
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

Intro Processing v1.5 - 05 - Raúl Lacabanne

Embed Size (px)

DESCRIPTION

Intro Processing v1.5 - 05 - Raúl Lacabanne

Citation preview

Page 1: Intro Processing v1.5 - 05 - Raúl Lacabanne

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

Page 2: Intro Processing v1.5 - 05 - 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

Page 3: Intro Processing v1.5 - 05 - 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

Page 4: Intro Processing v1.5 - 05 - 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