Prévia do material em texto
RELATÓRIO DE AULA PRÁTICA ALGORITMOS E LÓGICA DE PROGRAMAÇÃO Engenharia Mecânica ALUNO – RAMON ALTIVO ALMEIDA CÂNDIDO – 3º SEMESTRE 2025 Página 2 de 7 1. INTRODUÇÃO O desenvolvimento desta atividade tem por objetivo a aplicação prática de conteúdos e fundamentos abordados ao longo do curso, abrangendo aspectos e matérias relevantes em áreas específicas de atuação. Neste caso, a proposta foi desenvolvida utilizando a linguagem de programação C++, com foco na resolução de um problema baseado na Conjectura de Collatz. 2. DESENVOLVIMENTO O desafio proposto consiste na criação de um programa que aplique a Conjectura de Collatz, que estabelece uma regra simples para qualquer número natural “n”: ✓ Se n for par, divide-se por 2; ✓ Se n for ímpar, multiplica-se por 3 e soma-se 1. O processo é repetido até que o número atinja o valor 1, momento em que se inicia o ciclo 1 → 4 → 2 → 1... de forma indefinida. A conjectura sugere que qualquer número natural sempre chegará a esse ciclo. Formalmente, as regras são definidas como: ✓ f(n) = n / 2, se n for par; ✓ f(n) = 3n + 1, se n for ímpar. O objetivo do programa é calcular e exibir todos os elementos da sequência de Collatz para um número natural informado pelo usuário (maior que 1). Passos do programa: ✓ Solicitar ao usuário um número inteiro positivo maior que 1; ✓ Aplicar as regras da conjectura de forma iterativa; ✓ Exibir a sequência gerada até que se chegue ao número 1. Página 3 de 7 Para conferir a veracidade da sequência gerada, pode-se utilizar o site: https://onlinemathtools.com/collatz-sequence 3. RESOLUÇÃO DO PROBLEMA A primeira etapa desta atividade consistiu na instalação do programa Dev C++, uma ferramenta gratuita que permite a escrita, compilação e execução de códigos na linguagem C++. Na segunda etapa, foi desenvolvido o código em C++ que implementa a lógica da Conjectura de Collatz. Na sequência, foram realizados testes com diferentes entradas para verificar o correto funcionamento do programa. Figura 1: Script em C++. Fonte: Autor (2023). https://onlinemathtools.com/collatz-sequence Página 4 de 7 Figura 2: Print de console de desenvolvimento C++. Fonte: Autor (2023). Figura 3: Compilando e executando o programa. Fonte: Autor (2023). Página 5 de 7 Figuras 4 e 5: Comprovando o funcionamento (nº par 120). Fonte: Autor (2023). Figura 6: Comprovando o funcionamento (nº Ímpar 99). Fonte: Autor (2023). Página 6 de 7 Figura 7: Comprovando o funcionamento (nº Ímpar 99). Fonte: Autor (2023). Os testes confirmaram que o programa funciona conforme o esperado, retornando os mesmos resultados apresentados pelo site oficial da conjectura. 4. CONCLUSÃO Esta atividade proporcionou uma excelente oportunidade de aplicar os conhecimentos teóricos adquiridos ao longo do semestre, promovendo o desenvolvimento prático em linguagem C++. A realização do projeto favoreceu a compreensão dos conceitos de algoritmos, lógica condicional e estruturas de repetição, além de destacar a importância da pesquisa e da prática na consolidação do aprendizado. Portanto, a execução desta atividade contribuiu significativamente para a formação técnica e intelectual do aluno, evidenciando a relevância da integração entre teoria e prática no processo de aprendizagem. Página 7 de 7 5. REFERÊNCIAS CORMEN, T. H.; LEISERSON, C. E.; RIVEST, R. L.; STEIN, C. Algoritmos: teoria e prática. 3. ed. Rio de Janeiro: Elsevier, 2012. DEITEL, H. M.; DEITEL, P. J. C++: Como Programar. 8. ed. São Paulo: Pearson Prentice Hall, 2016. KNUTH, D. E. The Art of Computer Programming. Volume 1: Fundamental Algorithms. Addison-Wesley, 3rd Edition, 1997. Online Math Tools. Collatz Sequence Generator. Disponível em: https://onlinemathtools.com/collatz-sequence. Acesso em: 12 abr. 2025.