MAPA – ADSIS – LINGUAGEM E TÉCNICAS DE PROGRAMAÇÃO – 54_2025

Imagine que você foi contratado para desenvolver um sistema de gerenciamento de livros para uma pequena biblioteca. O sistema deve permitir que o bibliotecário cadastre, pesquise, ordene e gerencie o acervo de 20 livros. Esta tarefa exigirá a aplicação de diversos conceitos fundamentais da linguagem C.



Conceitos a serem aplicados:

Estruturas (Structs): Para armazenar os dados de cada livro (código, título, autor, área, ano e editora).

Constantes: Para definir o tamanho máximo do acervo de 20 livros.

Vetores: Para criar um acervo com capacidade para 20 livros, utilizando um vetor de structs.

Strings: Para manipular os campos de texto como título, autor, área e editora.

Funções: Para modularizar o código, separando a lógica de cada funcionalidade (cadastrar, imprimir, pesquisar, ordenar).

Estruturas de Repetição: Para percorrer o vetor de livros durante o cadastro, a impressão e a ordenação.

Estruturas Condicionais: Para criar um menu de opções e tomar decisões lógicas, como verificar se um livro foi encontrado na pesquisa.

Entrada e Saída de Dados: Para interagir com o usuário, recebendo dados do teclado e exibindo resultados na tela.

Funções Intrínsecas: Para operações de manipulação de strings (por exemplo, strcmp para comparar nomes) e outras utilidades.

Arquivos (Opcional – desafio extra): Para armazenar o acervo de forma persistente, lendo os dados de um arquivo ao iniciar o programa e salvando-os ao encerrar.



Dado o contexto, seguem as etapas que precisarão cumprir na atividade:



Etapa 1: Planejamento e Estrutura do Código – Antes de começar a codificar, planeje a estrutura do seu programa.



Defina a struct: Crie uma estrutura chamada Livro com os campos necessários:

int codigo;

char titulo[50];

char autor[30];

char area[30];

int ano;

char editora[30];



Declare as constantes e variáveis: Use #define para definir uma constante para o tamanho do acervo (TAMANHO_ACERVO 20). Na função main, declare um vetor dessa struct (struct Livro acervo[TAMANHO_ACERVO]) e outras variáveis auxiliares.



Desenhe o menu: Crie um menu principal para o usuário escolher entre as seguintes opções:

1 – Cadastrar livros

2 – Imprimir todos os livros

3 – Pesquisar livro por código

4 – Ordenar livros por ano de publicação

5 – Sair do programa



Esboce as funções: Crie as assinaturas das funções que você precisará. Por exemplo:

void cadastrarLivros(struct Livro acervo[], int tamanho);

void imprimirLivros(struct Livro acervo[], int tamanho);

void pesquisarLivro(struct Livro acervo[], int tamanho, int codigoBusca);

void ordenarLivros(struct Livro acervo[], int tamanho);

 

 



Etapa 2: Implementação do Código – Agora, implemente cada funcionalidade em seu código.



Função main: use um laço de repetição (do-while ou while) e uma estrutura de seleção (switch-case ou if-else) para exibir o menu e chamar a função correspondente à opção do usuário.

Função cadastrarLivros: use um laço for para percorrer o vetor de structs. Dentro do laço, use printf e scanf para solicitar e ler os dados de cada livro. Lembre-se de usar fflush(stdin) após cada scanf para limpar o buffer do teclado.

Função imprimirLivros: percorra o vetor com um laço for e use printf para exibir os dados de cada livro.

Função pesquisarLivro: solicite ao usuário o código do livro a ser pesquisado. Percorra o vetor com um laço while. Se o código for encontrado, exiba as informações do livro. Se não, mostre uma mensagem de “não encontrado”.

Função ordenarLivros: implemente o método de ordenação da bolha (BubbleSort) para ordenar os livros por ano de publicação, usando laços for aninhados e uma variável temporária para a troca.

