Escrever um programa C++ que implementa alguns dos recursos para uma rede social. Nesta rede, os usuários cadastrados podem seguir outros usuários.
O programa deve implementar, no mínimo, as seguintes funcionalidades:
Apresentar ao usuário um menu com as seguintes opções:
Cadastrar novo usuário: Nesta opção, serão solicitados e inseridos os seguintes dados obrigatórios:
e-mail: esse campo é um identificador único (chave) do usuário. O programa não pode aceitar dois usuários com o mesmo e-mail
Nome
Data de nascimento
Número de telefone
Cidade
UF
Seguir: Nesta opção se informa dois e-mails de usuários (u1 e u2), ambos válidos dentro do sistema. O usuário u1 passa a ser um seguidor do usuário u2. Apenas exibir mensagem informativa caso u1 já for um seguidor de u2.
Deixar de seguir: Informa-se dois e-mails de usuários (u1 e u2), ambos válidos dentro do sistema. O usuário u1 deixa de ser um seguidor do usuário u2. Apenas exibir mensagem informativa caso u1 não for um seguidor de u2.
Listar usuários: Exibe a relação de todos usuários cadastrados: e-mail, nome, quantidade de pessoas que ele segue e de pessoas que seguem ele.
Consultar dados de usuário: Ler um e-mail válido de usuário e exibe todos os demais dados do respectivo usuário, incluindo a quantidade e nome de todos os usuários que este segue.
Verificar caminho: Nesta opção se informa dois e-mails de usuários (u1 e u2), ambos válidos dentro do sistema e exibe o menor caminho entre ambos os usuários. Se não houver nenhum caminho, exibir esta informação.
Excluir usuário: Deve-se exibir os dados completos do usuário informado e pedir uma confirmação para exclusão. Se confirmado, todos os dados deste usuário e todas as suas conexões devem ser removidas do sistema.
Exibir rede: Exibir graficamente o grafo de usuários e suas conexões
Exportar rede: Se escolhe o formato (png, jpeg, pdf, dot) e exportar a rede para um arquivo neste formato
Todos os dados do programa devem ser armazenados automaticamente em algum tipo de arquivo (texto, SQLite, …) e recuperados toda a vez que entrar no programa. Ou seja, ao sair e entrar no programa todos os dados anteriores devem persistir.
OBRIGATÓRIO:
– Entregar ************ contendo todos os arquivos necessários para compilação e execução do programa;
– Incluir um arquivo README com instruções para compilação e execução do programa.
– O programa já deve vir com arquivo de dados com, no mínimo, 10 usuários cadastrados e 20 conexões;
– Resumo explicativo sobre a execução do código;
Irei disponibilizar a biblioteca com grafos.
Você conhece alguém que se encaixa bem no projeto? Ganhe comissão indicando freelancers! Por cada inscrição você ganha 5 € diretamente na sua conta e quando o freelancer é contratado pela plataforma você ganha 2% dos ganhos deste freelancer!
Preencha os detalhes do profissional que você gostaria de recomendar:
Quando o freelancer aceitar o convite, ele será automaticamente adicionado à sua rede e você ganhará 2% a mais todos os ganhos deste freelancer através da plataforma. Para mais informações consulte nosso Termos e Condições
Nenhum freelancer interessado ainda
{{item.displayDisciplines}}
Você tem uma conta stand-by e já respondeu a 1 projeto neste período de assinatura.
Atualize sua conta agora com apenas 1 clique e responda a projetos ilimitados.