Pág.59 - 9-nov-09 - Segunda Edición - Descargue gratuitamente esta Guía: http://www.eduteka.org/GuiaAlgoritmos.php
[
lista-de-instrucciones
]
el comando “si” ejecuta la lista-de-instrucciones
únicamente si al evaluarse la proposición, esta devuelve
cierto (verdadero).
Por su parte, la estructura condicional de selección
simple se implementa en Scratch con el bloque “si”
(condición):
EJEMPLO 3-13
TRADUCCIÓN DEL ALGORITMO EN SCRATCH
TRADUCCIÓN DEL ALGORITMO EN MICROMUNDOS
para selecciónSimple
pregunta [Ingrese el ángulo]
da "ánguloUno respuesta
si :ánguloUno = 90
[
da "reportar [ es un ángulo recto]
muestra frase :ánguloUno :reportar
]
fin
En este ejemplo, cierto-o-falso (:ánguloUno = 90) indica
la condición que se debe evaluar la cual puede devolver
únicamente uno de dos valores posibles: verdadero o
falso. En caso de ser verdadera la proposición, se
ejecuta la [lista-de-instrucciones] indicada entre
corchetes; esta puede contener una o varias
instrucciones. Cuando es falsa la proposición evaluada,
no se ejecutan instrucciones.
Además, se puede observar un recurso gráfico muy
importante para dar claridad a las líneas de código de
los procedimientos en MicroMundos: (1) dejar líneas en
blanco para dividir bloques de código; (2) utilizar
sangrías para indicar porciones de código subordinadas
a un comando; (3) abrir y cerrar los corchetes que
indican bloques de código en una línea a parte, de tal
forma que se aprecie muy claramente dónde inicia y
dónde termina una lista-de-instrucciones.
Selección doble
La estructura condicional de selección doble ejecuta un
bloque de instrucciones (A) cuando la proposición
(condición) es verdadera y un bloque diferente (B)
cuando esta es falsa.
Ilustración 3-10: Modelo de estructura condicional doble.
Para la estructura condicional de selección doble,
MicroMundos ofrece el comando “siotro”. La sintaxis es:
siotro cierto-o-falso
[
lista-de-instrucciones-A
]
[
lista-de-instrucciones-B
]
El comando “siotro” ejecuta la lista-de-instrucciones-A si
al evaluarse la proposición, esta es verdadera. Si la
proposición es falsa, se ejecuta la lista-de-instrucciones-
B. Ambas listas de instrucciones se deben indicar entre
corchetes [ ] y pueden estar compuestas por una o más
instrucciones.
En Scratch, la estructura condicional de selección doble
se implementa con el bloque “si (condición) si no”:
EJEMPLO 3-14
para selecciónDoble
pregunta [Ingrese el ángulo]
da "ánguloUno respuesta
siotro (:ánguloUno = 90)
[
da "reportar [ es un ángulo recto]
Pág.60 - 9-nov-09 - Segunda Edición - Descargue gratuitamente esta Guía: http://www.eduteka.org/GuiaAlgoritmos.php
]
[
da "reportar [ NO es un ángulo recto]
]
muestra frase :ánguloUno :reportar
fin
En este ejemplo, cierto-o-falso (:ánguloUno = 90) indica
la proposición que se debe evaluar, la cual solo puede
devolver uno de dos valores posibles: verdadero o falso.
En caso de que la proposición sea verdadera, se ejecuta
la [lista-de-instrucciones-A] indicada entre corchetes:
([da “reportar [ es un ángulo recto]]). Cuando la
proposición evaluada es falsa, se ejecuta la [lista-de-
instrucciones-B] ([da “reportar [ NO es un ángulo
recto]]).
Nótese que en MicroMundos la instrucción
muestra frase :ánguloUno :reportar
se encuentra fuera de los corchetes; por tanto, se
ejecutará sin importar si la proposición es verdadera o
falsa. Además, ejemplifica muy bien el concepto de
variable ya que el valor del ángulo se guarda en la
variable denominada ánguloUno y el aviso que se debe
mostrar acerca de si el ángulo es o no recto, también se
guarda en una variable (reportar).
Tanto en la estructura de selección simple como en la
doble se debe tener en cuenta lo siguiente:
• La proposición debe ser una frase declarativa, la cual
se pueda afirmar o negar.
• En MicroMundos, se requiere que en el encabezado
vayan las palabras reservadas si y siotro
respectivamente.
• En MicroMundos, cuando la proposición es sencilla
(sin operadores lógicos) no es necesario que vaya
entre paréntesis; si es compuesta (dos o más
proposiciones unidas con operadores lógicos como:
o, y, no) tiene que encerrarse con paréntesis. Como
en el primer caso no sobran los paréntesis (no
genera error), es recomendable utilizarlos siempre.
Por ejemplo: (ánguloUno = 90) es una proposición
sencilla equivalente a ánguloUno = 90, pero es mejor
utilizar la primera forma.
• En MicroMundos, las listas de instrucciones deben
estar agrupadas con corchetes, estos indican dónde
empieza y dónde termina la lista que conforma el
bloque que se debe ejecutar.
EJEMPLO 3-15
Un estudiante aprueba un examen cuando obtiene una calificación
mayor o igual a seis. Elaborar un procedimiento que pida al usuario
una calificación, aplique el criterio de aprobación e imprima
“Aprobado” o “Reprobado”, según sea el caso.
R/.
ANÁLISIS DEL PROBLEMA
Formular el problema: Es un problema sencillo de selección doble.
Resultados esperados: Un aviso que reporte si el estudiante
“Aprobó” o “Reprobó” el examen.
Datos disponibles: La calificación ingresada por el usuario. Para
aprobar, la nota debe ser mayor o igual a 6.0.
Restricciones: Aplicar el criterio de aprobación.
Procesos necesarios: Solicitar al usuario que ingrese la calificación.
Evaluar si la calificación es igual o superior a 6.0; en caso de ser
verdadero, reportar “Aprobado”; en caso contrario, reportar
“Reprobado”.
DISEÑO DEL ALGORITMO
TRADUCCIÓN DEL ALGORITMO EN
MICROMUNDOS
para aprueba
local "calificación
pregunta [Ingrese la Calificación]
da "calificación respuesta
siotro o :calificación > 6.0 :calificación = 6.0
[
anuncia [Aprobado]
]
[
anuncia [Reprobado]
]
fin