¡Bienvenidos a este examen de práctica! A continuación encontrarás cuatro ejercicios inspirados en el examen de “Fundamentos de Programación”, pero con un grado de dificultad más suave. Después de cada pregunta, se incluye la solución en C# para que puedas comprobar tu comprensión.
1. Simulación de semáforo
Enunciado (versión simplificada):
Crea un programa en C# que muestre en consola el estado de un semáforo con tres etapas:
- VERDE
- AMARILLO
- ROJO
El programa debe:
- Empezar en el estado VERDE.
- Preguntar al usuario si quiere avanzar al siguiente estado (Y/N).
- Si responde “Y”, mostrar el siguiente estado; si responde “N”, volver a mostrar el estado actual.
- Detenerse automáticamente cuando llegue a ROJO y el usuario acepte (responda “Y”).
Solución:

2. Números posteriores saltando uno
Enunciado (versión simplificada):
Escribe un programa que pida al usuario:
- Un número de inicio (entero).
- La cantidad de valores siguientes que desea ver.
El programa mostrará esos valores, incrementando de 2 en 2 (es decir, “saltando” un número cada vez).
Solución:

3. Menú de configuración de un pedido
Enunciado (versión simplificada):
Crea un menú en consola que permita al usuario ajustar dos opciones de un pedido de comida rápida:
- Tamaño: “Pequeño” (P) o “Grande” (G)
- Añadir bebida: “Sí” (S) o “No” (N)
El menú debe mostrarse en bucle, hasta que el usuario elija salir (opción 3).
Solución:

4. Validación básica de fecha
Enunciado (versión simplificada):
Pide al usuario un día y un mes (sin año). Asume que el año no es bisiesto. El programa debe indicar si la fecha es válida (por ejemplo, 30 de febrero es inválido).
Solución:
using System;
class ValidarFecha
{
static void Main()
{
Console.WriteLine("Validación de fecha (año no bisiesto).");
int dia, mes;
// Pedir día
do
{
Console.Write("Introduce el día (1-31): ");
} while (!int.TryParse(Console.ReadLine(), out dia) || dia < 1 || dia > 31);
// Pedir mes
do
{
Console.Write("Introduce el mes (1-12): ");
} while (!int.TryParse(Console.ReadLine(), out mes) || mes < 1 || mes > 12);
bool esValida = false;
// Días máximos por mes
int[] maxDias = { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
if (dia <= maxDias[mes])
esValida = true;
Console.WriteLine(esValida ? "FECHA VÁLIDA" : "FECHA INVÁLIDA");
}
}

¿QUÉ TE HA PARECIDO EL ARTÍCULO? Danos tu opinión al final de la página.
Deja tu comentario y ayúdanos a crecer.
¡SÍGUENOS EN TUS REDES FAVORITAS!
AYUDANOS A CRECER Y QUE LLEGUEMOS A TODAS LAS PERSONAS QUE NOS NECESITANA. SÍGUENOS EN TUS REDES.
Entra AQUÍ y elíge donde seguirnos.

NUESTRAS ÚLTIMAS PUBLICACIONES
- Arrays y colecciones en Java (Jugador / Equipo)

- Test de Orientación Vocacional: una herramienta práctica para ayudar al alumnado a decidir su camino formativo

- El Impacto de las Pantallas en la Cognición Académica

- El Declive del Rendimiento Académico: El Impacto de la Fragilidad Cognitiva en las Aulas

- El Naufragio de la Atención: La Erosión del Conocimiento en la Era de la Hiperconectividad

- Listas enlazadas en C: teoría, implementación y buenas prácticas (nivel Ingeniería)

- ¡VOLVEMOS A NUESTROS HORARIOS HABITUALES!

- Especificadores de formato en C (printf/sprintf y scanf)

- Propuestas de actividades avanzadas con XML, DTD, XPath y XSLT

ELIGE TU RED FAVORITA Y SÍGUENOS.
AYUDANOS A CRECER Y A LLEGAR A TODAS LAS PERSONAS QUE NOS NECESITAN.
Contenido restringido





































































































































































































































































INFORMACIÓN SOBRE 







Comments are closed