Vous êtes sur la page 1sur 3

Carrera Profesional Ingeniera de Sistemas e Informtica

Estructura Iterativa for.


1. OBJETIVOS: El alumno deber ser capaz de: Utilizar los comandos FOR (estructuras repetitivas) para poder editar un programa y ejecutarlo con xito. Conocer los diversos usos y modalidades.

2. INTRODUCCION: Las estructuras o ciclos de repeticin son muy tiles pues nos facilitan la repeticin de algunos procesos, sin ellos habra que escribir varias veces estos procesos. Existen tres tipos de ciclos de repeticin: Mientras, y Hacer Mientras, DesdeHasta Desde o Desde... Hacer, es el ms sencillo, y por ello el ms usado. El uso de un punto inicial (inicio), uno final (fin) y de un incremento (incremento), nos da la herramienta perfecta para muchos problemas de repeticin. Por ejemplo: si quiero hacer el clculo del promedio de 20 alumnos, el valor de inicio sera 1, pues es el primer alumno, el valor de fin sera 20, pues es el ltimo alumno y el incremento es de 1 en 1. Su representacin es con un hexgono alargado como Desde inicio Hasta fin De se muestra en la figura de la izquierda, en donde se incremento reemplazan inicio, fin e incremento por valores y la Accin S es lo que se repetir las veces que indique el Accin S fin, en este caso el clculo del promedio de los 20 alumnos.

En C ++ existe un cambio, utilizamos la palabra for para indicar el comando de repeticin y dentro de parntesis, van los valores separados por punto y coma ( ;). Ejemplo. Se desea los 10 primeros nmeros. Primeramente marcaremos el inicio, que en este caso ser desde 1 y utilizamos una variable (i), que ser la que se incremente automticamente. Tambin indicamos el final, que ser 10. Ntese que el incremento no se encuentra, en el Pseudocdigo y el diagrama, esto es debido a que cu ando el incremento es de 1, no es necesario colocar el incremento. En programacin se mantiene el valor inicial con su variable, pero se le agrega una condicin de termino (I<=10) y necesariamente se coloca el incremento (i=i+1).

Estructura de Datos I - 2013-II

Ing. Carlos A. Silva Delgado.

Carrera Profesional Ingeniera de Sistemas e Informtica

Enunciado 01: Disear un algoritmo que permita determinar la suma de la serie:

S=1! / 2 + 2! / 4 + 3! / 6 +. + N! / 2N
#include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { int N, i, fact = 1; float S = 0; cout <<"Ingresa la cantidad de trminos a procesar:"; cin>>N; for( i=1; i<=N ;i= i + 1 ) { // algoritmo para el factorial de un numero fact = fact * i ; S = S + fact /(2 * i); } cout<<"La sumatoria es: "<<S<<endl; cout<<" el factorial es: "<< fact<<endl; system("PAUSE"); return EXIT_SUCCESS; }

Verificar los resultados y de ser el caso detectar algn error. Adems Implementar el Diagrama de Flujo de Datos

Complemento 01: Deber crear un nuevo programa que resuelva el ejercicio anterior, utilizando el ciclo de repeticin while. Enunciado 02: Ingresar las notas de N alumnos y determinar la nota mxima y la nota mnima. #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { int n,i; int nota, mayor=0, menor=20; cout<<"Ingresa la cantidad de alumnos:"; cin>>n; for( i=1 ; i<=n; i++ ) { //ingreso de las notas de los alumnos cout<<"Ingresa la nota:";cin>>nota; if(nota>mayor) mayor=nota; if(nota< menor) menor=nota; } cout<<"La nota mayor es"<<mayor<<endl; cout<<"La nota menor es "<<menor<<endl; system("PAUSE"); return EXIT_SUCCESS; } Implementar el Diagrama de Flujo de Datos

Estructura de Datos I - 2013-II

Ing. Carlos A. Silva Delgado.

Carrera Profesional Ingeniera de Sistemas e Informtica

Ejercicios Propuestos.
1. Disear el programa que permita calcular el factorial de una nmero entero positivo ingresado. 2. Disear el programa que permita determinar todos los divisores de un nmero entero. Si el nmero solo tiene por divisores al 1 y al propio numero mostrar el mensaje de "nmero primo". 3. Disear el programa que permita contabilizar los nmeros de 5 cifras que sean mltiplos de 3 y 4 a la vez. 4. Disear el programa que permita determinar cuntos nmeros mltiplos de M hay en los N primeros nmeros naturales, tal que M<=N. 5. Disear el programa que permita ingresar 15 notas y determinar el promedio, la mxima y mnima 6. Disear el programa que permita mostrar los 20 primeros trminos de la siguiente serie, determinando adems la suma de ellos: 7, 10, 13, 16, 19, . . . 7. Disear el programa que imprima una cantidad de * (asteriscos) en funcin a la variable contador por ejemplo: la primea lnea imprimir un * la segunda lnea dos* etc. El nmero de lneas a imprimir se ingresa por teclado:

* ** *** **** ***** ****** DESARROLLO

Estructura de Datos I - 2013-II

Ing. Carlos A. Silva Delgado.

Vous aimerez peut-être aussi