estructuras de control c++

22
UNIVERSIDAD NACIONAL EXPERIMENTAL DE LOS LLANOS OCCIDENTALES EZEQUIEL ZAMORA JORGE LEONARDO HIDALGO RODRIGUEZ C.I.: N° V-19187649 BARINAS, 01 DE JULIO DE 2016

Upload: jorge-leonardo

Post on 16-Jan-2017

261 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Estructuras de Control C++

UNIVERSIDAD NACIONAL EXPERIMENTAL DE LOS LLANOS OCCIDENTALES

EZEQUIEL ZAMORA

JORGE LEONARDO HIDALGO RODRIGUEZ

C.I.: N° V-19187649

BARINAS, 01 DE JULIO DE 2016

Page 2: Estructuras de Control C++

2

ÍNDICE

Pág.

Introducción…………………………………………………………………………………………………………3

Qué es C++……………………………………………………………………………………………………….………4

Estructura Condicional, Selectiva O Alternativa………………6

Instrucción IF……………………………………………………………………………….8

SENTENCIA IF/ELSE………………………………………………………………………12

SENTENCIA IF/ELSE ANIDADAS…………………………………………….…13

Instrucción switch……………………………………………………………………14

EJERCICIOS PROPUESTOS TIPO EJEMPLO PARA DESARROLLARLOS

EN EL LENGUAJE DE C++………………………………………………………………………………19

Page 3: Estructuras de Control C++

3

INTRODUCCIÓN

En lenguajes de programación, las estructuras de

control permiten modificar el flujo de ejecución de las

instrucciones de un programa.

En C++ el concepto de bloque de sentencias se

utilizar para agrupar un conjunto de sentencias dentro

de un ámbito concreto del programa. Un bloque de

sentencias es un conjunto de instrucciones englobadas

bajo llaves: ’{’ y ’}’.

Hay diferentes lugares, en un programa escrito en

C++, donde podemos usar bloques de código. Por ejemplo,

en la sintaxis habitual de la función main (), todas

las instrucciones que pertenecen a esta función

principal se escriben dentro de una llave de apertura

y una llave de cierre. Todo lo que hay entre esas dos

llaves es el código de la función principal. De la

misma manera, como se verá en el siguiente tema,

cualquier otra función tiene sus llaves para agrupar

las instrucciones que forman parte de ella.

Por otro lado, en C++ son posibles otros bloques de

código que, como veremos en este tema, están asociados

a estructuras de control y que engloban un conjunto de

instrucciones que se ejecutan bajo las condiciones que

controlan estas estructuras.

Page 4: Estructuras de Control C++

4

Las estructuras de control, denominadas también

sentencias de control, permiten tomar decisiones y

realizar un proceso repetidas veces. Se trata de

estructuras muy importantes, ya que son las encargadas

de controlar el flujo de un programa, según los

requerimientos del mismo.

Qué es C++

C++ es un lenguaje de programación orientado a

objetos que toma la base del lenguaje C y le agrega la

capacidad de abstraer tipos como en Smalltalk.

La intención de su creación fue el extender al

exitoso lenguaje de programación C con mecanismos que

permitieran la manipulación de objetos. En ese sentido,

desde el punto de vista de los lenguajes orientados a

objetos, el C++ es un lenguaje híbrido [¿por? fusionar

con el siguiente].

Posteriormente se añadieron facilidades de

programación genérica, que se sumó a los otros dos

paradigmas que ya estaban admitidos (programación

estructurada y la programación orientada a objetos).

Por esto se suele decir que el C++ es un lenguaje de

programación multiparadigma.

Page 5: Estructuras de Control C++

5

C++ es un lenguaje de programación diseñado a

mediados de los años 80 por Bjarne Stroustrup. La

intención de su creación fue el extender al exitoso

lenguaje de programación C con mecanismos que

permitieran la manipulación de objetos. En ese sentido,

