You are on page 1of 16

PROGRAMACIN DE INGENIERA (Fundamentos de Programacin)

S-07: Estructura repetitivas : FOR

Ing. Jorge A. Martel Torres


Ingenieras

DIAGRAMA DE FLUJO

INICIO

SI SIMPLE
PROCESO

SALIDA
POR
PANTALLA

MIENTRAS

SI DOBLE

V
F

PROCESOV

PROCESOF

PROCESOV

PROCESOV
HACER MIENTRAS

FIN

SELECTOR DE CASOS
V

PROCESOV

INICIO

INGRESO POR
EL TECLADO

F
1

OTRO

DESDE PARA

PROCESO
ACCIONES
S1

ACCIONES
S2

ACCIONES
S3

SALIDA
POR
PANTALLA

FIN

ACCIONES
OTROS

VI, VF, INCR

Jorge Martel-UNTELS

PROCESOV

DIAGRAMA NASSI-SCHNEIDERMAN (D-NS)


( ExpreLogi )

Nombre del Algoritmo;


Inicio
Accin 1;
Accin 2;
Accin 1;
...
Accin n;
Fin.

MIENTRAS ( ExpreLogi )

SI
Acciones que se
ejecutaran si la
CONDICION es
VERDAD

Acciones
por SI o
Verdad

( ExpreLogi )
SI

NO

Acciones
por SI o
Verdad

Acciones que se
ejecutaran mientras
QUE LACONDICION
es VERDAD

Acciones
por No o
Falsedad

MIENTRAS ( ExpreLogi ) ;
( ExpreLogi )

ACCIONES
S1

ACCIONES
S2

ACCIONES
S3

OTRO
ACCIONES
OTROS

PARA ( VI; ( ExpreLogi ); INCREMENTO )


ACCIONES si VF es verdadero

FIN_PARA

Jorge Martel-UNTELS

PSEUDOCODIGO
SELECCION DOBLE
SECUENCIAL
Nombre del Algoritmo;
Inicio
Accin 1;
Accin 2;
Accin 1;
...
Accin n;
Fin.

Si ( ExpreLogic )
Acciones Si
la condicin
es verdad
Si_No
Acciones Si
la condicin
es Falso
Fin_Si

MIENTRAS
V

Mientras ( ExpreLogic )
Acciones Solo Si
la condicin es Verdad
Fin_Mientras

HACER
Hacer
Acciones Solo Si
la condicin es Verdad

SELECCION SIMPLE

SELECTOR DE MULTIPLE

Si ( Condicin )

Seleccionar ( ExpreLogic )
CASO n1:
Acciones
CASO n2:
Acciones
CASO n3:
Acciones
Fin_Seleccionar

Acciones Solo Si

la condicin
es Verdad
Fin_Si

Jorge Martel-UNTELS

Mientras ( ExpreLogic )

PARA /DESDE/ HASTA


V

Para ( Vari; VIni; ExpLog; Incre )


Acciones Que Solo Si
la Vari >= Vfin

Fin
4

( Inicio ; ExpLogica ; Incremento )

( ExpLogica )

( ExpLogica )

Estructuras Repetitivas
Bla,
Bla,
Bla,
...
!!!

Puedes
callarte ???

romper

Variables especiales
CONTADORES Y ACUMULADORES

Jorge Martel-UNTELS

Jorge Martel-UNTELS

Tipos de Variables

UNTELS

Jorge Augusto Martel Torres

CONTADORES
Es una variable cuyo valor se
incrementa o decremento en una
cantidad constante en cada iteracin.
Puede ser positivo o negativo

Ejemplo:

UNTELS

a = a + 1;
B ++ ;
c += 1;
d += 2;
e = e - 1;
f -= 2;

Jorge Augusto Martel Torres

Regresar

10

ACUMULADORES

Un acumulador o totalizador es una


