Lenguaje de programacion C++ 4

23
Administración de Proyectos de desarrollo de Software Ciclo de vida de un proyecto Enfoque moderno Tema Estatuto while Repeticiones

Transcript of Lenguaje de programacion C++ 4

Administración de Proyectos de desarrollo de Software

Ciclo de vida de un proyecto

Enfoque moderno

Tema• Estatuto while

Repeticiones

Repeticiones

• Un ciclo es cualquier construcción de programa que repite una sentencia o secuencia de sentencias un número de veces.

• La sentencia o grupo de sentencias que se repite en un bloque se denomina cuerpo del ciclo y cada repetición del cuerpo del ciclo se llama iteración del ciclo.

Estatuto while

• Un ciclo while tiene una condición del ciclo, una expresión lógica que controla la secuencia de repetición.

Estatuto while

Repeticiones

Estatuto while

• La posición de esta condición del ciclo es delante del cuerpo del ciclo y significa que un ciclo while es un ciclo de preverificación de modo que cuando se ejecuta el mismo, se evalúa la condición antes de que se ejecute el cuerpo del ciclo.

Sintaxis while ( condición ) estatuto;

Repeticiones

Estatuto while

• Si se requiere realizar más de un estatuto se deben utilizar llaves. while ( condición ) { bloque de estatutos; }

Aquí se ejecuta el (los) estatuto (s) mientras la condición es verdadera; al momento de ser falsa termina el ciclo.

Si la condición es falsa la primera vez nunca se ejecuta(n) el (los) estatuto(s).

Repeticiones

Estatuto while

Ejemplos: Ejemplo I: Programa que pide 10 números y calcula y muestra la suma de todos los que fueron pares.

#include <iostream.h>

int suma=0, cont= 10, num; int main() { while (cont > 0) { cout << "Dame el numero " << endl; cin >> num; if (num % 2 == 0 ) // verificamos que sea un número par suma += num; // recordemos que suma+= num es equivalente a suma = suma + num (ver

modulo1 sección 3) cont--; } cout << "La suma de los numeros pares proporcionados es " << suma << endl; return 0; }

Repeticiones

Estatuto while

Ejemplo II : Obtener el promedio de calificaciones de un grupo de 20 estudiantes#include <iostream.h>

int total, contador, calif;double promedio;

int main(){ total = 0; contador = 1; while (contador <= 20 ) { cout<<" Dame la calificacion "<<endl; cin >> calif; total = total + calif; contador ++; } promedio = total / 20.0; cout<<"El promedio es "<< promedio<<endl; return 0;}

Administración de Proyectos de desarrollo de Software

Ciclo de vida de un proyecto

Enfoque moderno

Temas• Estatuto do - while

Repeticiones

Repeticiones

Estatuto do – while

• El estatuto do-while se utiliza para especificar un ciclo condicional que se ejecuta al menos una vez.

• Este ciclo se presenta en algunas circunstancias en las que se ha de tener la seguridad de que una determinada acción se ejecutara una o más veces, pero al menos una vez.

Sintaxis do estatuto; while ( condición );

Estatuto do - while

Repeticiones

Estatuto do - while

• Si se requiere realizar más de un estatuto se deben utilizar llaves.

do {

bloque de estatutos; }

while ( condición ); // nota que lleva ;

• Se realizan los estatutos y se verifica la condición, mientras sea verdadera se sigue ejecutando; al momento de ser falsa termina el ciclo.

• Dado que la condición se revisa al final del ciclo el (los) estatuto(s) se realizan al menos una vez a diferencia del while

Repeticiones

Estatuto do - while

Ejemplo I: Dado un número de tipo long decir cuántos dígitos tiene

#include <iostream.h> long num; int cant = 0, x;