desde el punto de vista de los lenguajes orientados a

objetos, el C++ es un lenguaje híbrido.

En la actualidad, el C++ es un lenguaje versátil,

potente y general. Su éxito entre los programadores

profesionales le ha llevado a ocupar el primer puesto

como herramienta de desarrollo de aplicaciones. El C++

mantiene las ventajas del C en cuanto a riqueza de

operadores y expresiones, flexibilidad, concisión y

eficiencia. Además, ha eliminado algunas de las

dificultades y limitaciones del C original. La

evolución de C++ ha continuado con la aparición de

Java, un lenguaje creado simplificando algunas cosas

de C++ y añadiendo otras, que se utiliza para realizar

aplicaciones en Internet.

Las principales herramientas necesarias para escribir

un programa en C++ son las siguientes:

Un compilador de C++

Paciencia

Nociones sobre programación

Page 6: Estructuras de Control C++

6

Un editor cualquiera de texto, o mejor un entorno

de desarrollo (IDE)

Si estas en windows puedes usar:

Visual c++

Visual Studio

Notepad++

DevCpp

Code::Blocks

Eclipse

entre otros

Si estas en Linux puedes usar:

Gedit

Geany

Kate

KDevelop

Eclipse

Code::Blocks

Entre otros

ESTRUCTURA CONDICIONAL, SELECTIVA O ALTERNATIVA.

Las estructuras condicionales controlan si una

sentencia o bloque de sentencias se ejecutan, en

función del cumplimiento o no de una condición o

expresión lógica.

Page 7: Estructuras de Control C++

7

C++ tiene dos estructuras de control para la

selección, if y switch.

1. Instrucción IF

Esta instrucción hace que se ejecuten unas

sentencias u otras dependiendo del valor que toma una

condición.

La instrucción if puede ser simple o doble:

Alternativa simple:

if (condicion)

instrucción1;

if (condicion)

{

instrucción 1;

instrucción 2;

instrucción 3;

}

Alternativa doble.

if (condicion)

instrucción1;

else

instrucción2;

if (condicion)

{

Page 8: Estructuras de Control C++

8

Instrucción 1;

instrucción 2;

}

else

{

instrucción 3;

instrucción 4;

}

Ejemplo de estructura condicional en C++.

Programa que lee un número entero por teclado y muestra

si es par o impar.

#include <iostream>

using namespace std;

int main(void)

{

int num;

cout <<"Introduzca numero:";

cin >> num;

if ((num%2)==0)

cout << "PAR" << endl;

else

cout << "IMPAR" << endl;

system("pause");

}

Page 9: Estructuras de Control C++

9

Las instrucciones if-else se pueden anidar

obteniéndose una estructura condicional múltiple:

if(condicion1)

instrucción1;

else if(condicion2)

instrucción2;

else if(condicion3)

instrucción3;

else if(condicion4)

instruccion4;

else

instrucción5;

instrucción 6;

instrucción 7;

......

En este caso se evalúa la condicion1; si es

cierta, se ejecuta la instrucción1 y se continúa por

la instrucción 6 después del bloque de if-else

anidados. Si la condición1 es falsa, se evalúa la

condicion2, y así sucesivamente.

En caso de no ser cierta ninguna de las

condiciones, la sentencia que se ejecuta es la del

último else, es decir, la instrucción 5.

Page 10: Estructuras de Control C++

10

Ejemplo de estructura condicional múltiple en

C++. Programa que lee un número entero que corresponde

a una hora y muestra un mensaje según la hora que se

haya leído.

#include <iostream>

using namespace std;

int main(void)

{

int hora;

cout << "\nIntroduzca una hora (entre 0 y 24):

";

cin >> hora;

if ((hora >= 0) and (hora < 12))

cout << "\nBuenos dias\n";

else if ((hora >= 12) and (hora < 18))

cout << "\nBuenas tardes\n";

else if ((hora >= 18) and (hora < 24))

cout << "\nBuenas noches\n";

else

cout << "\nHora no válida\n";

system("pause");

}