Documente o código: Adicione comentários (// ou /* */) em todas as partes importantes: o que cada função faz, o que cada variável armazena e por que certas decisões de lógica foram tomadas.

 

 



Etapa 3: Validação e Gravação

Compile e teste: compile seu programa e teste todas as funcionalidades, certificando-se de que não há erros de sintaxe e que o comportamento é o esperado.

Gravação do vídeo: grave um vídeo de até 5 minutos seguindo este roteiro:

Introdução: apresente-se e explique o objetivo do projeto.

Visão Geral do Código: mostre a estrutura principal do seu programa, destacando a struct, a constante e as funções que você criou.

Demonstração das Funcionalidades: compile e execute o programa. Demonstre cada opção do menu (cadastrar, imprimir, pesquisar, ordenar) e explique o que acontece por trás da tela em cada etapa.

Discussão das Boas Práticas: escolha um trecho de código (por exemplo, a função de ordenação ou de pesquisa) e comente a importância da documentação e da modularização. Explique como o uso de funções torna o código mais claro, fácil de manter e reutilizável.

Conclusão: finalize o vídeo com suas considerações sobre o aprendizado na atividade e os desafios superados.



Postagem: poste o vídeo no YouTube no formato NÃO-LISTADO, ou seja, liberado apenas para quem tiver acesso ao link.

 

 

 

​​O que você entregará?

 

Para esta atividade, você deverá baixar o Template (formulário padrão) da atividade MAPA, disponibilizado no ambiente da disciplina em “ARQUIVOS > Material da Disciplina”. Você deverá desenvolver o código atendendo aos requisitos das Etapas 1 e 2 mencionados no enunciado. Também deverá colocar o link do vídeo ao final do template. O vídeo deverá atender os requisitos da etapa 3 e deve ter até 5 minutos. Após responder, você deverá salvar o Template (de preferência em PDF) e anexar no campo disponível na atividade. Clicando em “Responder”, confira se o arquivo que está anexando é exatamente o arquivo correto, depois clique em “Finalizar” para enviar. Por fim, verifique se o arquivo aparece anexado na atividade.

 

IMPORTANTE:

 

  1. Um vídeo explicativo da atividade MAPA está disponível para ajudá-lo nesse processo de criação e desenvolvimento. Você poderá acessar em Fórum Informativo intitulado “VÍDEOS EXPLICATIVOS DA ATIVIDADES MAPA e AE1” ou em “ARQUIVOS > Material da Disciplina”.

 

  1. A atividade MAPA deve ser realizada no Template (Formulário Padrão), salva em PDF e enviada no ambiente da atividade.

 

  1. Após o envio não são permitas alterações, ou modificações. Logo, você tem apenas uma chance de enviar o arquivo corretamente. Revise bem antes de enviar!

 

  1. Lembre-se de que evidências de cópias de materiais, incluindo de outros estudantes, sem devidas referências, serão inquestionavelmente zeradas. As citações e referências, mesmo que do livro da disciplina, devem ser realizadas conforme normas da Instituição de Ensino.

 

  1. Não são permitidas correções parciais no decorrer do módulo, ou seja, o famoso: “professor, veja se minha atividade está certa?”. Isso invalida seu processo avaliativo. Lembre-se de que a interpretação da atividade também faz parte da avaliação.

 

  1. Procure sanar suas dúvidas junto à mediação em tempo hábil sobre o conteúdo exigido na atividade, de modo que consiga realizar sua participação.

 

  1. Atenção ao prazo de entrega, evite envio de atividade em cima do prazo. Você pode ter algum problema com internet, computador, software etc., e os prazos não serão flexibilizados, mesmo em caso de comprovação.

 

Bons estudos!

 

Nossa equipe é composta por profissionais especializados em diversas áreas, o que nos permite oferecer uma assessoria completa na elaboração de uma ampla variedade de atividades. Estamos empenhados em garantir a autenticidade e originalidade de todos os trabalhos que realizamos.

Ficaríamos muito satisfeitos em poder ajudar você. Entre em contato conosco para solicitar o seu serviço.

Aponte o celular para abrir o WhatsApp

ou clique aqui
Este site utiliza cookies para lhe oferecer uma melhor experiência de navegação. Ao navegar neste site, você concorda com o uso de cookies.