Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Manizales
TECNOLOGA E INFORMTICA
ALUMNA: __________________________________________
FECHA: __________________
GRADO: MODALIDAD-10
LOGROS
1. Utiliza Estructuras de Decisin a travs del diseo de algoritmos a nivel de diagrama de flujo,
seudo lenguaje y seudo cdigo.
1. Debato con mis compaeros de curso, cul es la importancia que tienen las estructuras de
decisin en la programacin de computadores.
Cuando el programador desea especificar dos caminos alternativos en un algoritmo, se deben utilizar
estructuras de decisin. Una estructura de decisin dirige el flujo de un programa en una cierta
direccin, de entre dos posibles, en funcin de un valor booleano. En lenguajes de programacin
estructurados la estructura condicional es la IF / ELSE. La clusula ELSE en esta estructura es
optativa. La forma en que trabaja esta sentencia resulta casi evidente a partir de la lgica de la
lengua inglesa: Si (IF) la expresin booleana resulta cierta (TRUE), entonces la sentencia se ejecuta.
Si la expresin booleana resulta falsa (FALSE), el control pasa a la siguiente instruccin del programa
(en orden descendente).
Estructura Sencilla:
Forma general de uso:
Si (Condicin) entonces
Ejecuta bloque de instrucciones uno
Si_no
Ejecuta bloque de instrucciones dos
Fin si
Una estructura de decisin por sencilla o compleja que sea debe tener solo una entrada y una salida.
(Vea estructura de diagrama anterior).
Un bloque de instrucciones (Denominado tarea 1 y 2 en el diagrama anterior) puede ser un conjunto
de estructuras de cualquier clase (Asignacin, Decisin, Cclicas o de seleccin mltiple) que se
ejecutan unas tras otras.
El bloque de instrucciones tarea1 se ejecuta en caso de que la condicin que se coloque sea
verdadera, En caso de ser falsa la evaluacin de la condicin se ejecuta el bloque de instrucciones
tarea2.
Operadores de Relacin:
Una condicin tiene que ver directamente con una pregunta. La pregunta se forma mnimo con dos
operandos y un operador de relacin. Para tales efectos los operadores de relacin utilizados son:
Smbolo
>
<
>=
<=
=
<>
As, con base en los operadores de relacin descritos, algunos ejemplos de preguntas o condiciones
son:
Ejemplo
a>b
b<c
a>=4
b<=10
c=b
b<>c
A
B
A
B
C
B
es
es
es
es
es
es
Se lee
mayor que B?
menor que C?
mayor e igual que 4?
menor e igual que 10?
igual a B?
diferente de C?
Operadores Lgicos:
Los operadores lgicos utilizados en los lenguajes estructurados son:
Operador
Y
Resultado
Si(a = 7 O b > a)
No
Si(No(a = b))
Seudo cdigo
Inicio
Leer (N)
Si (N residuo 2 = 0) entonces
Escriba (N es par)
Si_no
Escriba (N es impar)
Fin si
Fin
2. Desarrolle un algoritmo que le permita leer 2 valores A y B e indicar si uno de los dos
divide al otro exactamente.
Anlisis:
Para dar solucin al anterior ejercicio, primero se deben leer los dos valores y almacenar cada uno
de ellos en una variable. Para el caso del desarrollo se almacenar un valor en la variable A y el otro
en la variable B. Para saber si uno de los dos divide exactamente al otro se examina primero el caso
en que B divida exactamente a A; se compara el residuo, si es cero se escribir que divide
exactamente a A de lo contrario se examina el caso en que A divida exactamente a B. Se compara
nuevamente el residuo, si es cero se escribir "A divide exactamente a B" sino "ninguno de los dos
divide exactamente al otro". Se supone que los dos valores ledos son diferentes.
Algoritmo
Diagrama de flujo
Seudo lenguaje
0. Inicio
1. Leer dos valores. El uno almacenarlo en la
variable A y el otro en la variable B
2. Si la divisin entre A y B es exacta Entonces
3. Escribir que B divide exactamente a A
4. Si no, Si la divisin entre B y A es exacta
5. Entonces escribir que A divide exactamente
aB
6. Si_no, escribir que no se dividen
exactamente.
7. Fin
Seudo cdigo
Inicio
Leer (A,B)
Si A residuo B = 0 entonces
Escriba (B divide exactamente a A)
Si_no
Si B residuo A = 0 entonces
Escriba (A divide exactamente a B)
Si_no
Escriba (No se dividen exactamente)
Fin si
Fin si
Fin
4
Disee los algoritmos a nivel de diagrama de flujo, Seudo lenguaje y Seudo cdigo para los ejercicios
que se plantean a continuacin:
1. Desarrolle un algoritmo que le permita leer un valor cualquiera N y escribir en la pantalla si dicho
nmero es Positivo o Negativo.
2. Desarrolle un algoritmo que le permita leer un valor cualquiera N y escribir si dicho nmero es
mltiplo de Z.
3. Desarrolle un algoritmo que le permita leer un valor cualquiera N y escribir si dicho nmero es
comn divisor de otros dos valores ledos W y Z.
4. Desarrolle un algoritmo que le permita leer un valor cualquiera N y escribir si dicho nmero es
comn mltiplo de M y P. M y P tambin se deben leer desde el teclado.
5. Desarrolle un algoritmo que le permita leer dos valores (A y B) y que escriba cul de los dos
valores ledos es el mayor.
6. Desarrolle un algoritmo que le permita leer dos valores A y B y escriba cul de los dos valores
ledos es el menor.
7. Desarrolle un algoritmo que le permita leer dos valores A y B e indicar si el resultado de dividir
la suma de los dos nmeros entre la resta del primer nmero con el segundo es exacta.
8. Desarrolle un algoritmo que le permita leer dos valores A y B e indicar si la suma de los dos
nmeros es par.
9. Desarrolle un algoritmo que le permita leer dos valores A y B e indicar cul de las dos restas (BA) o (A-B) es positiva.
10. Desarrolle un algoritmo que le permita leer tres valores y almacenarlos en las variables A, B, C
respectivamente. El algoritmo debe indicar cul es el mayor. Para este caso se asume que los
tres valores ledos por el teclado son valores distintos.
11. Desarrolle un algoritmo que le permita leer tres valores A, B y C e indique cual es valor del
centro.
12. Desarrolle un algoritmo que le permita leer tres valores A, B y C e indicar si uno de los tres
divide a los otros dos.
13. Desarrolle un algoritmo que le permita leer tres valores A, B y C e indicar si la suma de dos
nmeros cualquiera es igual al tercero.