Otro ejemplo de estructura condicional múltiple

en C++. Programa que lee la calificación numérica

Page 11: Estructuras de Control C++

11

obtenida por un alumno en un examen y muestra la nota

equivalente en texto.

#include <iostream>

using namespace std;

int main(void)

{

unsigned int nota;

cout << "Introduzca una calificacion numerica

entre 0 y 10:";

cin >> nota;

cout << "La calificacion del alumno es" <<

endl;

if (nota == 10)

{

cout << "Matricula de Honor" << endl;

}

else if (nota >= 9)

{

cout << "Sobresaliente" << endl;

}

else if (nota >= 7)

{

cout << "Notable" << endl;

}

else if (nota >= 5)

Page 12: Estructuras de Control C++

12

{

cout << "Aprobado" <<

endl;

}

else

{

cout << "Suspenso" <<

endl;

}

system("pause");

}

2. SENTENCIA IF/ELSE

La sentencia if/else se ejecuta una acción cuando

toma un valor de verdad y cuando el valor es falso o

no cumple con la condición cumple con otra acción.

La forma general de la sentencia if/else es:

if (condición) sentencia; else sentencia; La sentencia if funciona de la siguiente manera:

1. Se evalúa la expresión lógica

Page 13: Estructuras de Control C++

13

2. Si la expresión toma el valor verdadero, se ejecutará

la sentencia y sino sigue con la siguiente sentencia. 3. Si la expresión toma el valor de falso entonces se

ejecutara la sentencia. 4. El control pasa de nuevo inmediatamente a la siguiente

sentencia del programa. Ejemplo: If (num<44) Cout<<”esta dentro del rango”; Else Cout<<”esta fuera del rango”;

3. SENTENCIA IF/ELSE ANIDADAS

La sentencia que sigue de la palabra else puede

ser cualquiera, incluso otra sentencia de este mismo

tipo. Cuando una o más sentencias otra sentencia, se

dice que dicha sentencia esta anidada y al proceso

anidamiento.

Una sentencia if anidad se puede utilizar para

construir decisiones con diferentes alternativas.

if (condición) sentencia;

else if (condición) sentencia;

Page 14: Estructuras de Control C++

14

else if (condición) sentencia;

if (condición) sentencia; else if (condición) sentencia; else if (condición) sentencia; else sentencia; Ejemplo: If (num<=56) Cout<<”Esta dentro del rango”; Else If (num>=115) Cout<<”Esta fuera del rango”; Else If (num<=0) Cout<<”Valor no Valido”;

4. Instrucción switch

La sentencia switch selecciona una de entre

múltiples alternativas.

La forma general de esta expresión es la siguiente:

switch (expresión)

{

case constante1:

Page 15: Estructuras de Control C++

15

instrucciones;

break;

case constante 2:

instrucciones;

break;

· · ·

default:

instrucciones;

}

En una instrucción switch, expresión debe ser una

expresión con un valor entero, y constante1,

constante2, ..., deben ser constantes enteras,

constantes de tipo carácter o una expresión constante

de valor entero. Expresión también puede ser de tipo

char, ya que los caracteres individuales tienen valores

enteros

Dentro de un case puede aparecer una sola

instrucción o un bloque de instrucciones.

La instrucción switch evalúa la expresión entre

paréntesis y compara su valor con las constantes de

cada case. Se ejecutarán las instrucciones de aquel

case cuya constante coincida con el valor de la

expresión, y continúa hasta el final del bloque o hasta

una instrucción que transfiera el control fuera del

bloque del switch (una instrucción break, o return).

Page 16: Estructuras de Control C++

16

Si no existe una constante igual al valor de la

expresión, entonces se ejecutan las sentencias que