int main() { cout<<"Teclea un numero "; cin>>num; x = num; // guardo el numero en otra variable para no perderlo (por si luego lo ocupo) do { x = x / 10; cant++; } while (x > 0); cout<<"El numero tiene "<<cant <<" digitos"<<endl; return 0; }

Repeticiones

Estatuto do - while

Ejemplo II: Validar que un número dado esté en el rango de 10 a 20. #include <iostream.h>

int num;

int main() { do { cout << "Dame el numero " << endl; cin >> num; } while ( (num <10) || (num > 20) ); cout << "Numero dentro de rango" << endl; return 0; }

donde si la condición es falsa la primera vez no se ejecuta lo que esté dentro del ciclo.

Administración de Proyectos de desarrollo de Software

Ciclo de vida de un proyecto

Enfoque moderno

Tema• Estatuto for

Repeticiones

Repeticiones

• El estatuto for es un método para ejecutar un bloque de sentencias un número fijo de veces.

• El ciclo for se diferencia del ciclo while, do- while en que las operaciones de control del ciclo se sitúan en un solo sitio: la cabecera de l estatuto.

Sintaxis

for (inicialización ; condición ; incremento ) estatuto;

Estatuto for

Repeticiones

Estatuto for

• Si se requiere realizar más de un estatuto se deben utilizar llaves.

for (inicialización ; condición ; incremento ) { bloque de estatutos; }

• Funcionamiento del For

10.Ejecuta el o los estatutos de inicialización11.Evalúa la condición, si es verdadera entra al ciclo12.Ejecuta el o los estatutos13. Incrementa o decrementa el o los estatutos de inicialización y regresa al paso 2

Repeticiones

Estatuto for

Notas sobre el for

• Las 3 partes del for son opcionales, si no se pone condición se toma como verdadero.

• Si no se incluye la inicialización o condición, la condición y el incemento o decremento deben de ir.

Ejemplo: for ( ; a > 10 ; a--)

• Si la primera vez la condición es falsa no se ejecuta ningún estatuto y termina el for

Repeticiones

Estatuto for

• Si se pone más de una inicialización o acción, estas deben ir separadas por coma

Ejemplo: for ( x=0, y= 3; x < 4 ; x++ )

• Una variable puede declararse en la sección de inicialización, solo hay que tomar en cuenta que esta variable solo es reconocida dentro del ciclo.

Ejemplo: for (int num = 1; num < = 10; num++)

Repeticiones

Estatuto for

Ejemplo I: Mostrar los 30 primeros números de la serie de Fibonacci. La serie es 1,1,2,3,5,8,13....

#include <iostream.h> long a, b, fibo; //los defino long porque se generan numeros muy grandes int i;

int main() { a = 1; b = 1; cout<<a<<"\t"<<b<<"\t"; // "\t" sirve para poner un tab en la pantalla for (i = 3; i<= 30; i++) // empiezo i en 3 porque ya mostre los 2 primeros { fibo = a + b; cout<<fibo<<"\t"; a = b; b = fibo; } return 0; }

Repeticiones

Estatuto for

Ejemplo II: Sumar todos los números nones desde 1 hasta 30

#include <iostream.h>

int num, suma = 0;

int main() { for (num = 1; num <= 30; num+=2) // incremento de 2 en 2 para asegurar suma += num; // números nones cout << " La suma es " << suma; return 0; }

Administración de Proyectos de desarrollo de Software

Ciclo de vida de un proyecto

Enfoque moderno

Tema• Ciclos infinitos

Repeticiones

Repeticiones

Ciclo infinito

• Cuando en un ciclo la condición siempre es verdadera se dice que es

un ciclo infinito, pues nunca saldrá del ciclo y el programa no termina.

Para evitarlos hay que estar seguros que en el bloque de estatutos haya

un estatuto que modifique el valor de la condición de tal modo que

llegue a ser falsa.

Ciclos infinitos

Repeticiones

Ciclos infinitos

Ejemplo I

while ( calificacion != -1) total = total + calificacion; // dado que no hay llaves la lectura del

número contador ++; // no se realiza y el valor de la

calificación no cout << "Da un -1 para terminar el ciclo" << endl; // cambia, por ende la

cin >> calificacion // la condición siempre es verdadera

Repeticiones

Ciclos infinitos

Ejemplo II

cont = 6; a = 10; while ( cont > 1) { suma = suma + cont; a--; cont++; // cont cada vez es mayor por lo que // siempre será mayor a 1 }

Administración de Proyectos de desarrollo de Software

Ciclo de vida de un proyecto

Enfoque moderno

Fin de la presentación

Continúe con el desarrollo de la actividad de la semana

Repeticiones