sábado, 30 de noviembre de 2019

PORTADA










   COLEGIO DE BACHILLERES
   PLANTEL N.29
   EL TREINTA


C.C.T: 12ECB0051C


Materia:
Tecnologías de la información y la comunicación.


Tema: 
Algoritmos, Diagrama de Flujos, Pseudocódigo, Decisiones, Ciclos.


Maestro:
Ranulfo Flores Arizmendi


Alumnas:
Grecya Alessandra García Lorenzano. 17291015



Grupo: 501                      Semestre: 5



Noviembre/2019.

CICLOS



CICLOS

¿Que son los ciclos de programación y cómo funcionan?

Un bucle o ciclo, en programación, es una secuencia que ejecuta repetidas veces un trozo de código, hasta que la condición asignada a dicho bucle deja de cumplirse. Los tres bucles más utilizados en programación son el bucle while, el bucle for y el bucle do-while.
Los ciclos o bucles de programación (también denominados estructuras de control iterativas o repetitivas) son sentencias que se utilizan para ejecutar una o varias instrucciones de forma repetitiva cuando sea necesario.
El funcionamiento es más sencillo de lo que parece, ya que estas estructuras están controladas por ciertas variables o condiciones. De esa manera es posible tener un control de la cantidad de repeticiones y así evitar la aparición de bucles infinitos. No obstante, existen varios tipos de ciclos de programación y cada uno de ellos tiene su propia finalidad.




Tipos de ciclos de programación

Es posible hallar tres estructuras de control repetitivas: while, do-while y for. El uso dependerá de las necesidades del desarrollador y el programa en cuestión, por lo que es importante entender cómo funciona cada una de ellas.

   
Ciclo for

En español se traduce como “ciclo para” y es uno de los bucles más utilizados en la programación gracias a su estructuración, ya que permite determinar el número de repeticiones a realizar (además, es necesario conocer dicho valor para su uso). El mismo está compuesto por cuatro parámetros:

  • Variable de inicio del ciclo: es donde se comenzará a ejecutar.
  • Condición o límite del ciclo: sirve como determinante de la continuidad o finalización del ciclo. Solo se repite en caso de que la condición sea verdadera.
  • Modificador: se encargará de modificar la variable cuando sea necesario.
  • Cuerpo: donde se añaden las instrucciones a repetir, pudiendo ser una o varias.
Sintaxis del ciclo for en C++

  
 Ciclo while


El ciclo de programación while (que se traduce como “ciclo mientras”) permite establecer una condición donde se repetirán las instrucciones hasta que dicha condición no se cumpla.

A diferencia del ciclo anterior, este no cuenta con un valor inicial o final, solo está compuesto por la condición. Sin embargo, es necesario añadir una sentencia que finalice el ciclo.

Este bucle se utiliza cuando se desea repetir ciertas instrucciones un número indeterminado de veces hasta que no se cumpla la condición.

Sintaxis del bucle while en C++



   Ciclo do-while

Se traduce como “repetir mientras”. A diferencia del bucle anterior, el bucle do-while primero ejecuta las instrucciones y luego hace la comprobación de la condición especificada, lo que significa que se ejecutará al menos una vez. En otras palabras, las acciones se realizarán hasta que se cumpla la condición.
Un claro ejemplo es un programa en el que se debe ingresar una cantidad determinada (digamos que del 1 al 5). Si el usuario añade un número fuera de dicho rango la aplicación le seguirá pidiendo un número.


Sintaxis de do-while en C++

¿Por qué utilizar bucles en programación y cuándo hacerlo?


A pesar de que los principiantes suelen creer que duplicar el código puede ser una alternativa, en realidad es una mala decisión. Esto se debe a que repetir códigos trae consigo una serie de problemas, como menor productividad, dificultad de revisión o actualización del programa y un mayor peso del archivo.
En otras palabras, la importancia de los ciclos de programación radica en la posibilidad de:
  • Disminuir la cantidad de instrucciones a usar.
  • Reducir el tamaño del programa.
  • Programar con mayor rapidez.
  • Solicitar datos según un valor desconocido al momento de ejecutar la aplicación.
El uso de los bucles de programación puede ser confuso cuando no se tiene experiencia. Sin embargo, existe una forma de saber cuándo utilizar el ciclo for, while o do-while. Esta técnica consiste en analizar si existe una cantidad determinada o indeterminada de itiraciones. En caso de contar con número definido de repeticiones, se debe utilizar for; mientras que en caso contrario se debe optar por elegir while o do-while según las funcionalidades descritas anteriormente.

DECISIONES


DECISIONES

