inicio
evento_aberto: Sim, Não
codigoevento = obterCodigoEvento()
tempoevento = 90 //em minutos
UsuarioLogado = ObterUsuarioLogado()
se evento_aberto = sim e UsuarioLogado então
//grava no banco de dados
RegistraUsuarioLogado(datahorainicial, UsuarioLogado.codigousuario, codigoevento)
fim se
se evento_terminou = sim e UsuarioLogado então
//atualiza banco de dados
AtualizaUsuarioLogado(UsuarioLogado.codigousuario, datahorafinal, codigoevento)
fim se
Fim
Inicio
tempoevento = 90 //em minutos
//Obter lista de presentes no evento do banco de dados
ListaUsuariosPresentes = ObterListaPresenca(codigoevento)
//condicoes
i=0
se ListaUsuariosPresentes <> vazio então
para (usuario = ListaUsuariosPresentes[i] ) faça
//acao final
tempototal = usuario.datahorafinal - usuario.datahorainicial
se tempototal = tempoevento então
enviarEmailAgradecimento(usuario.codigousuario, usuario.codigoevento)
fim se
i = i +1
fim para
fim se
//Tudo pode ir se Desenvolvendo encapsulando em funções, cada ação ocorre em um determinada parte do sistema. no login, no final do evento etc...