PLE:Unidad22

Esta unidad es una continuación de la anterior y seguiremos estudiando las estructuras básicas del lenguaje C++. En primer lugar estudiaremos la entrada y salida básica para continuar con las estructuras de control.

En esta unidad veremos:


 * Entrada y salida por pantalla.
 * Sentencias de control de programa.
 * Sentencias de asignación.
 * Entrada y salida de flujo en C++

=Entrada y salida básica= La entrada y salida de datos en C++ se lleva a cabo por medio de streams (flujos), que representan objetos desde (o hacia) los que podemos extraer o insertar caracteres deforma secuencial.

En el fichero de cabecera se encuentran definidos los objetos para la entrada y salida estandar, dedominados cin y cout.

Salida estandar (cout)
La salida estandar en C++ es la pantalla de nuestro ordenador. El objeto asociado con dicha salida estandar es cout.

El objeto cout emplea al operador de inserción "<<" que nos servirá para pasarle los datos a insertat.

cout << "Hola"; cout << 489; cout << 13.69; cout << x;

Tambien es posible utilizar varias veces el operador de inserción para pasar varios datos en uns sola instrucción:

cout << "El valor de pi es = " << 3.1416;

Si queremos incluir saltos de linea podemos emplear el código de escape '\n' o bien el manipulador "endl".

cout << "Una linea.\n "; cout << "segunda linea.\n"; cout << "tercera linea." << endl; cout << "cuarta linea." << endl;

Entrada estandar (cin)
El dispositivo de entrada estandar como podemos suponer es el teclado de nuestro ordenador. Para extraer datos desde el teclado empleamos el objeto "cin", que se utiliza en conjunción con el operador de extracción representado como ">>".

int numero; cin >> numero;

La lectura desde teclado se produce tras pulsar la tecla "Enter", incluso en el caso de que leamos un solo caracter.

Ejemplo

// Ejemplo de entrada y salida using namespace std; void main {  int n;   cout << "Introduzaca un numero: "; cin >> n;  cout << "Numero es igual a " << i; }
 * 1) include

Tambien es posible llevar a cabo la lectura de varios valores en una única instrucción incluyendo varios operadores de extracción:

cin >> a >> b;

=Estructuras de control= Las estructura de control permiten la ejecución de varias sentencias bajo determinadas condiciones, generalmente expresadas como expresiones lógicas. Una estructura de control puede venir acompañada de una sola sentencia terminada en punto y coma o de un bloque de sentencias. Un bloque de sentencias está formado por un conjunto de sentencias que se ejecutan en en orden y vienen delimitadas por llaves "{}", tal como se muestra a continuación.

{ 	sentencia1; sentencia2; ... 	sentenciaN; }

if/else
La estructura de control if/else permite la ejecución de una sentencia en caso de cumplirse una condición:

if (condicion) sentencia;

La condición es una expresión de tipo lógico que será evaluada. Si el resultado de la condición es "true", entonces se ejecutará la sentencia, en caso contrario la sentencia es ignorada.

Ejemplo: if (x % 2 == 0) cout << "x es par";

Podemos utilizar un bloque para incluir varias sentencias:

if (x % 2 == 0) {    cout << "x es par." << endl; cout << "El valor de x es = "; cout << x; }

Además se puede agregar una clausula "else", lo que nos permitirá agregar la sentencia a ejecutar en caso de no cumplirse la condición especificada en el "if".

if (condicion) statement1; else statement2;

Ejemplo:

if (x % 2 == 0) cout << "x es par"; else cout << "x es impar";

Es posible concatenar varias expresiones "if" tal como se muestra a continuación:

if (x > 0) cout << "x es positivo"; else if (x < 0) cout << "x es negativo"; else cout << "x es cero";

Otra forma equivamente sería;

if (x > 0) cout << "x es positivo"; else if (x < 0) cout << "x es negativo"; else cout << "x es cero";


 * C con clase. Capítulo 5

=Ejercicios propuestos=
 * 1) Crear un programa que acepte por teclado un número entero, otro float y un double, sumar todos los números y almacenar el resultado en variables entera, float y double. Compara los resultados.
 * 2) Si declaro una variable int y otra float y el resultado de su multiplicación lo introduzco en la variable m de tipo double con el operador de conversión de tipo explícito int, ¿qué valor se almacena en m? ¿Y si no utilizamos el conversor de tipo?
 * 3) Calcula el area de una circunferencia.
 * 4) Calcula el area de un rectágulo.
 * 5) Escribir un programa que acepte una variable de tipo char y visualizar su código ASCII
 * 6) Escribir un programa que acepte un entero (entre 0 y 255) y visualice el carácter que le corresponde. ¿Qué ocurre si el número es superior a 255?
 * 7) Escribir un programa que visualice el número de bytes que ocupa cada tipo.
 * 8) Lee dos números y visualiza el mayor.
 * 9) Lee tres números por teclado y muestralos en orden ascendente.
 * 10) Lee un número que represente un año e indica si es bisiesto.

=Soluciones= Las soluciones se pueden consultar en:


 * EJERCICIOS 2.2: Lenguaje C++.