1
resposta

[Sugestão] Desafio: Automatizando tarefas

  1. Entrada de Dados

Participante Acessa a Página de Inscrição:

O participante acessa a página de inscrição do evento.

Relógio de Inscrição (TEMP_INSCRICAO):

O sistema exibe um relógio regressivo (TEMP_INSCRICAO) que indica o tempo restante para o participante se inscrever.

Botões Disponíveis:

Botão "Entrar no Evento": O participante clica neste botão para se inscrever.

Botão "Enviar": Após clicar no botão de "Entrar no Evento", o participante é solicitado a fornecer um e-mail.

  1. Verificação do Prazo de Inscrição

Se o TEMP_INSCRICAO estiver zerado (prazo expirado):

A inscrição é automaticamente cancelada.

Se o TEMP_INSCRICAO não estiver zerado:

O participante vê uma mensagem de boas-vindas.

Uma ID_PARTICIPANTE é gerada para o participante.

A ID é enviada para a SALA_EVENTO após 10 segundos.

  1. Dentro da Sala do Evento (SALA_EVENTO)

O participante vê o TEMP_DURACAO, que mostra o tempo restante do evento.

O evento não começa até que o TEMP_INSCRICAO expire.

O participante também vê o botão "Sair do Evento".

A ID_PARTICIPANTE é adicionada à LISTA_PARTICIPANTES, que é uma lista contendo todos os participantes que estão na sala.

  1. Início do Evento

Quando o TEMP_INSCRICAO expira, o evento começa.

O TEMP_DURACAO começa a contar o tempo de duração do evento.

  1. Durante o Evento

Participante sai do evento (clicando no botão "Sair do Evento"):

Se o participante clicar em "Sair do Evento", sua ID_PARTICIPANTE é removida da LISTA_PARTICIPANTES.

  1. Verificação de Participação Completa

Quando o evento termina (TEMP_DURACAO chega a 0), os participantes que permaneceram na LISTA_PARTICIPANTES do início ao fim do evento são considerados como participantes completos.

Enviar agradecimento:

Para cada ID_PARTICIPANTE que permaneceu até o final, um e-mail de agradecimento é enviado (FIM_OBRIGADO).

Resumo do Algoritmo

Entrada: O participante entra no evento e se inscreve com um e-mail.

Verificação de Inscrição: Verificar se o participante ainda está dentro do prazo de inscrição (TEMP_INSCRICAO).

Acompanhamento no Evento:

Quando o evento começa (TEMP_DURACAO), o participante entra na SALA_EVENTO.

Durante o evento, o participante pode sair a qualquer momento.

Condicional de Participação Completa:

Se o participante permanecer até o final do evento (não sair antes de terminar), ele é considerado como tendo participado integralmente.

Ação Final: Enviar um e-mail de agradecimento aos participantes que permaneceram até o final.

Algoritmo Simplificado:

Início:
    Exibir TEMP_INSCRICAO e botão "Entrar no Evento"
    Se o participante clicar em "Entrar no Evento":
        Solicitar e-mail
        Se TEMP_INSCRICAO expirar:
            Cancelar inscrição
        Senão:
            Gerar ID_PARTICIPANTE e exibir mensagem de boas-vindas
            Aguardar 10 segundos e adicionar ID_PARTICIPANTE na SALA_EVENTO
            Exibir TEMP_DURACAO e botão "Sair do Evento"

Evento Inicia:
    Quando TEMP_INSCRICAO expirar, iniciar TEMP_DURACAO e o evento
    Durante o evento, se participante clicar em "Sair do Evento":
        Remover ID_PARTICIPANTE da LISTA_PARTICIPANTES

Fim do Evento:
    Se TEMP_DURACAO expirar:
        Para cada participante na LISTA_PARTICIPANTES:
            Enviar e-mail de agradecimento
Fim.
1 resposta

Olá, Marinaldo! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o uso de temporizadores para controlar inscrições e duração, utilizou muito bem condicionais para gerenciar as ações dos participantes e ainda compreendeu a importância de listas para organizar quem está presente no evento.

Uma sugestão para o futuro seria estruturar essa lógica em funções separadas, como inscrever_participante, iniciar_evento e finalizar_evento. Assim, deixando o código mais modular e fácil de manter.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!