lunes, 9 de marzo de 2009

I.E.P. CLARETIANO- TRUJILLO - 5TO. SEC. - SESIÓN 1 - 6/3/09

ESTRUCTURAS ALGORITMICAS
1. ESTRUCTURA SECUENCIAL
Es aquélla en la que una acción (instrucción) sigue a otra en secuencia. Las tareas se suceden de tal modo que la salida de una es la entrada de la siguiente y así sucesivamente hasta el fin del proceso. La estructura secuencial tiene una entrada y una salida. Su representación gráfica es la siguiente:
Estructura secuencial:
Acción 1
Acción 2
Acción 3
.......
PSEUDOCÓDIGO DE UNA ESTRUCTURA SECUENCIAL:
Inicio
:
:
acciones
:
:
fin
Ejemplo:
Calcular el salario neto de un trabajador en función del número de horas trabajadas, precio de la hora de trabajo y considerando unos descuentos fijos al sueldo bruto en concepto de impuestos (20%).
**Pseudocódigo**
· Inicio
· {cálculo salario neto}
· leer nombre, horas, precio_hora
· salario_bruto horas * precio
· impuestos 0.20 * salario_bruto
· salario_neto salario_bruto_impuestos
· escribir nombre, salario_bruto, salario_neto_bruto, salario_neto
· Fin
2. CONDICIONALES
La especificación formal de algoritmos tiene realmente utilidad cuando el algoritmo requiere una
descripción más complicada que una lista sencilla de instrucciones. Este es el caso cuando existen un número de posibles alternativas resultantes de la evaluación de una determinada condición.
Las estructuras selectivas se utilizan para tomar decisiones lógicas; de ahí que se suelan denominar también estructuras de decisión o alternativas.
En las estructuras selectivas se evalúa una condición y en función del resultado la misma se realiza una opción u otra. Las condiciones se especifican usando expresiones lógicas. La representación de una estructura selectiva se hace con palabras en pseudocódigo (if, then, else o bien en español si, entonces, sino), con una figura geométrica en forma de rombo o bien con un triángulo en el interior de una caja rectangular.
Las estructuras selectivas o alternativas pueden ser:
· Simples
· Doble
· Múltiples
2.1. ALTERNATIVA SIMPLE (SI−ENTONCES/IF−THEN).
La estructura alternativa simple si−entonces (en inglés if−then o bien IF−THEN ) ejecuta una determinada acción cuando se cumple una determinada condición. La selección si−entonces evalúa la condición y . .
Si la condición es verdadera, entonces ejecuta la acción S1 (o acciones caso de ser S1 una acción compuesta y constar de varias acciones)
Si la condición es falsa, entonces no hacer nada.
**PSEUDOCÓDIGO EN ESPAÑOL**
Si Entonces

Fin_si
PSEUDOCÓDIGO EN INGLÉS
If then

end_if
2.2. ALTERNATIVA DOBLE ( SI−ENTONCES−SI_NO / IF − THEN − ELSE ).
La estructura anterior es muy limitada y normalmente se necesitará una estructura que permita elegir entre dos opciones o alternativas posibles, en función del cumplimiento o no de una determinada condición.
Si la condición C es verdadera, se ejecuta la acción S1 y, si es falsa, se ejecuta la acción S2.
**PSEUDOCODIGO EN ESPAÑOL**
Si <> entonces
<>
si_no

fin_si
PSEUDOCODIGO EN INGLES.
If <> then
<>
else
<>
endif
2.3. ALTERNATIVAS MÚLTIPLES (SEGÚN _ SEA, CASO DE / CASE).
Cuando existen más de dos elecciones (alternativas) posibles, es cuando se presenta el caso de alternativas múltiples. Si el número de alternativas es grande puede plantear serios problemas de escritura del algoritmo y naturalmente de legibilidad.
La estructura de decisión múltiple evaluará una expresión que podrá tomar n valores distintos 1,2,3,4,..n .
Según que elija uno de estos valores en la condición, se realizará una de las n acciones, o lo que es igual, el flujo del algoritmo seguirá un determinado camino entre los n posibles.
**PSEUDOCÓDIGO**
En inglés la estructura de decisión múltiple se representa:
Case expresión of
[e1]: acción S1
[e2]: acción S2
:
[en]: acción Sn
else
acción Sx
end_case
Ejemplo:
Se desea diseñar un algoritmo que escriba los nombres de los días de la semana en función del valor de una variable DIA introducida por teclado.
Los días de la semana son 7; por consiguiente, el rango de valores de DIA será 1..7, y caso de que DIA tome un valor fuera de este rango se deberá producir un mensaje de error advirtiendo la situación anómala.
Inicio
Leer DIA
Según_sea DIA hacer
1:escribir('Lunes')
2: escribir('Martes')
3: escribir('Miércole')
4: escribir('Jueves')
5: escribir('Viernes')
6: escribir('Sabado')
7: escribir('Domingo')
else
escribir('Error')
fin_según
fin
3. ESTRUCTURAS REPETITIVAS.
Las estructuras que repiten una secuencia de instrucciones un número determinado de veces se denominan Bucles y se denomina Iteración al hecho de repetir la ejecución de una secuencia de acciones. Entre las estructuras repetitivas se encuentran:
· Mientras (while)
· Repetir (repeat)
· Desde (for)
3.1 ESTRUCTURA MIENTRAS (WHILE).
La estructura repetitiva while, es aquélla en que el cuerpo del bucle se repite mientras se cumple una determinada condición.
**Pseudocódigo en español Pseudocódigo en inglés**
Mientras condición hacer while condición do
Acción S1
Acción S2 :
: End_while
acción Sn
Fin_mientras
Ejemplo:
Contar los números enteros positivos introducidos por teclado. Se consideran dos variables enteras NUMERO y CONTADOR (contará el número de enteros positivos). Se supone que se leen números positivos y se detiene el bucle cuando se lee un número negativo o cero.
**PSEUDOCÓDIGO**
Inicio
contador 0
Leer (numero)
Mientras numero > 0 hacer
contador contador+1
Leer (numero)
Fin_Mientras
Escribir('El número de enteros positivos es : ', contador)
Fin
3.2. ESTRUCTURA HACER PARA (FOR ).
Son aquellos en que el número de iteraciones se conoce antes de ejecutarse el ciclo. La forma de esta estructura es la siguiente:
PARA PROCESOS HACER
FINPARA
Ejemplo leer 10 números y obtener su cubo y cuarta
Inicio
Hacer para n=1 a 10
Leer num
cubo= num*num*num
cuarta=cubo*num
imprimir cubo, cuarta
Fin-Para
Fin
3.3 ESTRUCTURA REPETIR HASTA (REPEAT .. UNTIL).
Esta es una estructura similar en algunas características a la estructura HACER MIENTRAS (WHILE DO). Repite un proceso una cantidad de veces, pero a diferencia de Hacer Mientras, el Repetir-Hasta lo hace hasta que la condición se cumple y no mientras. Por otra parte, esta estructura permite realizar el proceso cuando menos una vez, ya que la condición se evalúa al final del proceso, mientras que en el Hacer -Mientras puede ser que nunca llegue a entrar si la condición no se cumple desde un principio. La forma de esta estructura es la siguiente:
REPETIR
HASTA
Ejemplo:
Algoritmo que repite una secuencia de números en el rango de 0 a 40
Inicio del algoritmo
Iniciar Contador
Repetir
Mostrar el Contador
Incrementar Contador en 1
Detener ejecución
Hasta que Contador > 40
Fin del algoritmo

No hay comentarios: