Está en la página 1de 20

UNIVERSIDAD NACIONAL

DE CAJAMARCA
INGENIERIA GEOLOGICA
COMPUTACION GENERAL

ALUMNO: Diaz Cruz Francisco Cristhiam.


DOCENTE: ING. Eduardo Barrantes Mejia.
CURSO:

Computacin General.

FECHA:

CAJAMARCA JULIO DEL 2014

UNIVERSIDAD NACIONAL DE CAJAMARCA


INGENIERIA GEOLOGICA

INTRODUCCIN
Las estructuras de seleccin son estructuras de control utilizadas para la toma
decisiones dentro de un programa. A estas estructuras se conocen tambin como
estructuras selectivas o estructuras de decisin y son las siguientes:

La estructura de seleccin simple (SI).

La estructura de seleccin doble (SI-SINO).

La estructura de seleccin mltiple (SEGUN)

Las estructuras de repeticin, permiten la ejecucin de una lista o secuencia de

instrucciones (<bloque de instrucciones>) en varias ocasiones. El nmero de veces que


el bloque de instrucciones se ejecutar se puede especificar de manera explcita, o a

travs de una condicin lgica que indica cundo se ejecuta de nuevo y cundo no. A
cada ejecucin del bloque de instrucciones se le conoce como una iteracin.

COMPUTACION GENERAL

UNIVERSIDAD NACIONAL DE CAJAMARCA


INGENIERIA GEOLOGICA

1.-ESTRUCTURA DE SELECCIN SIMPLE (SI).


La estructura de seleccin simple permite ejecutar una accin o un grupo de acciones
slo si se cumple una determinada condicin. As, en la figura 1, si la condicin es
verdadera se ejecuta la accin acciona; en caso contrario, no se hace nada.
Diagrama de Flujo
Pseudocdigo (accin simple)
SI(condicin)
acciona

Pseudocdigo (accin compuesta)


SI (condicin) {
acciona1
acciona2
.
.
.
accionan
}
Figura 1 Estructura de Seleccin Simple

Por ejemplo, si se desea cambiar el signo de un nmero nicamente en caso que sea
negativo, podemos escribir:

SI (numero < 0)
numero = -1 * numero

Si el nmero no es negativo, simplemente esta estructura se pasara por alto y se


continuara en la siguiente instruccin despus del SI.

2.-ESTRUCTURA DE SELECCIN DOBLE (SI SINO).


La estructura de seleccin doble permite seleccionar una ruta de dos rutas posibles en
base a la verdad o falsedad de una condicin. As, en la Figura 2, si la condicin es
verdadera, se ejecuta la accin A; en caso contrario, se ejecuta la accin B.

En la Figura2 se muestra el diagrama de flujo y el pseudocdigo de la estructura de


seleccin doble.

COMPUTACION GENERAL

UNIVERSIDAD NACIONAL DE CAJAMARCA


INGENIERIA GEOLOGICA

Diagrama de Flujo

Pseudocdigo (accin simple)


SI(condicin)
acciona
SINO
accionb

Pseudocdigo (accin compuesta)


SI (condicin) {
acciona1
acciona2
.
.
.
accionan
}
SINO{
accionb1
accionb2
.
.
.
accionbn
}
Figura 3.2 Estructura de Seleccin Doble

Por ejemplo, la siguiente estructura de seleccin doble determina si una persona es


mayor o menor de edad:
SI (edad >= 18)
estado = "Mayor de edad"
SINO
estado = "Menor de edad"

Esto imprime "Mayor de edad" si la persona tiene 18 aos ms e imprime "Menor de


edad" si la persona tiene menos de 18 aos. En cualquiera de los casos, despus de
efectuar la impresin, se ejecutar la primera instruccin que sigue a la estructura
SI...SINO.

3.-ESTRUCTURA DE SELECCIN DOBLE EN CASCADA (SISINO-SI).


La estructura de seleccin doble en cascada est formada por varias estructuras de
seleccin doble SI-SINO puestas una a continuacin de otra de forma que aun SI-SINO
le sigue otro SI-SINO.

