Soluciones para docentes

Aritmética y entrada

Recoge cuatro tipos de evidencia: predicción del estado relevante; comportamiento en casos variados, incluidos los límites; explicación apoyada en la traza y el estado; y corrección razonada de una discrepancia. Valora cada aspecto como inicial, con apoyo o autónomo, en papel o mediante el proceso aprobado del centro. Superar un reto demuestra un comportamiento de la máquina, no la autoría ni un dominio completo. Acepta programas correctos equivalentes; las soluciones públicas son modelos, no las únicas respuestas posibles.

Material didáctico público. Las soluciones son ejemplos; otros programas correctos equivalentes pueden superar las comprobaciones.

4. Matemáticas con emoji

Combina suma, resta y multiplicación en pasos ordenados.

Abrir esta lección →

1. Predecir y trazar

Antes de ejecutar el programa de prueba, predice su salida y traza las tres primeras instrucciones ejecutadas. Sigue los registros, indicadores o memoria relevantes. Después avanza paso a paso para comparar.

LOAD 10
ADD 5
PRINT
MUL 2
SUB 4
PRINT
HALT

Añadir entradas a la cola: Ninguno

Inicializar memoria: Todos los bytes empiezan en cero

Solución de la predicción

Salida: 15, 26

InstrucciónPC antesPC despuésR0 antesR0 despuésEstado relevanteSalida
LOAD01010{"registers":[10,0,0,0,0,0,0,0],"flags":{"zero":false,"negative":false,"overflow":false},"sp":255,"stack":[],"callStack":[],"loopStack":[],"memoryReads":[],"memoryWrites":[]}Ninguno
ADD121015{"registers":[15,0,0,0,0,0,0,0],"flags":{"zero":false,"negative":false,"overflow":false},"sp":255,"stack":[],"callStack":[],"loopStack":[],"memoryReads":[],"memoryWrites":[]}Ninguno
PRINT231515{"registers":[15,0,0,0,0,0,0,0],"flags":{"zero":false,"negative":false,"overflow":false},"sp":255,"stack":[],"callStack":[],"loopStack":[],"memoryReads":[],"memoryWrites":[]}15

2. Construir y comprobar

Lee un entero x e imprime (x + 5) × 2 − 4. Tu programa debe funcionar para todas las entradas suministradas, incluidos los números negativos.

Tipos de instrucción requeridos: INPUT, ADD, MUL, SUB

Ejemplo de solución del reto

INPUT
ADD 5
MUL 2
SUB 4
PRINT
HALT

Casos reales del comprobador

Caso 1
Entrada
0
Memoria inicial
Todos los bytes empiezan en cero
Salida esperada
6
Caso 2
Entrada
-3
Memoria inicial
Todos los bytes empiezan en cero
Salida esperada
0
Caso 3
Entrada
12
Memoria inicial
Todos los bytes empiezan en cero
Salida esperada
30

3. Explicar la máquina

¿Por qué debe ir MUL después de ADD para calcular (x + 5) × 2 − 4?

Razonamiento y nota docente

Cada operación cambia el acumulador. Invertir ADD y MUL cambia la expresión para la mayoría de x.