Skip to content

Instantly share code, notes, and snippets.

@IoTeacher
Last active November 27, 2024 15:31
Show Gist options
  • Save IoTeacher/363a941cb6809dc2fcdfdd41b7711839 to your computer and use it in GitHub Desktop.
Save IoTeacher/363a941cb6809dc2fcdfdd41b7711839 to your computer and use it in GitHub Desktop.
Cálculo del Área de un Triángulo con Micro:bit

Programa interactivo para calcular el área de un triángulo en Micro:bit utilizando MicroPython. El programa permitirá al usuario ingresar la base y la altura del triángulo mediante los botones A y B del Micro:bit y calculará el área.

http://python.microbit.org

El código completo es el siguiente:

Código en MicroPython:

from microbit import *

# Instrucciones iniciales
display.scroll("Base:")
base = 0
while True:
    if button_a.is_pressed():
        base += 1
        display.show(str(base))
        sleep(500)
    elif button_b.is_pressed():
        break

# Mostrar mensaje para la altura
display.scroll("Altura:")
altura = 0
while True:
    if button_a.is_pressed():
        altura += 1
        display.show(str(altura))
        sleep(500)
    elif button_b.is_pressed():
        break

# Calcular el área
area = (base * altura) / 2

# Mostrar el resultado
display.scroll("Area: " + str(area) + " cm²")

Explicación del código:

  1. Ingreso de la base:

    • Primero, el Micro:bit muestra "Base:" en la pantalla LED.
    • El usuario incrementa el valor de la base presionando el botón A. Cada vez que se presiona A, el valor de la base aumenta en 1.
    • Cuando el usuario presiona el botón B, el Micro:bit termina el ingreso de la base.
  2. Ingreso de la altura:

    • Después de obtener la base, el Micro:bit muestra "Altura:".
    • El usuario puede incrementar la altura presionando el botón A, de manera similar a la base.
    • Cuando el usuario presiona el botón B, el Micro:bit termina el ingreso de la altura.
  3. Cálculo y visualización del área:

    • Una vez que se han ingresado la base y la altura, se calcula el área del triángulo utilizando la fórmula:

    $$ \text{Área} = \frac{\text{base} \times \text{altura}}{2} $$

    • El resultado del cálculo se muestra en la pantalla LED.

Instrucciones para interactuar:

  1. El Micro:bit comenzará mostrando "Base:" en la pantalla.
  2. Presiona el botón A para aumentar el valor de la base (en unidades arbitrarias, puedes asumir centímetros si lo deseas).
  3. Cuando tengas la base correcta, presiona el botón B para pasar al ingreso de la altura.
  4. Repita el proceso para la altura.
  5. Finalmente, el Micro:bit calculará el área y lo mostrará en la pantalla.

Mejoras posibles:

  • Puedes agregar la posibilidad de resetear el cálculo si el usuario desea hacerlo.
  • Modificar el código para permitir que el usuario ingrese valores más grandes o con decimales, pero esto requeriría una implementación adicional, como la introducción de un sistema para ingresar valores más grandes (por ejemplo, por cada pulsación de botón A o B para cambiar decenas o unidades).
@IoTeacher
Copy link
Author

IoTeacher commented Nov 27, 2024

Código para micro:bit con tonos y melodía

Este código permite calcular el área de un triángulo con base y altura, y emite diferentes tonos al presionar los botones A y B. Al final, reproduce una melodía corta.

from microbit import *
import music

# Instrucciones iniciales
display.scroll("Base:")
base = 0
while True:
    if button_a.is_pressed():
        base += 1
        display.show(str(base))
        music.pitch(440, 200)  # Tono de 440 Hz (La) por 200 ms al presionar A
        sleep(500)
    elif button_b.is_pressed():
        music.pitch(880, 200)  # Tono de 880 Hz (La más alta) por 200 ms al presionar B
        break

# Mostrar mensaje para la altura
display.scroll("Altura:")
altura = 0
while True:
    if button_a.is_pressed():
        altura += 1
        display.show(str(altura))
        music.pitch(440, 200)  # Tono de 440 Hz (La) por 200 ms al presionar A
        sleep(500)
    elif button_b.is_pressed():
        music.pitch(880, 200)  # Tono de 880 Hz (La más alta) por 200 ms al presionar B
        break

# Calcular el área
area = (base * altura) / 2

# Mostrar el resultado
display.scroll("Area: " + str(area) + " cm²")

# Reproducir melodía corta cuando se da el resultado
music.play(music.PYTHON)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment