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++

K = 1, La variable K se inicia en 1
K < 10,Condición de finalización
Secuencia de del Ciclo
acciones
K++, Contador de 1 en 1,

Ciclo con contador descendente

K=10 ; K>0 ; K--

K = 10,La variable K se inicia en 1


K > 0, Condición de finalización
Secuencia de
acciones
del Ciclo
K--, Restador de 1 en 1,

Ciclo infinito

; ;

Secuencia de
acciones

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
}

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

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

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

También podría gustarte