Las sentencias de decisión o también llamadas de CONTROL DE FLUJO son estructuras de control que realizan una pregunta la cual retorna verdadero o falso (evalúa una condición) y selecciona la siguiente instrucción a ejecutar dependiendo la respuesta o resultado.
En algún momento dentro de nuestros algoritmos, es preciso cambiar el flujo de ejecución de las instrucciones, es decir, el orden en que las instrucciones son ejecutadas. Muchas de las veces tenemos que tomar una decisión en cuanto a que se debe ejecutar basándonos en una respuesta de verdadero o falso (condición).
La ejecución de las instrucciones incluyendo una estructura de control como el condicional funciona de esta manera:
Las instrucciones comienzan a ejecutarse de forma secuencial (en orden) y cuando se llega a una estructura condicional, la cual está asociada a una condición, se decide qué camino tomar dependiendo siempre del resultado de la condición siendo esta falsa o verdadera.
Cuando se termina de ejecutar este bloque de instrucciones se reanuda la ejecución en la instrucción siguiente a la de la condicional.



SENTENCIA IF
La instrucción if es, por excelencia, la más utilizada para construir estructuras de control de flujo.

SINTAXIS
Primera Forma
Ahora bién, la sintaxis utilizada en la programación de C++ es la siguiente:
if (condición)
   {
       Set de instrucciones
   }


Siendo "condición" el lugar donde se pondrá la condición que se tiene que cumplir para que sea verdadera la sentencia y así proceder a realizar el "set de instrucciones" o código contenido dentro de la sentencia.

Segunda Forma
Ahora veremos la misma sintaxis pero ahora le añadiremos la parte "Falsa" de la sentencia:
if (condición)
   {
       Set de instrucciones    //PARTE VERDADERA
   }
else
   {
       Set de instrucciones 2  //Parte FALSA
   }

La forma mostrada anteriormente muestra la unión de la parte "VERDADERA" con la nueva secuencia la cual es la parte "FALSA" de la sentencia de decisión "IF" en la cual está compuesta por el:

else
   {
     Set de instrucciones 2  //Parte FALSA
   }

La palabra "else" o "De lo contrario" indica al lenguaje que de lo contrario al no ser verdadera o no se cumpla la parte verdadera entonces realizara el "set de instrucciones 2".

EJEMPLOS DE SENTENCIAS IF...

Ejemplo 1:
if(numero == 0) //La condicion indica que tiene que ser igual a Cero
    {
      cout<<"El Numero Ingresado es Igual a Cero";
    }


SENTENCIA SWITCH
Switch es otra de las instrucciones que permiten la construcción de estructuras de control. A diferencia de if, para controlar el flujo por medio de una sentencia switch se debe de combinar con el uso de las sentencias case y break.
Notas: cualquier número de casos a evaluar por switch así como la sentencia default son opcionales. La sentencia switch es muy útil en los casos de presentación de menús.

Sintaxis:
switch (condición)
{
    case primer_caso:
         bloque de instrucciones 1
    break;

    case segundo_caso:
         bloque de instrucciones 2
    break;

    case caso_n:
         bloque de instrucciones n
    break;

    default: bloque de instrucciones por defecto
}

Ejemplo 1
switch (numero)
{
    case 0: cout << "numero es cero";
}

Ejemplo 2
switch (opcion)
{
    case 0: cout << "Su opcion es cero"; break;
    case 1: cout << "Su opcion es uno"; break;
    case 2: cout << "Su opcion es dos";
}

Ejemplo 3
switch (opcion)
{
    case 1: cout << "Su opcion es 1"; break;
    case 2: cout << "Su opcion es 2"; break;
    case 3: cout << "Su opcion es 3"; break;
    default: cout << "Elija una opcion entre 1 y 3";
}

Operador condicional ternario?:

En C/C++, existe el operador condicional ( ?: ) el cual es conocido por su estructura como ternario. El comportamiento de dicho operador es el mismo que una estructura if - then - else del lenguaje BASIC (y de la función IIf de Visual Basic). El operador condicional?: es útil para evaluar situaciones tales como:

Si se cumple tal condición entonces haz esto, de lo contrario haz esto otro.

Sintaxis:

( (condicion) ? proceso1 : proceso2 )

En donde, condicion es la expresión que se evalua, proceso1 es la tarea a realizar en el caso así también se conoce caridad de que la evaluación resulte verdadera, y proceso2 es la tarea a realizar en el caso de que la evaluación o negativa resulte falsa.

Ejemplo 1
int edad;
cout << "Cual es tu edad: ";
cin >> edad;
cout << ( (edad < 18) ? "Eres joven aun" : "Ya tienes la mayoría de edad" );

