Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Semana03 20122
Semana03 20122
ESTRUCTURA ITERATIVA: while Repite la ejecucin de la accin mientras la expresin lgica siga siendo verdad. Cuando sea falsa, el proceso termina. Similar a la estructura do-while slo que en sta estructura es posible que la accin y la variacin no se realicen ninguna vez y esto puede ocurrir cuando el resultado de la condicin es falsa desde un comienzo. inicializacin while (condicin) { accin variacin } Por ejemplo, imprimir los 100 primeros nmeros naturales: int n=1; // inicializacin while (n <=100) { Imprimir n n++ // aumenta en 1 } Note que mientras que la condicin sea verdad, se seguir ejecutando la accin
ESTRUCTURA ITERATIVA: for Es un while simplificado, mucho ms rpido y eficaz. Muy preferido por los programadores. Veamos su forma general:
for (inicializacin; condicin; variacin) { accin; } Por ejemplo, imprimir los 100 primeros nmeros naturales: for (int n=1; n <=100; n++) { Imprimir n; }; Note que la inicializacin y la variacin se relacionan con la variable de control utilizada en la condicin.
La inicializacin puede contener varias ordenes de asignacin separadas por comas y terminando con punto y coma. Igualmente, la variacin puede contener varias ordenes de variacin y/o acumulacin separadas por comas y terminando con el parntesis del for, Por ejemplo, vea el siguiente for hipottico: for (int a=1, b=0, c=2; a<= n; a++, b+=3, c+= x) { Mas ordenes } La inicializacin puede incluir la declaracin de la variable pero no necesariamente debe ser as, por ejemplo: int x; for (x=1; x<=100; x++){ ms ordenes } Cul es la diferencia entre declararlo antes del for con hacer la declaracin dentro de la inicializacin?. Simplemente el alcance para la utilizacin de la variable. Cuando se declara antes del for, el alcance de la variable se extiende dentro y fuera de las llaves del for; es decir que podemos utilizar la variable dentro y tambin fuera de las llaves; en cambio, cuando se declara dentro de la inicializacin, el alcance se limita solamente dentro de las llaves del for; es decir que slo se puede utilizar la variable dentro de las llaves del for y n fuera de ellas. Una pregunta frecuente es: cual estructura de repeticin debo utilizar?. En realidad, la respuesta de un programador experimentado seria: cualquiera. Sin embargo, para efectos de un aprendizaje progresivo dar el siguiente criterio de decisin: Cuando usted tenga identificado el rango de la repeticin: desde hasta, utilice for y cuando no tenga identificado dicho rango utilice do-while o while. Cuando el proceso se realiza de todas maneras, por lo menos una vez, use do-while. Por ejemplo: muestre los nmeros capicas de 3 cifras. La estructura ms adecuada seria for porque usted va a repetir el proceso desde 100 hasta 999. Otro ejemplo: muestre la cantidad de cifras que tiene un nmero entero. La estructura ms adecuada sera do-while o while porque no se puede identificar la cantidad de veces que ocurrir la repeticin. Tiene que buscar una condicin de continuidad de la repeticin.
PROBLEMA 3: Una empresa automotriz desea registrar los reportes de la cantidad de vehculos defectuosos que se identifiquen en cada uno de los siguientes paises: Peru, Chile, Argentina. Por cada reporte registrado debe mostrar la siguiente informacin en forma de tabla: Peru 999 999 999 Chile 999 999 999 Argentina 999 999 999
ESTRUCTURAS REPETITIVAS ITERATIVAS: while, do while, for PROBLEMA 4: Muestre los N primeros nmeros pares. #include <iostream.h> #include <conio.h> void main(){ int n, par; cout<<ingrese valor entero para N: ; cin>> n; for(int i=1; i<=n; i++){ par = i * 2; cout<< i<<.-<<par<<endl; } } PROBLEMA 5: Dado un nmero entero positivo, muestre sus divisores, la cantidad y la suma de ellos. #include <iostream.h> #include <conio.h> void main(){ int num; int c=0, suma=0; cout<<ingrese un numero entero: ; cin>> num; cout<<sus divisores son: ; for(int d=1; d<=num; d++){ if(num%d == 0){ cout<< d<<, ; c++; Elaborado por Ing. Julio Vsquez Paragulla
#include <iostream.h> #include <conio.h> #include <math.h> void main(){ int n; double x, suma=0, term; cout<<ingrese valor de N: ; cin>> n; for(int i=1; i<=n; i++){ term = i * pow(x,i-1); suma += term; } cout<<la suma es: << suma<<endl; }
PROBLEMA 7: Determine el valor de PI con la suma de los N primeros trminos de la siguiente serie matemtica: 4 -4/3 +4/5 -4/7 +4/9 -
PROBLEMA 8: Dado el lado de un cuadrado, dibjelo con asteriscos considerando la posibilidad de hacerlo slo el borde o relleno completo. Ejm. Lado = 5 Slo con borde: * * * * * * * * * * * * * relleno: * * * * * * * * * * * * * * * * * * * * * * * * *
21