COMPUTACION GENERAL

UNIVERSIDAD NACIONAL DE CAJAMARCA


INGENIERIA GEOLOGICA
En la estructura de seleccin doble en cascada, las condiciones se evalan en orden
descendente, pasando de una condicin a otra si la condicin anterior resulta falsa. En
el momento que se encuentra una condicin verdadera, se efecta la accin

correspondiente a dicha condicin y se corta el resto de la estructura. Si todas las


condiciones resultan falsas, se efecta la accin correspondiente al ltimo SINO, que
se considera como la accin por defecto.

En la Figura3 se muestra el diagrama de flujo y el pseudocdigo de la estructura de


seleccin doble en cascada.

Diagrama de Flujo

Pseudocdigo ( Forma 1 )
SI(condicion1)
accion1
SINO
SI(condicion2)
accion2
SINO
SI(condicion3)
accion3
.
.
.
SINO
acciondefecto
Pseudocdigo ( Forma 2 )
SI(condicion1)
accion1
SINOSI(condicion2)
accion2
SINOSI(condicion3)
accion3
.
.
.
SINO
acciondefecto

Figura 3 Estructura de Seleccin Doble en Cascada

Por ejemplo, la siguiente estructura de seleccin doble en cascada determina el signo


de un nmero entre positivo, negativo o cero:
SI(n>0)
signo="Positivo"
SINO
SI(n<0)
signo="Negativo"

COMPUTACION GENERAL

UNIVERSIDAD NACIONAL DE CAJAMARCA


INGENIERIA GEOLOGICA
SINO
signo = "Cero"

Usando el otro formato tendramos:


SI(n>0)
signo="Positivo"
SINOSI(n<0)
signo="Negativo"
SINO
signo = "Cero"

4-ESTRUCTURA DE SELECCIN MLTIPLE (SEGN).


La estructura de seleccin mltiple SEGUN permite elegir una ruta de entre varias

rutas posibles, en base al valor de una variable que acta como selector. La estructura
compara el valor del selector con las constantes c1, c2,..., cn; en orden descendente. En
el momento en que se encuentre una coincidencia, se ejecuta la accin
correspondiente a dicha constante y se abandona la estructura.

En la Figura4 se muestra el diagrama de flujo y el pseudocdigo de la estructura de


seleccin mltiple.

Diagrama de Flujo

Pseudocdigo
SEGUN (selector) {
CASOc1:accion1
CASOc2:accion2
CASOc3:accion3
.
.
.
CASO cn : accionn
DEFECTO : acciondefecto
}

Figura 4 Estructura de Seleccin Mltiple

Por ejemplo, la siguiente estructura de seleccin mltiple determina el nombre de la

estacin del ao conociendo el nmero de la estacin (1 para primavera, 2 para


verano, 3 para otoo y 4 para invierno):

COMPUTACION GENERAL

UNIVERSIDAD NACIONAL DE CAJAMARCA


INGENIERIA GEOLOGICA
SEGUN (numeroEstacion) {
CASO 1: nombreEstacion = "Primavera"
CASO 2: nombreEstacion = "Verano"
CASO 3: nombreEstacion = "Otoo"
DEFECTO: nombreEstacion = "Invierno"
}

ESTRUCTURAS DE REPETICIN.
Las estructuras de repeticin, permiten la ejecucin de una lista o secuencia de
instrucciones (<Bloque de instrucciones>) en varias ocasiones. El nmero de veces
que el bloque de instrucciones se ejecutar se puede especificar de manera explcita, o
a travs de una condicin lgica que indica cundo se ejecuta de nuevo y cundo no. A
cada ejecucin del bloque de instrucciones se le conoce como una iteracin.

1. TIPOS DE ITERACIN
Existen tres tipos principales de sentencias de repeticin:
Ciclo mientras
Ciclo haga-mientras
Ciclo para
A continuacin se describe cada una de ellas.

