Sei sulla pagina 1di 6

oz


M
ira
re
Facultad de Ingeniería IND 312

Pe
Universidad Mayor de San Andrés M.Sc. Ing. German Pereira M.

s

Je La Paz, Bolivia I/19
Practica Nº 3_3 – PSEINT Para
án
m
er
G
g.
In
c.

Acciones repetitivas o interactivas:


.S
M

Condiciones Repetitivas (3: Para)

La instrucción Para ejecuta una secuencia de instrucciones un número determinado de veces.

Para <variable> <- <inicial> Hasta <final> Con Paso <paso> Hacer
<instrucciones>
FinPara
Al ingresar al bloque, la variable <variable> recibe el valor <inicial> y se ejecuta la secuencia
de instrucciones que forma el cuerpo del ciclo. Luego se incrementa la variable <variable> en
<paso> unidades y se evalúa si el valor almacenado en <variable> superó al valor <final>. Si
esto es falso se repite hasta que <variable> supere a <final>. Si se omite la cláusula Con Paso
<paso>, la variable <variable> se incrementará en 1.

Si se habilita la sintaxis flexible en la configuración del lenguaje se pueden utilizar dos


alternativas. La primera variante consiste en reemplazar el operador de asignación por la
palabra clave Desde:

Para <variable> Desde <inicial> Hasta <final> Con Paso <paso> Hacer ...

De esta forma, la lectura de la sentencia resulta más obvia. Además, con sintaxis flexible, si no
se especifica el paso pero el valor final es menor al inicial, el bucle recorrerá los valores en
orden inverso como si el paso fuera -1. La segunda variante solo sirve para recorrer arreglos
de una o más dimensiones. Se introduce con la construcción Para Cada seguida de un
identificador, la palabra clave De y otro identificador:

Para Cada <elemento> De <Arreglo> Hacer ...


oz
2


M
El segundo identificador debe corresponder a un arreglo. El primero será el que irá variando

ira
re
en cada iteración. El ciclo realizará tantas iteraciones como elementos contenga el arreglo y

Pe
s
en cada uno el primer identificador servirá para referirse al elemento del arreglo en cuestión.

Je
án

El ejemplo Promedio utiliza un bucle de este tipo para leer N valores numéricos con los cuales
m
er

calcula un promedio.
G
g.
In

El ejemplo Para utiliza las tres variantes de este tipo de bucles para recorrer un arreglo.
c.
.S
M

Su representación en un diagrama de flujo sería:

Botón Para

Dibujo:

Función del botón:

Presenta un cierto rango de valores, y para ellos realiza una determinada acción

Ejemplo de uso:
oz
3


M
ira
re
Pe
s

Je
án
m
er
G
g.
In
c.
.S
M

Y en el caso de PSeInt, ese icono generaría un esqueleto de programa como éste:

Por ejemplo, un programa que mostrara los números del 1 al 10, podría ser:

Algoritmo Para01
Para x <- 1 Hasta 10 Hacer
Escribir x
FinPara
FinAlgoritmo

Cuyo resultado sería:


oz
4


M
ira
re
Pe
s

Je
án
m
er
G
g.
In
c.
.S
M

Si no queremos avanzar de uno en uno, sino con un incremento distinto, podemos indicar otro
tamaño de "paso":

Algoritmo Para02
Para x <- 10 Hasta 20 Con Paso 2 Hacer
Escribir x
FinPara
FinAlgoritmo

Y obtendríamos:

Hemos visto casi todas las construcciones que podremos encontrar en los lenguajes de
programación convencionales (y, por tanto, al planificarlos usando pseudocódigo). En la
oz
5


M
próxima entrega veremos alguna otra posibilidad, como el manejo de matrices y las funciones

ira
re
matemáticas, para pasar después a algunos ejemplos completos.

Pe
s

Ejercicio 1: Crea un programa que escriba los números del 5 al 15, ambos incluidos.
Je
án

Ejercicio 2: Crea un programa que escriba los múltiplos del 3, desde el 3 hasta el 30, usando
m
er

un paso de tamaño 3.
G
g.
In

Ejercicio 3: Crea un programa que escriba los múltiplos del 3, desde el 3 hasta el 30, contando
c.
.S

del uno al diez pero mostrando ese contador multiplicado por tres.
M

Ejercicio 4: Crea un programa que escriba los números del 20 al 10, descendiendo.

Ejercicio 5: Crea un programa que escriba la tabla de multiplicar del 5: desde "5 x 0 = 0" hasta
"5 x 10 = 50"

Ejercicio 6: También se puede contar usando una orden "mientras" o una orden "repetir", si
usas una variable como contador e incrementas (o disminuyes) su valor en cada pasada de
forma manual. Compruébalo creando un programa que escriba los números del 1 al 15 usando
"mientras" en vez de "para".

Las estructuras repetitivas ("bucles") se pueden incluir una dentro de otra si fuera necesario.
El resultado se conoce como un "bucle anidado". Por ejemplo, si se desea dibujar un rectángulo
usando asteriscos, se puede plantear como escribir de forma repetitiva varias filas que, a su
vez están formadas cada una por varias columnas, de forma también repetitiva, como muestra
este ejemplo:

// Rectángulo formado por asteriscos

Algoritmo Rectangulo

Escribir Sin Saltar "Introduce el ancho: "


Leer ancho
Escribir Sin Saltar "Introduce el alto: "
Leer alto

Para fila<-1 Hasta alto Hacer

Para columna <- 1 Hasta ancho Hacer


Escribir Sin Saltar "*" ;
FinPara

Escribir ""; // Avance de línea tras cada fila


oz
6


M
ira
re
FinPara

Pe
s

FinAlgoritmo
Je
án
m

Ejercicio 7: A partir del ejemplo que dibuja un rectángulo de asteriscos, crea un que dibuje un
er

cuadrado (deberá pedir sólo un dato, el lado, y ambas órdenes "para" deberán tener ese valor
G
g.

como límite).
In
c.
.S

Ejercicio 8: Dibuja un triángulo creciente de asteriscos, del tamaño que indique el usuario. Por
M

ejemplo, si escoge 4, el resultado debería ser:

*
**
***
****
“El Hombre Nunca Sabe De Lo Que Es
Capaz Hasta Que Lo Intenta”

Charles Dickens

Potrebbero piacerti anche