están a continuación de default si existe (no es

obligatorio que exista, y no tiene porqué ponerse

siempre al final).

Ejemplo de uso de la instrucción switch en C++.

Programa que lee dos números y una operación y realiza

la operación entre esos números.

#include <iostream>

using namespace std;

int main(void)

{

int A,B, Resultado;

char operador;

cout << "Introduzca un numero:";

cin >> A;

cout << "Introduzca otro numero:";

cin >> B;

cout <<"Introduzca un operador (+,-,*,/):";

cin >> operador;

Resultado = 0;

switch (operador)

{

case '-' : Resultado = A - B;

break;

Page 17: Estructuras de Control C++

17

case '+' : Resultado = A + B;

break;

case '*' : Resultado = A * B;

break;

case '/' : Resultado = A / B;

//suponemos B!=0

break;

default : cout << "Operador no

valido"<< endl;

}

cout << "El resultado es: ";

cout << Resultado << endl;

system("pause");

}

Otro ejemplo de uso de switch en C++. Programa que

determina si un carácter leído es o no una vocal. En

ese caso como la sentencia a ejecutar por todas las

etiquetas case es la misma, esta sentencia se pone una

única vez al final:

#include <iostream>

using namespace std;

int main(void)

{

char car;

cout << "Introduzca un caracter: ";

Page 18: Estructuras de Control C++

18

cin >> car;

switch (car)

{

case 'a':

case 'A':

case 'e':

case 'E':

case 'i':

case 'I':

case 'o':

case 'O':

case 'u':

case 'U': cout << car << " es una vocal"

<< endl;

break;

default : cout << car << " no es una

vocal" << endl;

}

system("pause");

}

Page 19: Estructuras de Control C++

19

EJERCICIOS PROPUESTOS TIPO EJEMPLO PARA

DESARROLLARLOS EN EL LENGUAJE DE C++

Si Condicional (IF)

1. Para practicar el uso de condicional if … else

en C vamos a desarrollar una serie de ejercicios

resueltos. El primer ejercicio plantea lo siguiente:

Transformar en código el siguiente pseudocódigo,

relativo a determinar la naturaleza par o impar de un

número. Nota: El procedimiento a emplear será basado

en el uso del operador módulo, %.

2. Se quiere crear un programa que resuelva la

ecuación cuadrática tipo ax2 + bx + c. Para ello se ha

estudiado el problema, que se ha planteado en

pseudocódigo. Transformar el pseudocódigo que se

muestra a continuación en código C y comprobar que el

programa obtiene los resultados esperados para una

serie de casos de prueba.

3. Crear una función que permita calcular el cubo

de un número real.

4. Ordena dos números de forma ascendente.

5. Calcula el subsidio de una familia segun algunas

condiciones.

6. Calcula la suma de impares hasta un n:

1+3+5+7+...n.

Page 20: Estructuras de Control C++

20

7. Calcula la menor y mayor cifra de un número

entero.

8. Calcula el area de un triángulo conociendo sus

tres lados, con el uso del if.

9. Crear una función que reciba un número real y

devuelva un número entero con el valor: -1 si el número

es negativo, 1 si el número es positivo y 0 si el número

es cero.

10. Programa de cálculo de promedio de notas.

11. Juego de dados La máquina juega sola.

12. Programa que calcula la media aritmética y

geométrica.

13.

Estructura de Control Switch

1. Calcula diferentes operaciones con el uso de un

menú.

2. Programa que cambia de base según un menú.

3. Programa que muestra una serie de operaciones con

vectores.

4. Programa que muestra una serie de operaciones con

registros.

5. Primera práctica calificada.

6. Programa que crea una base de datos, hace una serie

de búsquedas como: Búsqueda individual para buscar a

una persona por su código o una búsqueda general para

Page 21: Estructuras de Control C++

21

mostrar a todos los miembros de un dpto. además de la

opción salir

Page 22: Estructuras de Control C++

22