a) Ciclo Mientras:
El ciclo mientras permite ejecutar un bloque de instrucciones mientras que una
expresin lgica dada se cumpla, es decir, mientras su evaluacin d como resultado

verdadero. La expresin lgica se denomina condicin y siempre se evala antes de


ejecutar el bloque de instrucciones. Si la condicin no se cumple, el bloque no se

ejecuta. Si la condicin se cumple, el bloque se ejecuta, despus de lo cual la


instruccin vuelve a empezar, es decir, la condicin se vuelve a evaluar.
En el caso en que la condicin evale la primera vez como falsa, el bloque de
instrucciones no ser ejecutado, lo cual quiere decir que el nmero de repeticiones o
iteraciones de este bloque ser cero. Si la condicin siempre evala a verdadero, la
instruccin se ejecutar indefinidamente, es decir, un nmero infinito de veces.
La forma general del ciclo mientras es la siguiente:

COMPUTACION GENERAL

UNIVERSIDAD NACIONAL DE CAJAMARCA


INGENIERIA GEOLOGICA

Donde, <condicin> es la expresin lgica que se evala para determinar la ejecucin


o no del bloque de instrucciones, y <bloque instrucciones> es el conjunto de
instrucciones que se ejecuta si la condicin evala a Verdadero.

Ejemplo. Dado un nmero natural n se desea calcular la suma de los nmeros


naturales desde 1 hasta n.
ANALISIS DEL PROBLEMA:

ESPECIFICACIN:

COMPUTACION GENERAL

UNIVERSIDAD NACIONAL DE CAJAMARCA


INGENIERIA GEOLOGICA
DISEO:
Primera Divisin:

Divisin Final:

COMPUTACION GENERAL

UNIVERSIDAD NACIONAL DE CAJAMARCA


INGENIERIA GEOLOGICA
Diagrama de Flujo:

b) Ciclo Haga-Mientras:
El ciclo haga-mientras es similar al ciclo mientras, la diferencia radica en el momento
de evaluacin de la condicin.
En el ciclo haga-mientras la condicin se evala despus de ejecutar el bloque de
instrucciones, por lo tanto, el bloque se ejecuta por lo menos una vez. Este bloque se

ejecuta nuevamente si la condicin evala a verdadero, y no se ejecuta ms si se


evala como falso.

COMPUTACION GENERAL

UNIVERSIDAD NACIONAL DE CAJAMARCA


INGENIERIA GEOLOGICA
La forma general del ciclo haga-mientras es la siguiente:

Donde, <bloque instrucciones> es el conjunto de instrucciones que se ejecuta y


<condicin> es la expresin lgica que determina si el bloque se ejecuta. Si la

<condicin> se evala como verdadero el bloque es ejecutado de nuevo y si es


evaluada como falso no es ejecutado. Despus de ejecutar el bloque de acciones se
evala la <condicin>.
Ejemplo. El problema de calcular la suma de los nmeros naturales desde 1 hasta n
(enunciado anteriormente), se puede solucionar usando el ciclo haga-mientras. A
continuacin se describe el algoritmo solucin:

COMPUTACION GENERAL

UNIVERSIDAD NACIONAL DE CAJAMARCA


INGENIERIA GEOLOGICA
Diagrama de Flujo:

c)

Ciclo Para.

El ciclo para ejecuta un bloque de instrucciones un nmero determinado de veces. Este


nmero de veces est determinado por una variable contadora (de tipo entero) que
toma valores desde un lmite inferior hasta un lmite superior. En cada ciclo despus

de ejecutar el bloque de instrucciones, la variable contadora es incrementada en 1


automticamente y en el momento en que la variable sobrepasa el lmite superior el
ciclo termina.

El valor final de la variable contadora depende del lenguaje de programacin


utilizado, por lo tanto, no es recomendable disear algoritmos que utilicen el valor de

la variable contadora de un ciclo para, despus de ejecutar el mismo. De la definicin

COMPUTACION GENERAL

UNIVERSIDAD NACIONAL DE CAJAMARCA


