Está en la página 1de 5

FACULTAD NACIONAL DE INGENIERIA

INGENIERIA DE SISTEMAS E INGENIERIA INFORMATICA


METODOLOGIA DE LA PROGRAMACION I
LABORATORIO DE PROGRAMACION – SIS 1110
LABORATORIO NRO 9.

TEMA: LA ESTRUCTURA REPETITIVA PARA

LOGROS A ALCANZAR.

.
 Comprende el concepto de contador automático
 Aplica la estructura repetitiva PARA, en ciclos anidados
 Comprende términos de ascenso, descenso, incremento, decremento

FUNDAMENTO TEORICO.

ESTRUCTURA PARA.- Este ciclo es uno de los más usados para repetir una secuencia de
instrucciones, sobre todo cuando se conoce la cantidad exacta de veces que se quiere que se
ejecute una instrucción simple o compuesta.

Su formato general es:

En diagrama de flujo o algoritmo gráfico En pseudocódigo o algoritmo escrito se


es representado por los símbolos: representa de la siguiente manera:

K<- I, F,Incr Para variable_numerica<-valor_inicial


Hasta valor_final Con Paso paso
Hacer
secuencia_de_acciones
Secuencia de
acciones Fin Para

En C++:
for( var= V.I: var <= V.F; incr)
{
Secuencia de acciones;
}

Alumno:………………………… Página 1
Ciclo con contador ascendente

K=1 ; K<10 ; K++

Secuencia de
acciones

Ciclo con contador descendente

K=10 ; K>0 ; K--

Secuencia de
acciones

Ciclo infinito

; ;

Secuencia de
acciones

K = 10,La
1, La variable K se inicia en 1
K >< 0,10,Condición
Condición dede finalización
del Ciclo
K++, Restador
K--, Contador de 1 en 1,

Alumno:………………………… Página 2
LENGUAJE C++. Ejemplo

#include <iostream>
int main()
{
int K;
for (K=1; K <= 10 ; K++)
{
cout<<K<<” , “ ;
}
return 0;
}
Si se ejecuta el programa se muestra el siguiente resultado.

1, 2, 3, 4, 5, 6, 7, 8, 9,10

En su forma simple la inicialización es una instrucción de asignación que carga la variable de


control de ciclo con un valor inicial. Se evalúa la variable de control de ciclo contra un valor
final que determina cuando debe acabar el ciclo.
El incremento o paso define la manera en que la variable de control de ciclo debe cambiar
cada vez que el computador repite un ciclo.

Casos Particulares;
1.- El ciclo comienza en uno y se incrementa de uno en uno, este es el caso más general.

2.- El valor inicial puede ser diferente de uno, ejemplo;


for( x=5; x<=15; x++) {… }

3.- Incluso el valor inicial puede ser negativo, ejemplo:


for( x= -3; x<=8; x++) {… }

4.- Los incrementos también pueden ser diferentes al de uno en uno, ej.;
for( x=1; x<=20; x=x+3) {… }

5.- Incluso pueden ser decrementos, solo que en este caso, recordar;
1.-el valor inicial de la variable debe ser mayor que el valor final.
2.-el PASO debe ser negativo. Ejemplo:
For( x=15; x>=3; x--) {… }

Practica en clase: Ejecutar en C++ los siguientes ejemplos de uso de la estructura repetitiva
“for” (En la parte izquierda se da el programa equivalente en PseInt con el cual deben
comparar)

Ejemplo 1.- Suponga que se tiene un


conjunto de calificaciones de un grupo de 20
alumnos. Realizar un algoritmo para calcular
la calificación media y la calificación más baja
de todo el grupo.
Alumno:………………………… Página 3
Inicio PROGRAMA EN C++
sum <- 0 #include <iostream.h>
baja <- 9999 using namespace std;
Para a <- 1 Hasta 20 Con Paso 1 Hacer int main()
Leer calif {
sum <- sum + calif float sum = 0;
Si (calif < baja) entonces float baja = 9999;
baja <- calif float a, calif, sum, media;
finSi for (a = 1; a <= 20 ; a ++)
Fin Para {
media <- sum / 20 cin>> calif;
Escribir media, baja sum = sum + calif;
fin if ( calif < baja )
{
baja = calif;
}
}
media = sum /20;
cout <<” Media =”<<media<<” baja
=”<<baja
}

Variante: generando las calificaciones al


azar: #include <iostream>
using namespace std;
Inicio #include<cstdlib>
sum <- 0 #include <ctime>
baja <- 9999 int main()
Leer n {
Para a <- 1 Hasta n Con Paso 1 Hacer int sum = 0, baja=9999,n,calif,media;
Calif<- azar(100) cin>> n;
Escribir calif; srand(time(NULL));
sum <- sum + calif for( int a=1; a<= n; a++)
Si (calif < baja) entonces {
baja <- calif calif= rand()%100;
finSi cout<< calif<<endl;
Fin Para sum += calif;
media <- sum / n if (calif < baja)
Escribir media, baja baja = calif;
fin }
media = sum / n;
cout<< media<<" " << baja;
}

Alumno:………………………… Página 4
PROGRAMA EN C++ Ejemplo 2
Ejemplo 2.- Hacer un algoritmo que permita #include <iostream>
invertir las cifras de un número entero using namespace std;
positivo: #include<cstdlib>
#include <ctime>
Inicio int main()
num<-0 {
escribir “numero?” int num,N,mult, n, cifras=0, nuevo=0,
leer num resto;
cifras <- 0 cout<<"Ingrese numero ";
n<-num cin>>num;
mult<-1 n=num;
mientras (n>0) Hacer mult = 1;
n<- trunc(n/10) while (n>0)
cifras <- cifras + 1 {
mult <- mult*10 n = n/10;
finMientras cifras = cifras + 1;
nuevo<-0 mult = mult *10;
para j<-1 Hasta cifras Con Paso 1 }
resto<-num - trunc(num/10)*10 for ( int j = 1 ; j<=cifras ; j++)
mult<-trunc(mult/10) {
nuevo<-nuevo+resto*mult resto = num %10;
num<- trunc(num/10) mult = mult/10;
Fin Para nuevo = nuevo + resto * mult;
escribir nuevo num = num/10;
fin }
cout<<" Nuevo = "<<nuevo;

Alumno:………………………… Página 5

También podría gustarte