Programación de placas controladoras
Una placa controladora no interpreta tus intenciones: ejecuta exactamente lo que escribiste, aunque esté mal. Leer entradas, decidir, repetir y medir el tiempo son las cuatro piezas con las que se construye casi cualquier programa de control, desde un semáforo hasta un robot sigue-líneas.
Leer entradas: convertir el mundo en números
Explica qué es un algoritmo y qué es un programa, y qué diferencia hay entre describirlo en pseudocódigo (con palabras) y con bloques gráficos.
Explica qué es un algoritmo y qué es un programa, y qué diferencia hay entre describirlo en pseudocódigo (con palabras) y con bloques gráficos.
Las instrucciones del programa de un semáforo están desordenadas: (a) esperar 2 segundos, (b) encender la luz roja y apagar las demás, (c) encender la luz verde y apagar…
Las instrucciones del programa de un semáforo están desordenadas: (a) esperar 2 segundos, (b) encender la luz roja y apagar las demás, (c) encender la luz verde y apagar las demás, (d) volver al principio, (e) esperar 8 segundos (aparece dos veces en el ciclo), (f) encender la luz ámbar y apagar las demás. Ordénalas correctamente y describe qué hace el programa completo.
Escribe en pseudocódigo el programa completo de un semáforo sencillo: verde durante 8 segundos, ámbar durante 2, rojo durante 8, y vuelta a empezar. Indica en cada paso…
Escribe en pseudocódigo el programa completo de un semáforo sencillo: verde durante 8 segundos, ámbar durante 2, rojo durante 8, y vuelta a empezar. Indica en cada paso qué luces están encendidas y cuáles apagadas.
Decidir con condicionales
El diagrama de flujo de la figura gobierna la barrera de entrada de un aparcamiento, pero falta la pregunta del rombo. Escribe la condición que debería comprobarse ahí y…
El diagrama de flujo de la figura gobierna la barrera de entrada de un aparcamiento, pero falta la pregunta del rombo. Escribe la condición que debería comprobarse ahí y describe el comportamiento completo de la barrera.
Explica qué significa «leer una entrada» en un programa de control y qué diferencia hay entre leer un pulsador (que da 0 o 1) y leer un sensor de luz (que da un número…
Explica qué significa «leer una entrada» en un programa de control y qué diferencia hay entre leer un pulsador (que da 0 o 1) y leer un sensor de luz (que da un número dentro de un rango).
Una luz de escalera funciona así: al pulsar el botón se enciende; pasados 30 segundos se apaga sola; y el ciclo puede repetirse. Dibuja o describe su diagrama de flujo y…
Una luz de escalera funciona así: al pulsar el botón se enciende; pasados 30 segundos se apaga sola; y el ciclo puede repetirse. Dibuja o describe su diagrama de flujo y escribe después el pseudocódigo correspondiente.
Repetir en bucles: el programa que no termina
Un programa tiene solo estas líneas: «repetir siempre: leer el pulsador; si está pulsado, encender el LED; si no, apagar el LED». Describe con tus palabras qué hace el…
Un programa tiene solo estas líneas: «repetir siempre: leer el pulsador; si está pulsado, encender el LED; si no, apagar el LED». Describe con tus palabras qué hace el montaje y razona qué ocurriría si se borrara la parte «si no, apagar el LED».
El diagrama de flujo de la figura es el programa de un robot siguelíneas con un único sensor que va sobre el borde de la línea, pero falta la condición del rombo.…
El diagrama de flujo de la figura es el programa de un robot siguelíneas con un único sensor que va sobre el borde de la línea, pero falta la condición del rombo. Complétala, describe qué hace el robot en cada caso y razona qué ocurrirá cuando la línea se acabe.
La barrera de un parking solo debe subir cuando hay un coche esperando (sensor) y además el conductor ha cogido el ticket (pulsador); baja cuando el coche ha pasado (un…
La barrera de un parking solo debe subir cuando hay un coche esperando (sensor) y además el conductor ha cogido el ticket (pulsador); baja cuando el coche ha pasado (un segundo sensor). Escribe el pseudocódigo completo del ciclo, combinando las dos condiciones a la vez.
Medir el tiempo sin bloquear el programa
Una alarma de vivienda, al detectar la puerta abierta, espera 10 segundos antes de sonar para dar tiempo a desactivarla con un código. Escribe su pseudocódigo incluyendo…
Una alarma de vivienda, al detectar la puerta abierta, espera 10 segundos antes de sonar para dar tiempo a desactivarla con un código. Escribe su pseudocódigo incluyendo la comprobación del código y explica para qué sirve ese retardo.
Un programa cuenta coches: «repetir siempre: esperar a que el sensor pase de 0 a 1; sumar 1 a la variable coches». Explica qué hace, para qué puede servir y qué problema…
Un programa cuenta coches: «repetir siempre: esperar a que el sensor pase de 0 a 1; sumar 1 a la variable coches». Explica qué hace, para qué puede servir y qué problema aparece si un coche se para justo encima del sensor.
El diagrama de flujo de la figura gobierna la barrera de salida de un parking, con un sensor situado bajo la barrera, pero falta una de las condiciones. Complétala,…
El diagrama de flujo de la figura gobierna la barrera de salida de un parking, con un sensor situado bajo la barrera, pero falta una de las condiciones. Complétala, describe el comportamiento completo y explica qué accidente evita esa segunda comprobación.
Depurar un programa que no hace lo que debería
Un robot siguelíneas de dos sensores avanza recto cuando ambos ven el fondo blanco, corrige a la derecha si el sensor izquierdo pisa la línea negra y corrige a la…
Un robot siguelíneas de dos sensores avanza recto cuando ambos ven el fondo blanco, corrige a la derecha si el sensor izquierdo pisa la línea negra y corrige a la izquierda si es el derecho quien la pisa. Escribe el pseudocódigo completo con los tres casos y añade qué debe hacer el programa si ambos sensores ven negro a la vez (un cruce).
Escribe el pseudocódigo de una alarma con dos sensores (puerta y ventana) y un interruptor de armado: solo suena si está armada y alguno de los dos se abre; además, una…
Escribe el pseudocódigo de una alarma con dos sensores (puerta y ventana) y un interruptor de armado: solo suena si está armada y alguno de los dos se abre; además, una vez disparada, suena durante 60 segundos aunque la puerta se cierre. Explica cómo consigues ese último comportamiento.
Diseña el programa de una luz de escalera mejorada: si se vuelve a pulsar mientras está encendida, el tiempo de apagado vuelve a contar los 30 segundos desde cero.…
Diseña el programa de una luz de escalera mejorada: si se vuelve a pulsar mientras está encendida, el tiempo de apagado vuelve a contar los 30 segundos desde cero. Escribe el pseudocódigo usando una variable que guarde el tiempo restante y explica por qué hace falta guardar ese estado.