INGENIERIA GEOLOGICA
de ciclo para se puede inferir que el bloque de instrucciones no se ejecuta si el lmite
inferior es mayor al lmite superior.
La forma general del ciclo para es la siguiente:

Donde <variable> es la variable contadora del ciclo, la cual debe ser de tipo entero.
<lim_inf> es el valor inicial que toma la variable contadora. <lim_sup> es el ltimo

valor que toma la variable contadora; cuando el valor de la variable contadora supere
este valor, el ciclo termina. <Bloque instrucciones> es el conjunto de instrucciones
que se ejecuta en cada iteracin, mientras la variable contadora no sobrepase el
<lim_sup>.
Casos:
Cuando <lim_inf> es menor que <lim_sup> ocurre lo siguiente:
1. La variable contadora se vuelve igual a <lim_inf>
2. Se ejecuta <bloque de instrucciones>
3. Se incrementa automticamente en 1 la variable contadora del ciclo.
4. Si el valor de contador del ciclo es menor o igual que <lim_sup> se vuelve de nuevo
al paso 2. De otro modo se abandona el ciclo.

COMPUTACION GENERAL

UNIVERSIDAD NACIONAL DE CAJAMARCA


INGENIERIA GEOLOGICA
Es de anotar que el valor final de la variable contadora queda incrementada
por encima del <lim_sup> para que pueda finalizar el ciclo.
Cuando <lim_inf> es mayor que <lim_sup> el ciclo termina sin ejecutarse
nunca el <bloque de instrucciones>. Tenga en cuenta que no se genera error al
correr el programa.

Ejemplo:
Esta lnea de cdigo nunca se ejecuta.
Es de anotar que los lenguajes de programacin tienen una variable a esta
instruccin para que el valor pueda ir en descenso.

Tanto <lim_inf> como <lim_sup> pueden ser expresiones como en el


siguiente ejemplo:

Para (j:=x+1 hasta 2*y) hacer.

En este caso se calculan primero los valores de las expresiones (x+1) y (2*y) empleando
para esto los valores actuales de x y y para utilizarlos como <lim_inf> y <lim_sup>
respectivamente.
Ejemplo. El problema de calcular la suma de los nmeros naturales desde 1 hasta n
(enunciado anteriormente), se puede solucionar usando el ciclo para, a continuacin
se muestra el algoritmo solucin:

COMPUTACION GENERAL

UNIVERSIDAD NACIONAL DE CAJAMARCA


INGENIERIA GEOLOGICA

Ntese que se requieren menos instrucciones que en las anteriores estructuras dado
que el incremento de i se hace automticamente en la instruccin 7 al repetir el ciclo.
Diagrama de flujo:

COMPUTACION GENERAL

UNIVERSIDAD NACIONAL DE CAJAMARCA


INGENIERIA GEOLOGICA

2.-TIPO DE VARIABLES TILES PARA LA ITERACIN.


Cuando se disean algoritmos que incluyen estructuras de control repetitivas, existen
ciertas variables que cumplen una funcin especfica en cada iteracin del ciclo, las
ms comunes son:

Las variables contadoras

Las variables acumuladoras


Las variables bandera.
a)

Variables Contadoras.

Como su nombre lo indica estas variables se usan fundamentalmente para contar, por
lo tanto deben ser de tipo entero. Un ejemplo de este tipo de variables es la variable de
control en un ciclo para.

Una variable contadora se incrementa (o decrementa) en un valor constante en cada


iteracin del ciclo. Es as como en los algoritmos presentados anteriormente para
resolver el problema de calcular la suma de los nmeros naturales desde 1 hasta n, la
variable i es una variable contadora.
Ejemplo.
Desarrollar un algoritmo que imprima los nmeros impares en orden descendente que
hay entre 1 y 100.
Algoritmo Solucin

En este caso i es una variable contadora, ya que en cada iteracin del ciclo la variable
es decrementada en una cantidad fija, 2 en este caso.

COMPUTACION GENERAL

UNIVERSIDAD NACIONAL DE CAJAMARCA


INGENIERIA GEOLOGICA
b)

