espacio interactivo
|
|
Título del Test:
![]() espacio interactivo Descripción: ultima ayuda |



| Comentarios |
|---|
NO HAY REGISTROS |
|
En una pantalla principal con varios botones, el orden en que se dibuja la UI depende principalmente de: El nombre alfabético del GameObject. El orden de los archivos en el Project. La posición de los elementos en la jerarquía dentro del Canvas. La cantidad de scripts C# adjuntos. Cuando se pulsa el botón Play en Unity, el editor: Compila y genera directamente el archivo ejecutable final. Entra en modo de prueba para simular el juego dentro del editor sin generar un ejecutable. Desinstala los paquetes que no se usan. Elimina todos los cambios no guardados del proyecto. Para que un botón de la pantalla principal ejecute una acción al hacer clic, se debe configurar: El componente Collider del botón. El campo “Tag” del botón. La capa (Layer) del botón. El evento On Click() en el componente Button. En File > Build Settings, una acción esencial antes de compilar el videojuego es: Desinstalar todos los paquetes de Unity. Cambiar el idioma del editor. Borrar todas las escenas. Agregar las escenas necesarias al apartado “Scenes In Build”. Energia inicial 20. Un portal te hace perder un cuarto de tu energia actual, luego obtienes +7, y al pasar por un filtro mistico te quedas con el residuo módulo 6. Pregunta: ¿Cuál es tu energia final?. int e - 20; e-4; e+-7; e%= 6; Console.WriteLine(e);. int e=20; e-=e/4: e+=7; e%= 6; Console.WriteLine(e);. int e= 20; e=e/4; e+= 7; e%=6; Console.WriteLine(e);. int e= 20; e-=e/5; e += 7; e=6% e; Console.WriteLine(e);. Un módulo de créditos almacena el nombre del estudiante como char nombre; y solo guarda la primera letra. Al imprimir, aparece “J” en lugar de “Juvitsa”. El equipo cree que es fallo de la fuente tipográfica. ¿Qué corrección de tipo corresponde al dato que se quiere guardar?. Convertir a bool. Mantener char. Usar string para cadenas de texto. Usar decimal. Cristales 50. Entregas 12 en un trueque, triplicas el resto por un hallazgo, donas 14 y luego pierdes dos quintos de lo que te queda. Pregunta: ¿Cristales finales?. int c = 50; C-= 12; c*= 3; C-= 14; c -=c/2; // pierde la mitad Console.WriteLine(c);. int c = 50; c-= 12; c*= 3; c-= 14; c = c/5*2; Console.WriteLine(c);. int c = 50; c -= 12; c*= 3; c-=14; c -= (c/5)*2; Console.WriteLine(c);. int c = 50; c-= 12; c*= 3; c-= 14; c-=2/5; Console.WriteLine(c);. La barra de progreso muestra progreso * 100 + "%". A veces aparece “99.999999%” y los testers piden “100%” cuando corresponda visualmente. ¿Qué opción equilibra precisión de cálculo y presentación clara?. Redondear el dato interno para que todo sea exacto. Multiplicar por 1000 para “ganar precisión”. Convertir todo a string antes de operar. Mantener float/double internos y redondear/formatear solo al presentar (p. ej., Math.Round(progreso*100, 0)). Para configurar controles básicos (teclado, gamepad) en Unity, normalmente se trabaja con: Rendering Settings. Physics Settings. Build Settings. Input Manager o el nuevo Input System. Un Prefab en Unity es: Una plantilla reutilizable de un GameObject con sus componentes y configuración. Una captura de pantalla del juego. Un archivo de audio comprimido. Un tipo especial de textura animada. Estrellas iniciales 4. Resuelves 3 acertijos y en cada uno duplicas tus estrellas; recibes una penalización de -5 y luego un bonus igual al residuo de tus estrellas módulo 4. Pregunta: ¿Estrellas finales?. int e-4; e-(int)Math.pow(2,3); e--5; e+-+% 4, Console.WriteLine(e);. int e= 4; e-3 e-=5; e+=e% 4, Console.WriteLine(e);. int e= 4, for(int i=0;i<3;i++)e*= 2; e-=5 e+=e% 4, Console.WriteLine(e);. int e= 4, for(int i=0;i<3;i++)e+=2; e-5; e+0/4; Console.WriteLine(e);. Una app de puntuación muestra resultados erráticos en la primera ronda. Se declara int puntaje; y se usa inmediatamente para sumar: puntaje += 5;. Algunos dispositivos muestran valores altos desde el inicio. ¿Qué práctica evita este comportamiento?. Declarar puntaje como public. Cambiar int por bool. Declarar sin inicializar y confiar en el sistema. Inicializar explícitamente la variable antes de usarla (p. ej., int puntaje = 0;). Sin responder aún int precio = 120; if (precio > 100) { precio = precio - (precio * 10 / 100); // 10% desc. } else { // sin cambio } Console.WriteLine(precio); ¿Qué imprime?. 120. 108. 110. 100. En una pantalla principal, la navegación entre botones con teclado o mando se controla desde: El componente Navigation del botón (Automatic, Horizontal, Vertical, etc.). El componente Light. El componente Collider del botón. El componente Animator Controller. El usuario ingresa su edad en un campo de texto para configurar contenido recomendado. El equipo castea el string a int con int.Parse, y la app se cae cuando el campo viene vacío o con letras. ¿Qué enfoque reduce errores en tiempo de ejecución?. Emplear int.TryParse para validar y convertir de forma segura. Usar int.Parse siempre. Convertir a float y luego a int. Concatenar el texto sin convertir. Para que un botón use una imagen personalizada (sprite) como fondo: Se cambia el sprite desde el componente Transform. Se coloca el sprite en la carpeta Editor y Unity lo aplica solo. Se arrastra el sprite al componente Image del botón. Se arrastra el sprite al GameObject Camera. Puntos iniciales 1000. Pierdes 200, ganas 50 tres veces seguidas, divides a la mitad por un reequilibrio y luego obtienes +25. Pregunta: ¿Puntuación final?. int p = 1000; p-= 200; P+= 50; p += 50; P/-2; P+= 25; Console.WriteLine(p);. int p = 1000; P-= 200; P+=150; P/= 3; P+= 25: Console.WriteLine(p);. int p = 1000; p-= 200; p+= 50*3; P/=2; P+= 25; Console.WriteLine(p);. int p = 1000; P-= 200; P+= 150; P*=2; P+= 25; Console.WriteLine(p):. Una clase de configuración de escena expone múltiples campos public (resolución, volumen, brillo). Con el tiempo, distintos módulos alteran estos valores en cualquier orden y se vuelve difícil rastrear bugs. Se propone migrar a propiedades con validación mínima. ¿Qué opción favorece mantenibilidad sin perder lectura externa?. Campos públicos sin control. Propiedades con get/set y validación en el set. Variables globales. Todo private sin métodos. Los anchors de los elementos UI (botones) sirven para: Definir cómo se posiciona y escala el elemento respecto al tamaño de la pantalla. Cambiar el color del sprite. Ajustar la intensidad de la luz. Modificar la física 3D del objeto. Para que un botón llame a un método C#, ¿qué se debe hacer en el evento On Click()?. Arrastrar el script a la ventana de Scene. Solo crear el método, sin configurar el botón. Escribir el nombre del método en el Inspector sin más. Arrastrar el GameObject que tiene el script al campo del evento y seleccionar el método público. Una app de registro en un kiosco interactivo permite iniciar sesión, pero ocasionalmente concede acceso con contraseña vacía; el pseudocódigo actual imprime “Acceso concedido” y luego valida. El equipo sospecha que el algoritmo no es definido (misma entrada, mismo resultado) debido a la posición de la verificación en el flujo. ¿Qué corrección es más precisa para alinear lógica y salida?. Validar credenciales primero y solo si son correctas, escribir el mensaje de acceso. Reintentar tres veces sin validar. Sustituir validación por un contador de intentos. Mantener el mensaje y validar en un paso posterior. double total = 45; double envio = (total > 50) ? 0 : 5; bool premium = true; if (premium) envio = 0; Console.WriteLine(envio); ¿Qué imprime?. 0. 45. 50. 5. Si se desea compilar un juego para Android desde Unity, es necesario: Ir a Build Settings y cambiar la plataforma a Android antes de “Build”. Borrar todas las escenas en 3D. Compilar siempre primero en Windows y luego convertir el archivo. Desactivar el sistema de entrada (Input System). Un GameObject en Unity se define como: Un menú de la interfaz de Unity. Un archivo de video externo. Únicamente un personaje jugable. Un objeto básico que puede representar cualquier entidad en la escena y al que se le añaden componentes. Para que un botón cambie de imagen (sprite) al pasar el mouse por encima, se configura en: El menú Physics en Project Settings. La sección Transition del componente Button, usando “Sprite Swap”. El componente Transform. El componente Audio Source. Sin responder aún int n = 8; string cal; if (n == 10) cal = "Excelente"; else if (n == 9) cal = "Muy bueno"; else if (n == 8) cal = "Bueno"; else if (n == 7) cal = "Regular"; else cal = "Insuficiente"; Console.WriteLine(cal); ¿Qué imprime?. Excelente. Bueno. Regular. Muy bueno. En Unity, una Scene (escena) se puede entender como: Un archivo exclusivo para guardar scripts C#. Un archivo de configuración de la tarjeta gráfica. .Un contenedor donde se organiza el mundo del juego: cámaras, personajes, luces, objetos, etc. Un archivo de audio con todos los sonidos del juego. Para organizar varios botones (“Jugar”, “Opciones”, “Salir”) alineados en columna, se recomienda usar: Un Vertical Layout Group en el GameObject padre que contiene los botones. Un Character Controller. Un Box Collider en cada botón. Un Light Probe Group. Una clase Jugador expone public int vida = 100; y otros módulos la modifican libremente, generando valores negativos y comportamientos inconsistentes. La docente sugiere aplicar encapsulamiento para restringir modificaciones externas y mantener la lógica de daño dentro de la clase. ¿Qué alternativa implementa mejor encapsulamiento en C#?. public int vida = 100; en todas las clases. public int Vida; y cambiarla desde fuera. private int vida; con métodos públicos para modificarla. protected int vida; para cualquier clase. bool promo = (5 > 2 && 5 < 4) || (3 <= 3 && !(7 < 2)); Console.WriteLine(promo); ¿Qué imprime?. False. True. Depende del sistema. 1. El sistema de logros desbloquea un trofeo cuando progreso >= 100. El progreso se calcula con operaciones mixtas int/float; algunos jugadores reportan que con 99.99998 se niega el logro aunque visualmente se vea “100%”. ¿Qué solución mitiga el problema?. Redondear visualmente y mantener la lógica igual. Convertir todo a string y comparar textos. Comparar el float con igualdad exacta a 100. Normalizar el cálculo en float y aplicar umbral/tolerancia o redondeo antes de comparar. En Project Settings > Player, ¿qué se puede configurar?. Los atajos de teclado del sistema operativo. Únicamente la resolución del monitor físico. Solo el idioma de la consola de Windows. El logotipo de arranque, el nombre del juego y parámetros de compilación. Llaves 1. Encuentras +2, forjas x2, rompes 1, usas la mitad para abrir una puerta (entero) y luego encuentras +3. Pregunta: ¿Cuántas llaves tienes al final?. int k = 1; k+=2; k*=2, k-=1; k = k%2; k+= 3; Console.WriteLine(k);. int k = 1; k+= 2; k*=2; k-= 1; k = (int)Math.Ceiling(k/2.0); k+= 3; Console.WriteLine(k);. int k = 1; k+=2; k*=2; k-=1; k/=2, K+= 3; Console.WriteLine(k);. int k = 1; d. k += 2; k*= 2; k -= 1; k = 2; k += 3; Console.WriteLine(k);. Balas iniciales 30. Disparas 7, recoges +10, una avería te hace perder un tercio (entero) de lo que tengas, y luego recibes +5 de bonificación. Pregunta: ¿Cuántas balas quedan?. int b = 30; b-= 7; b+=10; b = (int)Math.Ceiling(b/3.0); b+= 5; Console.WriteLine(b);. int b = 30; b-- 7; b+= 10; b=b-3; b = 5; Console.WriteLine(b);. int b = 30; b-=7; b+= 10; b/=3; b+= 5; Console.WriteLine(b);. int b = 30; b-= 7; b+= 10, b-=b/3; b+=5; Console.WriteLine(b);. En la UI de Unity, un botón de menú principal se crea con el GameObject: GameObject > Audio > Audio Source. GameObject > UI > Button. GameObject > 3D Object > Cube. GameObject > Light > Directional Light. En una escena de menú, un estudiante usa Contador = 10; antes de declararlo; luego declara int contador; más abajo. El IDE marca errores y, tras “corregir”, el programa no actualiza el valor. El estudiante no comprende por qué “a veces” funciona y “a veces” no. ¿Qué regla básica está violando?. Debe declararse la variable antes de usarla y respetar el nombre exacto (contador ≠ Contador). Los enteros se inicializan siempre con 10. Las variables pueden usarse sin declararse si son enteras. C# no es sensible a mayúsculas y minúsculas. En Unity, el sistema de ejes por defecto en 3D es: X hacia la derecha, Y hacia arriba, Z hacia adelante o atrás. Solo eje X y Y, sin Z. Solo eje Z, sin X ni Y. X hacia arriba, Y hacia la derecha, Z hacia atrás. Una herramienta convierte segundos ↔ milímetros de cinta según FPS. A veces muestra 0 pese a que el usuario ingresó datos válidos; el pseudocódigo calcula primero y después intenta leer, alterando el flujo lógico. ¿Qué corrección de flujo resuelve el problema de resultados nulos?. Leer entradas → Calcular → Escribir salida. Calcular con variables por defecto y no leer. Iterar sin condición hasta no obtener 0. Escribir el resultado y luego leer entradas. Para cambiar el texto que se muestra en el botón (por ejemplo “Jugar”), normalmente se edita: El componente Audio Source del botón. El objeto hijo Text (o TextMeshPro) del botón. El nombre del GameObject en el Hierarchy. El componente Transform del botón. En Unity, la propiedad Time.timeScale se usa para: Cambiar la resolución de pantalla del juego. Modificar el volumen de todos los sonidos. Controlar la velocidad global del tiempo en el juego (pausa o cámara lenta). Ajustar la calidad de las sombras en tiempo real. |





