wayground logo

Free Printable Worksheets

NEW

Font size

S
M
L
XL
Worksheets

Evaluación de Programación

Total questions: 10

Worksheet time: 5mins

Name
Class
Date
1.

¿Cuál es la principal ventaja de usar un lenguaje de alto nivel como Python en lugar de un lenguaje de bajo nivel como ensamblador?

a)

Permite un control más preciso del hardware.

b)

Es más eficiente en términos de uso de memoria.

c)

Facilita la programación porque es más cercano al lenguaje humano.

d)

Se ejecuta directamente en la máquina sin necesidad de un compilador.

2.

La programación por bloques es una metodología que facilita el aprendizaje de los conceptos de programación. En lugar de escribir código, los programadores ensamblan bloques gráficos que representan eventos o funciones individuales.

¿Cuál es una de las principales ventajas de la programación por bloques en comparación con la programación tradicional basada en texto?

a)

Los bloques se pueden ejecutar directamente en el hardware sin compilación.

b)

Los bloques son más eficientes en términos de tiempo de ejecución que el código basado en texto.

c)

Permite a los principiantes aprender los conceptos de programación de manera más intuitiva.

d)

Los bloques eliminan la necesidad de utilizar variables y condiciones.

3.

Un algoritmo de control de flujo es aquel que permite decidir qué acciones tomar en función de condiciones específicas. Por ejemplo, en un algoritmo para controlar un semáforo, si el tiempo transcurrido desde que la luz cambió a verde es mayor a 60 segundos, el semáforo cambia a rojo.

¿Qué estructura de control es la más adecuada para implementar un algoritmo que cambie el color del semáforo basado en el tiempo transcurrido?

a)

Un ciclo for.

b)

Una instrucción condicional if-else.

c)

Un ciclo while infinito.

d)

Una función recursiva.

4.

El cálculo del Índice de Masa Corporal (IMC) es un ejemplo típico de un algoritmo simple que se implementa en App Inventor. La fórmula es:

IMC=peso (kg)/altura^2

y se puede programar en bloques visuales para que se ejecute cuando el usuario ingrese su peso y altura.

En App Inventor, ¿Qué bloques serían adecuados para implementar el cálculo del IMC?

a)

Bloques de suma para añadir el peso y la altura.

b)

Bloques de división que calculen el IMC dividiendo el peso por la altura al cuadrado.

c)

Bloques de texto para concatenar los valores de peso y altura.

d)

Bloques condicionales que sumen el peso y lo comparen con la altura.

5.

En App Inventor, podemos usar bloques condicionales (if-then) para decidir qué acción tomar dependiendo del resultado del cálculo del IMC. Por ejemplo, si el IMC es mayor a 25, podemos mostrar un mensaje de alerta.

¿Cuál es el bloque adecuado en App Inventor para mostrar un mensaje de advertencia si el IMC es mayor de 25?

a)

if (IMC > 25) then show alert.

b)

if (IMC == 25) then show alert.

c)

if (IMC < 25) then show alert.

d)

if (IMC >= 25) then show alert.

6.

Al trabajar con condicionales complejos en una aplicación como el cálculo del IMC, se requiere una comprensión clara de las interacciones entre los bloques de control, las variables y las condiciones lógicas. Un error en estas interacciones podría producir resultados peligrosamente inexactos.

Supón que en una aplicación de IMC desarrollada en App Inventor, la lógica que determina si un valor de IMC es "normal" o "sobrepeso" está basada en un conjunto de condicionales anidados. ¿Qué problema crítico podría ocurrir si una de las condiciones está mal formulada y no cubre todos los posibles casos?

a)

Algunas categorías de IMC podrían no ser evaluadas, lo que llevaría a que ciertos usuarios reciban recomendaciones de salud incorrectas o ninguna recomendación.

b)

La aplicación podría entrar en un bucle infinito de evaluación, ralentizando la respuesta del sistema hasta que se agoten los recursos del dispositivo.

c)

El IMC se calcularía correctamente, pero las recomendaciones mostradas no reflejarían la realidad, lo que podría llevar a un mal diagnóstico de los usuarios.

d)

