Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Desafío: Automatizando tareas

  1. Problema Base

Estás trabajando como desarrollador(a) junior en un equipo que está creando un sistema para ayudar en el control de asistencia en eventos en línea. El equipo necesita un algoritmo que procese la lista de participantes y envíe un correo electrónico de agradecimiento solo a quienes asistieron a toda la transmisión en vivo.

“Queremos automatizar el envío de agradecimientos. Pero solo para quienes vieron la transmisión de principio a fin. ¿Puedes organizar este proceso en un algoritmo?”

Utiliza los conocimientos sobre algoritmos para construir una solución en lenguaje natural, con etapas claras y ejecutables.

Considera:

¿Cuáles son los datos de entrada necesarios?
¿Cómo puede el algoritmo verificar la condición de asistencia completa?
¿Qué decisión necesita tomarse con base en esos datos?
¿Cuál debe ser la acción final?

  1. Resolución:

//Identificar Datos Base
Evento -> [Titulo]
Fecha Puntual -> [Año, Mes, Dia]
Hora Inicio Puntual -> [Hora, Minutos]
Hora Fin Puntual -> [Hora, Minutos]
Correo Agradecimiento -> ["Fue un Placer compartir contigo el evento, Gracias Por tu asistencia ..."]

//Identificar Datos Entrada
Usuario -> [Correo]
Evento Visto -> [Titulo]
Fecha Asistencia -> [Año, Mes, Dia]
Inicio Asistencia -> [Hora y minutos]
Fin Asistencia -> [Hora y minutos]

//Comparativa de Resultados
Asiste a Evento -> [Evento Visto = Evento]
Asiste x Fecha -> [Fecha Asistencia = Fecha Puntual]
Asiste x Hora -> [Inicio Asistencia = Hora Inicio Puntual, Fin Asistencia = Hora Fin Puntual]

//Resultados que Cumplen con las condiciones
Asistencia Completa -> [Asiste a Evento , Asiste x Fecha, Asiste x Hora]

//Toma de Decisiones, Envió de Correo por Cumplimiento
Envió Correo -> [Usuario]
Mensaje -> [Correo Agradecimiento]

1 respuesta

¡Hola! ¿Todo bien, Alex?

Identificaste correctamente los datos de entrada y las condiciones necesarias. Como sugerencia de mejora para que el proceso sea 100% ejecutable, en la parte de Asiste x Hora, es más seguro verificar que el tiempo total de asistencia del usuario sea igual o mayor a la duración del evento. A veces el alumno entra unos minutos tarde pero se queda hasta el final, o viceversa, por lo que comparar las horas exactas de inicio y fin podría excluir a alguien por un margen de segundos.

Tu estructura lógica quedó muy clara, organizada y fácil de transformar en pseudocódigo o código real más adelante.

¡Sigue con el buen trabajo con tus estudios y práctica, y no dudes en compartir cualquier pregunta que puedas tener en el foro!