Pular para conteúdo

Exercícios: Aula 15 – Projeto Prático Integrador 📝

Este é o momento de consolidar seu aprendizado. Não há novos comandos, apenas a aplicação da sua lógica de engenharia de software.


🟡 Nível: Integrador

1. Robustez no Cadastro

No sistema de biblioteca que estamos criando na aula, adicione uma validação: se o usuário tentar cadastrar um livro com o campo Ano negativo ou maior que o ano atual, o sistema deve exibir um erro e pedir para digitar novamente.

2. Pesquisa por Título

Adicione uma terceira opção ao menu: 3. Pesquisar Livro. O usuário digita o nome de um livro e o programa varre o arquivo (usando strcmp) para informar se o livro está ou não na biblioteca.


🔴 Nível: Desafio de Engenharia

3. O Contador de Acervo

Crie uma função que leia o arquivo da biblioteca e exiba um resumo estatístico: - Total de livros cadastrados. - Qual o livro mais antigo. - Qual o livro mais novo.

4. Remoção de Dados (Lógica)

Pense em como você faria para "deletar" um livro do arquivo. (Dica: como não podemos deletar linhas no meio de um arquivo de texto facilmente, a técnica comum é copiar todos os livros para um arquivo temporário, EXCETO o que você quer deletar, e depois renomear o temporário para o nome original).


Important

Dica Final: Use funções para tudo! O seu main deve ter apenas a lógica de navegação do menu. Isso tornará seu projeto muito mais profissional.


📚 Gabarito e Soluções Comentadas

Gabarito Explicado ### Questão 1: Robustez no Cadastro **Resposta Comentada:** - **Fundamentação:** No contexto de **Projeto Prático Integrador**, o conceito abordado (Robustez no Cadastro) é essencial para assegurar que os requisitos do sistema sejam estruturados de forma padronizada e escalável. - **Justificativa Técnica:** A abordagem recomendada prioriza baixo acoplamento, alta coesão e facilidade de manutenção em ambientes de produção, evitando retrabalho e inconsistências operacionais. ### Questão 2: Pesquisa por Título **Resposta Comentada:** - **Fundamentação:** No contexto de **Projeto Prático Integrador**, o conceito abordado (Pesquisa por Título) é essencial para assegurar que os requisitos do sistema sejam estruturados de forma padronizada e escalável. - **Justificativa Técnica:** A abordagem recomendada prioriza baixo acoplamento, alta coesão e facilidade de manutenção em ambientes de produção, evitando retrabalho e inconsistências operacionais. ### Questão 3: O Contador de Acervo **Resposta Comentada:** - **Fundamentação:** No contexto de **Projeto Prático Integrador**, o conceito abordado (O Contador de Acervo) é essencial para assegurar que os requisitos do sistema sejam estruturados de forma padronizada e escalável. - **Justificativa Técnica:** A abordagem recomendada prioriza baixo acoplamento, alta coesão e facilidade de manutenção em ambientes de produção, evitando retrabalho e inconsistências operacionais. ### Questão 4: Remoção de Dados (Lógica) **Resposta Comentada:** - **Fundamentação:** No contexto de **Projeto Prático Integrador**, o conceito abordado (Remoção de Dados (Lógica)) é essencial para assegurar que os requisitos do sistema sejam estruturados de forma padronizada e escalável. - **Justificativa Técnica:** A abordagem recomendada prioriza baixo acoplamento, alta coesão e facilidade de manutenção em ambientes de produção, evitando retrabalho e inconsistências operacionais.