Variables Acumuladoras.

La funcin de una variable acumuladora es almacenar valores numricos que


generalmente se suman (o multiplican) en cada iteracin, por lo tanto la variable debe

ser de tipo entero o real. Por ejemplo, en los diferentes algoritmos presentados para
solucionar el problema de calcular la suma de los nmeros naturales desde 1 hasta n,
la variable suma es una variable acumuladora.
Ejemplo.
Calcular las suma de los cuadrados de los nmeros entre 1 y 100.
Algoritmo Solucin:

En este caso suma es una variable acumuladora mientras que la variable i es una
variable contadora.
c)

Variables Bandera.

Una variable bandera es utilizada dentro de la condicin de un ciclo, para determinar


cundo un ciclo se sigue iterando o cuando no. De esta manera una variable bandera
debe ser de tipo booleano o entero.
Ejemplo.
Realizar un programa que lea una serie de nmeros reales y los sume. El programa
debe preguntar al usuario cuando desea ingresar un siguiente dato y si el usuario

responde que no desea ingresar ms datos el programa debe confirmar la respuesta. Si


el usuario desea continuar ingresando datos se debe seguir solicitando datos y si el

COMPUTACION GENERAL

UNIVERSIDAD NACIONAL DE CAJAMARCA


INGENIERIA GEOLOGICA
usuario confirma su deseo de salir, el programa debe mostrar la suma de los datos
ledos y terminar.
ESPECIFICACIN:

Donde, datos es la coleccin de n nmeros reales que el usuario ingresa hasta que
decide no continuar ingresando datos y suma es la sumatoria de dichos nmeros y
pertenece a los reales.
Algoritmo Solucin:

Vale la pena recordar que una variable de tipo booleano toma valores de verdadero y

falso. Note que la instruccin mientras (bandera) hacer es equivalente a mientras


(bandera = verdadero) hacer.

COMPUTACION GENERAL

UNIVERSIDAD NACIONAL DE CAJAMARCA


INGENIERIA GEOLOGICA

3.-CORRESPONDENCIA ENTRE CICLOS.


En la teora matemtica de programacin slo es necesario un tipo de ciclo, en esta
seccin se explican las correspondencias que hacen posible esta afirmacin, tomando
como ciclo referencia el ciclo mientras.
a)

Correspondencia entre el ciclo mientras y el ciclo haga-mientras.

La diferencia fundamental entre los ciclos mientras y haga-mientras, es que en el


segundo se ejecuta por lo menos una vez el <bloque de instrucciones>, mientras que
en el primero hay la posibilidad de que no se ejecute alguna vez.
El ejecutar el bloque de acciones una vez antes del ciclo mientras permite modelar un
ciclo haga-mientras, es decir:

b)

Correspondencia entre el ciclo para y el ciclo mientras.

Formalmente, un ciclo para es una forma abreviada de un ciclo mientras, precedido


por una asignacin y que en cada iteracin incrementa una variable. Por lo tanto, el
siguiente ciclo para:

COMPUTACION GENERAL

UNIVERSIDAD NACIONAL DE CAJAMARCA


INGENIERIA GEOLOGICA
Es la abreviacin del siguiente bloque de acciones:

c)

Cuando usar estructuras de control definido o indefinidos.

El ciclo para se conoce comnmente como estructura de control definida, ya que los
valores iniciales y finales especificados para la variable contadora que controla el ciclo
determina de manera exacta el nmero de veces que se ejecuta el ciclo.

Para utilizar un ciclo para al resolver un algoritmo se debe determinar el nmero


exacto de veces que se va a ejecutar el ciclo. En el ejemplo de calcular la suma de los
nmeros de 1 hasta n. Se sabe que el ciclo se repetir n veces.
En el ejemplo de calcular el mximo comn divisor de dos nmero naturales comn
divisor de dos nmeros naturales no puede resolverse con un ciclo para, porque no se
sabe de antemano cuantas veces se repetir el ciclo.

COMPUTACION GENERAL

También podría gustarte