El ejemplo anterior podría escribirse de la siguiente manera:
int edad;
cout << "Cual es tu edad: ";
cin >> edad;
if (edad < 18) cout << "Eres joven aun";
    else cout << "Ya tienes la mayoría de edad";

SENTENCIAS DE ITERACIÓN

DEFINICIÓN
Las Sentencias de Iteración o Ciclos son estructuras de control que repiten la ejecución de un grupo de instrucciones. Básicamente, una sentencia de iteración es una estructura de control condicional, ya que dentro de la misma se repite la ejecución de una o más instrucciones mientras que una a condición específica se cumpla. Muchas veces tenemos que repetir un número definido o indefinido de veces un grupo de instrucciones por lo que en estos casos utilizamos este tipo de sentencias. en C++ los ciclos o bucles se construyen por medio de las sentencias for, while y do - while. La sentencia for es útil para los casos en donde se conoce de antemano el número de veces que una o más sentencias han de repetirse. Por otro lado, la sentencia while es útil en aquellos casos en donde no se conoce de antemano el número de veces que una o más sentencias se tienen que repetir.

Sentencias For
for(contador; final; incremento)
{
    Codigo a Repetir;
}

Donde:
contador es una variable numérica
final es la condición que se evalua para finalizar el ciclo (puede ser independiente del contador)
incremento es el valor que se suma o resta al contador
Hay que tener en cuenta que el "for" evalua la condición de finalización igual que el while, es decir, mientras esta se cumpla continuaran las repeticiones.

Ejemplo 1:
for(int i=1; i<=10; i++)
{
    cout<<"Hola Mundo";  
}

Sentencia while
while(condicion)
{
    código a Repetir
}

Donde:
Condición es la expresión a evaluar
int contador = 0;

while(contador<=10)
{
    contador=contador+1;
    cout<<"Hola Mundo";
}

Sentencia do – while

La sentencia do es usada generalmente en cooperación con while para garantizar que una o más instrucciones se ejecuten al menos una vez. Por ejemplo, en la siguiente construcción no se ejecuta nada dentro del ciclo while, el hecho es que el contador inicialmente vale cero y la condición para que se ejecute lo que está dentro del while es "mientras el contador sea mayor que diez". Es evidente 
que a la primera evaluación hecha por while la condición deja de cumplirse.

int contador = 0;

while(contador > 10)
{
    contador ++;
    cout<<"Hola Mundo";
}

Al modificar el segmento de código anterior usando do tenemos:
int contador = 0;

do
{
    contador ++;
    cout<<"Hola Mundo";
}
while(contador > 10);

Observe cómo en el caso de do la condición es evaluada al final en lugar de al principio del bloque de instrucciones y, por lo tanto, el código que le sigue al do se ejecuta al menos la primera vez.

SENTENCIAS BREAK Y CONTINUE

En la sección (Sentencia switch) vimos que la sentencia break es utilizada con el propósito de forzar un salto dentro del bloque switch hacia el final del mismo. En esta sección volveremos a ver el uso de break, salvo que esta ocasión la usaremos junto con las sentecias for y la sentencia while. Además, veremos el uso de la sentencia continue.
break

La sentencia break se usa para forzar un salto hacia el final de un ciclo controlado por for o por while.

Ejemplo:
En el siguiente fragmento de código la sentencia break cierra el ciclo for cuando la variable ( i ) es igual a 5. La salida para el mismo será:
0 1 2 3 4

for (int i=0; i<10; i++) {
    if (i == 5) break;
    cout << i << " ";
}
continúe

La sentencia continúe se usa para ignorar una iteración dentro de un ciclo controlado por for o por while.

Ejemplo:
En el siguiente fragmento de código la sentencia continúe ignora la iteración cuando la variable ( i ) es igual a 5. La salida para el mismo será:
0 1 2 3 4 6 7 8 9

for (int i=0; i<10; i++) {
    if (i == 5) continue;
    cout << i << " ";
}

Uso de break y continue junto con while

Los dos ejemplos anteriores se presentan en seguida, salvo que en lugar de for se hace uso de while.

Nota: no deje de observar que la construcción del ciclo while para el caso de la sentencia continue es diferente, esto para garantizar que el ciclo no vaya a caer en una iteración infinita.
Break

int i = 0;
while (i<10) {
    if (i == 5) break;
    cout << i << " ";
    i++;
}

Continúe
int i = -1;
while (i<10) {
    i++;
    if (i == 5) continue;
    cout << i << " ";
}