martes, 29 de noviembre de 2016

Asignación, Expresiones, Entrada/Salida

Asignación 

Es el operador que permite dar un valor a una variable.
< sent_asignacion > ::= <variable > =<expresion >
 Ejemplo: i = 10;

 El operador de asignación es ”=”, y se lee toma el valor. La variable (izquierda) toma el valor de la expresión (derecha). Por defecto, las variables, después de haber sido declaradas, no tienen ningún valor (están indefinidas) y el programador debe encargarse de inicializarlas, es decir, asignarles un valor conocido, en el caso de que se vaya a utilizar su contenido. En el lado izquierdo de la sentencia de asignación solo puede haber una variable. Se evalúa la expresión de la derecha y el resultado se guarda en la variable. Las variables mantienen el valor que se les asigna hasta que cambian mediante otra sentencia de asignación (u otro mecanismo), momento en que pierden el antiguo valor. 

Expresiones


En los lenguajes de programación el concepto de expresión es similar al usado en matemáticas. Una expresión sera un conjunto de operadores y operandos que tras su evaluación devolverá un único valor. Para saber el resultado de una expresión debemos conocer la precedencia de los operadores, es decir, el orden en el que se evalúan dentro de la misma.
De mayor a menor precedencia, los operadores disponibles son: ! * / % && + - || == != < > <= >=


Entrada/salida en C++ 


Trataremos por el momento la entrada y salida de datos en forma de caracteres. En principio supondremos que nuestros programas de C++ son procesos (programas en ejecución) que toman información de un flujo de entrada y entregan información a un flujo de salida, utilizando para ello dispositivos externos capaces de manejar información en forma de caracteres organizados como una sucesión de lineas.
Se conocen como flujos de entrada/salida estándares aquellos que se realizan con la pantalla y con el teclado (E/S interactiva). 
Otra alternativa de comunicación con un programa consiste en preparar un fichero de datos, por ejemplo en el disco, de donde el programa los pueda leer cuando los necesite o grabar cuando tenga resultados ( E/S diferida).
En C++ las instrucciones para efectuar E/S se encuentran en módulos de librería, es decir, módulos pre-programados disponibles para el programador.


Entrada

 Este apartado se refiere a todas aquellas instrucciones que hacen posible introducir datos para que el programa los maneje. A continuación, veremos instrucciones que también se encuentran en el fichero de biblioteca iostream.h. En este caso, el flujo de entrada en cin y la operación que vamos a ver de momento para la lectura de datos es >>. Como en el caso de la salida, el parámetro puede ser de cualquier tipo.
 Ejemplo:
 int i, j;
char c;
 cin >> i;
 cin >> j;
 cin >> c;
 Finalmente vamos a señalar algunas notas importantes que hay que tener en cuenta al hacer entrada/salida interactiva:
1. Las entradas y salidas de nuestro programa tienen eco normalmente en el monitor y se mezclan. El programador debe prever este efecto para que el resultado sea legible.
2. El computador normalmente no se percata de lo que se teclea hasta pulsar la tecla ENTER, quien provoca además un salto de  línea en la pantalla. Por tanto es posible una edición limitada de los valores que se están tecleando (borrarlos, cambiarlos, etc...) antes de pulsar ENTER.
 3. Hay otras instrucciones que permiten hacer una salida con formato para que sea más visible, aunque por ahora no lo vamos a ver.


Salida

Para enviar datos a la salida por defecto (generalmente la pantalla del monitor del ordenador), vamos a usar el flujo de salida cout. Este flujo se encuentra en el fichero de biblioteca iostream.h. Aunque se pueden efectuar muchas operaciones diferentes sobre este flujo, por ahora solo vamos a ver la operación < < Esta operación manda un valor al flujo count. Este valor puede se de cualquier tipo.
Ejemplo
<<. Esta operación manda un valor al flujo cout. Este valor puede ser de cualquier tipo. Ejemplo: cout << "El valor de la variable cuyo nombre es i es ";
cout << i;
cout << endl;

El primer ejemplo escribe una cadena de caracteres, el segundo el contenido de la variable i y en el tercero se escribe el valor del carácter endl, lo que hace que se escriba una nueva línea. También se pueden concatenar los valores que se vayan a mandar a la salida.
 La siguiente instrucción equivale a las tres anteriores:

 cout << "El valor de la variable cuyo nombre es i es " << i << endl;

No hay comentarios:

Publicar un comentario