variable cuya misin es almacenar
cantidades variables resultantes de
sumas sucesivas.
Realiza la misma funcin que un
contador, con la diferencia de que el
incremento o decremento de cada
suma es variable en lugar de contante,
como en el caso del contador.

Ejemplo:
a = 5;

UNTELS

x = 3;
x=x+a;
y += x ;
z -= a;

Jorge Augusto Martel Torres

11

Contadores
OP

++
-OP

+=
-=
=
*=
/=
%=
+=
-=

Si

a ++;
++ b;
c --;
-- d;

Operacin
Utiliza el valor actual, despus suma 1
suma 1, despus utiliza el valor actual
Utiliza el valor actual, despus quita 1
quita 1, despus utiliza el valor actual

Operacin
suma ms asignacion
resta ms asignacion
Asignacion simple
multiplicacion ms asignacion
division ms asignacion
modulo ms asignacion
suma ms asignacion
resta ms asignacion
Jorge Martel-UNTELS

Ejem plo Equivalente

c += 7; c = c + 7;
d -= 4; d = d - 4;
a = b;
e *= 5; e = e * 5
f /= 3; f = f / 3
g %= 9; g = g % 3
i += 2; i = i + 2;
z -=3; z = z - 3;
12

PARA / DESDE (for)


Inicio
DESDE PARA

Saltos

(R = 1; R <= 5; R++)

(R = 1; R <= 5; R++)

( inicio; ExLogic; Saltos)


F

V
V

ExpLogica

Para (inicio; ExpreLogica; saltos)


Acciones Que Solo Si

La ExpLogica es verdadero
Fin_Para

C++

PARA (R = 1; R <= 5; R++)

ACCIONESV

PARA /DESDE/ HASTA

PROCESO

FIN_PARA
Jorge Martel-UNTELS

for ( inicio; ExpreLogica; saltos ) {


Acciones Que Solo Si

La ExpLogica es verdadero

13

Ejemplo

Mostrar 5 veces:
untels y al costado la
vez que se imprime

Inicio
DESDE PARA

ExpLogica

Saltos

(R = 1; R <= 5; R++)

(R = 1; R <= 5; R++)

(R = 1; R <= 5; R++)
F

PARA /DESDE/ HASTA

untels, R
V

Para (R = 1; R <= 5; R++)


Salida (untels, R )
Fin_Para

C++
PARA (R = 1; R <= 5; R++)

Salida (untels, R )

for ( R = 1 ; R <= 5 ; R++ ) {


cout << untels << R << endl;

FIN_PARA

}
Jorge Martel-UNTELS

14

Ejemplo

Pedir 7 nombres con


su respectiva edad:
costado la vez que se
pide
DESDE PARA

Inicio

ExpLogica

Saltos

(R = 1; R <= 7; R++)

(R = 1; R <= 7; R++)

(R = 1; R <= 7; R++)

F
V

PARA /DESDE/ HASTA

Nombre, edad
V

Para (R = 1; R <= 7; R++)


Entrada ( nombre, edad )
Fin_Para

C++
PARA (R = 1; R <= 5; R++)

Entrada ( nombre, edad )

for ( R = 1 ; R <= 7 ; R++ ) {


cin >> Nombre;;
cin >> edad

FIN_PARA

}
Jorge Martel-UNTELS

15

Ejemplo

Genere la serie de los


10 primeros numeros
pares, imprima su
sumatoria.
DESDE PARA

Inicio

ExpLogica

Saltos

(R = 1; R <= 10; R++)

(R = 1; R <= 10; R++)

(R = 1; R <= 10; R++)

Sr += R

PARA /DESDE/ HASTA


V

Para (R = 1; R <= 10; R++)


Salida ( R )

Sr += R

Fin_Para

C++
PARA (R = 1; R <= 10; R++)

Salida ( R )

Sr += R

for ( R = 1 ; R <= 10 ; R++ ) {


cout << R ;
Sr += R

FIN_PARA

}
Jorge Martel-UNTELS

16

You might also like