La condición mal formulada evitaría que la aplicación ejecute cualquier cálculo, arrojando un mensaje de error continuo hasta que se corrija.

7.

En una aplicación que utiliza múltiples pantallas y variables globales para transferir datos como el IMC entre pantallas, ¿qué problema significativo podría surgir si una variable global se actualiza incorrectamente en una de las pantallas intermedias?

a)

La variable global seguiría funcionando, pero los cálculos basados en esta variable mostrarían inconsistencias dependiendo de la pantalla en la que se encuentre el usuario.

b)

La pantalla intermedia fallaría al actualizarse, lo que llevaría a un bloqueo completo de la aplicación al intentar pasar a la siguiente pantalla.

c)

La variable global se sobrescribiría con valores predeterminados, lo que impediría que el usuario vea resultados correctos en pantallas posteriores.

d)

El valor del IMC mostrado al final podría estar basado en entradas incorrectas, lo que haría que las recomendaciones de salud sean irrelevantes o peligrosas.

8.

La validación de entradas es un proceso crucial en la programación de aplicaciones interactivas. Sin una adecuada validación, la aplicación puede generar resultados incorrectos o fallar completamente.

Imagina que un usuario ingresa datos no numéricos en los TextBoxes de peso y altura en una app de App Inventor que calcula el IMC. Si no se realiza ninguna validación previa, ¿qué tipo de error profundo podría presentarse al intentar calcular el IMC en este contexto?

a)

El cálculo se detendrá abruptamente, pero la aplicación mostrará valores predeterminados que confundirán al usuario y afectarán el uso general de la app.

b)

La aplicación mostrará un valor de IMC erróneo, pero el usuario no será consciente del error, lo que puede generar confusión y decisiones basadas en información incorrecta.

c)

La app no calculará nada, pero permitirá al usuario continuar interactuando con la interfaz, lo que provocará errores de lógica acumulativos en otras pantallas.

d)

La aplicación intentará realizar una operación matemática con datos inválidos, lo que resultará en un error de conversión que bloqueará toda la funcionalidad de la app hasta que se reinicie.

9.

Los bloques que permiten cambiar entre pantallas en App Inventor son fundamentales para la navegación en aplicaciones más complejas. Sin embargo, cuando se manejan transiciones entre pantallas con lógica involucrada, un error puede afectar todo el flujo de la aplicación.

¿Qué consecuencia crítica podría tener en una aplicación de App Inventor el hecho de que los bloques que controlan la transición de una pantalla a otra no gestionen correctamente la memoria asociada a los datos transferidos?

a)

La aplicación podría sufrir una fuga de memoria, haciendo que el dispositivo se vuelva más lento con el tiempo y, eventualmente, se bloquee.

b)

La transición entre pantallas podría ser exitosa, pero los datos no serían transferidos correctamente, lo que resultaría en un fallo total de los cálculos posteriores.

c)

La app no permitiría volver a la pantalla anterior debido a que los datos se pierden al cambiar de pantalla, obligando al usuario a reiniciar.

d)

La aplicación funcionaría pero se mostrarían valores incompletos o incorrectos en las pantallas sucesivas debido a la falta de memoria asignada.

10.

En aplicaciones móviles que manejan múltiples componentes interactivos como botones y TextBoxes, es fundamental asegurarse de que los eventos y las acciones estén correctamente vinculados. Un error en estos vínculos puede desencadenar fallos difíciles de detectar.

En una aplicación con múltiples botones que activan diferentes funciones, ¿qué efecto complejo podría producirse si el mismo evento de cálculo está vinculado a más de un botón de manera incorrecta?

a)

La app ejecutaría varias funciones simultáneamente, lo que podría provocar errores de cálculo que se acumulen y afecten otras áreas de la aplicación.

b)

La app podría realizar el mismo cálculo varias veces en paralelo, lo que consumiría recursos innecesarios y afectaría el rendimiento de la app.

c)

Al presionar uno de los botones, la aplicación cambiaría de pantalla de forma inesperada, pero sin realizar los cálculos necesarios en la pantalla actual.

d)

El cálculo fallaría y el botón no realizaría ninguna acción, lo que haría que otras funciones