lenguajes formales

Páginas: 7 (1619 palabras) Publicado: 1 de noviembre de 2013
Expresiones y sentencias
Expresión
Construcción (combinación de tokens)
que se evalúa para devolver un valor.

Sentencia
Representación de una acción o una secuencia de acciones.
En Java, todas las sentencias terminan con un punto y coma [;].

Construcción de expresiones
§ Literales y variables son expresiones primarias:
1.7
sum

// Literal real de tipo double
// Variable

- Losliterales se evalúan a sí mismos.
- Las variables se evalúan a su valor.
§ Los operadores nos permiten combinar expresiones primarias y
otras expresiones formadas con operadores:
1 + 2 + 3*1.2 + (4 +8)/3.0

Los operadores se caracterizan por:
- El número de operandos (unarios, binarios o ternarios).
- El tipo de sus operandos (p.ej. numéricos o booleanos).
- El tipo del valor que generancomo resultado.
Introducción a la Programación: Java

- 44 -

© Fernando Berzal

Número de operandos
- Operadores unarios
Operador

Descripción
Cambio de signo
Operador NOT
Complemento a 1

!
~

- Operadores binarios
Operadores
+ - * / %
== != < >
=
&& || ^
& | ^
> >>>
+

Descripción
Operadores aritméticos
Operadores relacionales
Operadores booleanos
Operadores anivel de bits
Concatenación de cadenas

Tipo de los operandos
Operadores
+ - * / %
== !=
< > =
¡ && || ^
~ & | ^
> >>>
+

Descripción
Operadores aritméticos
Operadores de igualdad

Operadores booleanos

Operandos
Números
Cualesquiera
Números
o caracteres
Booleanos

Operadores a nivel de bits

Enteros

Concatenación de cadenas

Cadenas

Descripción
Operadoresaritméticos

Resultado
Número*

Operadores de comparación

Tipo del resultado
Operadores
+ - * / %
== != < >
=
¡ && || ^
~ & | ^
> >>>
+

Operadores relacionales

Booleano

Operadores booleanos
Operadores a nivel de bits

Entero

Concatenación de cadenas

Cadena

Introducción a la Programación: Java

- 45 -

© Fernando Berzal

Sentencias de asignación
Lassentencias de asignación constituyen el ingrediente básico en la
construcción de programas con lenguajes imperativos.

Sintaxis:
= ;

Al ejecutar una sentencia de asignación:
1. Se evalúa la expresión que aparece a la derecha del operador de
asignación (=).
2. El valor que se obtiene como resultado de evaluar la expresión
se almacena en la variable que aparece a la izquierda del
operador deasignación (=).

Restricción:
El tipo del valor que se obtiene como resultado de evaluar la
expresión ha de ser compatible con el tipo de la variable.

Ejemplos
x = x + 1;

// Declaración con inicialización
otraVariable = miVariable; // Sentencia de asignación
int miVariable = 20;

NOTA IMPORTANTE:
Una sentencia de asignación no es una igualdad matemática.
Introducción a laProgramación: Java

- 46 -

© Fernando Berzal

Efectos colaterales
Al evaluar una expresión, algunos operadores provocan efectos
colaterales (cambios en el estado del programa; es decir, cambios en
el valor de alguna de las variables del programa).

Operadores de incremento (++) y decremento (--)
El operador ++ incrementa el valor de una variable.
El operador -- decrementa el valor de unavariable.
El resultado obtenido depende de la posición relativa del operando:
Operador
x++
++x
x---x

Descripción
Post-incremento
Evalúa primero y después incrementa
Pre-incremento
Primero incrementa y luego evalúa
Post-decremento
Evalúa primero y luego decrementa
Pre-decremento
Primero decrementa y luego evalúa

Ejemplo

Equivalencia

Resultado

i=0; i++;
i=1; j=++i;
i=1;j=i++;
i=3; n=2*(++i);
i=3; n=2*(i++);
i=1; k=++i+i;

i=0; i=i+1;
i=1; i=i+1; j=i;
i=1; j=i; i=i+1;
i=3; i=i+1; n=2*i;
i=3; n=2*i; i=i+1;
i=1; i=i+1; k=i+i;

i=1;
j=2;
j=1;
n=8;
n=6;
k=4;

El uso de operadores de incremento y decremento reduce el tamaño
de las expresiones pero las hace más difíciles de interpretar. Es mejor
evitar su uso en expresiones que modifican múltiples...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Lenguaje Formal
  • lenguaje formal
  • El Lenguaje Formal
  • Lenguajes Formales
  • Automatas Y Lenguaje Formales
  • Autómatas y lenguajes formales.
  • Ensayo lenguajes formales
  • formalismo y relativismo del lenguaje

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS