SENTENCIA IF
Nos permite realizar una
serie de acciones cuando se cumple una condición, el editor de Python para
Microbit nos ayuda a recordar sus sintaxis con la herramienta Code Snippets en
la parte superior de la pantalla
Si seleccionamos if
En
pantalla aparecerá :
Donde condition es
la condición que debe cumplirse para realizar las instrucciones que escribiremos
a continuación.
Estas condiciones pueden
ser eventos de la propia tarjeta o operaciones lógicas que nosotros diseñaremos.
Por ejemplo podemos tener
como condición si se ha pulsado un botón
button_a.is_pressed()
button_b.is_pressed()
nos indica si a o b están
pulsados en ese momento, si queremos saber si ha sido pulsado utilizaremos
button_a.was_pressed()
button_b.was_pressed()
ambos pueden combinarse
mediante funciones lógicas como and
if button_a.is_pressed() and button_b.is_pressed():
display.scroll("AB")
También podemos utilizar
operaciones lógicas con variables que estemos utilizando. En la práctica con
Makecode hemos definido la luminosidad y la temperatura, ¿cómo podemos leer
estos valores con la tarjeta real?
El nivel de luz se mide
desde el display que se utiliza en modo inverso y la función que utilizaremos
es:
display.read_light_level
()
en el caso de la
temperatura es uno de los sensores asociados a la placa microbit y se obtiene con:
temperature
()
nos
devuelve la temperatura en grados celsius.
Para
asociar el valor del nivel de luz asignaremos a
luminosidad=
display.read_light_level
()
De igual
forma podemos asociar el valor de la temperatura
Temperatura=
temperature
()
En este
caso debemos tener en cuenta que la placa real nos devuelve un valor superior a
la tª ambiente debido al calor disipado por la placa, aprox. 3 grados más y que
deberemos corregir así tendremos
Temperatura=
temperature
()-3- La sentencia if puede anidarse con diferentes condiciones
Si se
cumple.....
Sino si se cumple ......
Esto se lleva
a cabo con la sentencia else -if -à elif
if condition:
# TODO:
write code...
elif condition:
#
TODO: write code...
- La sentencia else puede no necesitar de una condición adicional
Si color
es blanco.....
Sino .......
En este
caso utilizamos
if condition:
# TODO:
write code...
else:
#
TODO: write code...
Ejercicios
1. Realizar un programa que defina una
variable llamada luminosidad al pulsar el botón A lea el dato del “nivel
de luz” y lo asocie a la variable y al
pulsar el botón B muestre el valor de la luminosidad que se había cargado al pulsar A.
Para comprobar el programa variaremos el
nivel de luz que llega a la pantalla de display de microbit
2. Realiza un programa de forma que obtenga
la tª
- si la tª es menor que 16º aparece en pantalla frio
- si la tª está entre 16 y 30 aparece en pantalla cara sonriente
- si la tª es mayor que 30 aparece en pantalla calor
No podremos comprobar todas las temperaturas, podemos variar ligeramente el valor medido tomando la microbit en nuestras manos