Você está na página 1de 10

UNIVERSIDADE PITÁGORAS UNOPAR

ENGENHARIA CIVIL

Nome do Aluno

ALGORITMOS E LÓGICA DE PROGRAMAÇÃO

AULA PRÁTICA

ALTAMIRA – PA

2023
Nome do Aluno

ALGORITMOS E LÓGICA DE PROGRAMAÇÃO

AULA PRÁTICA

Trabalho para apresentar os resultados das


aulas práticas como requisito para obtenção de
nota.

Orientador:

ALTAMIRA – PA

2023

2
SUMÁRIO

1 INTRODUÇÃO .................................................................................... 4
1.1 OBJETIVO ..................................................................................................... 4
2 METODOLOGIA EXPERIMENTAL .................................................................. 5
2.1 PROBLEMA PROPOSTO ..................................................................... 5
3 RESULTADOS ENCONTRADOS ....................................................................... 5
3.1 CÓDIGO .......................................................................................................... 6
3.2 TELA DO DESENVOLVIMENTO C++ ............................................................. 6
3.31 COMPROVANDO O FUNCIONAMENTO ..................................................... 7
4 DISCUSSÃO ................................................................ 8
5 CONCLUSÃO ................................................................................................. 8
REFERÊNCIAS ................................................................ 9

3
LISTA DE TABELA E GRÁFICO

Figura 01 Script em C++ 7

Figura 02 Desenvolvimento do Projeto 7

Figura 03 Compilando e executando 8

Figura 04 Teste no site 8

Figura 05 Resultado no DEV C+ 8

Figura 06 Teste no site 9

Figura 07 Teste no DEV C++ 9

4
AULA PRÁTICA 1

1. Introdução

A prática é crucial para a consolidação do aprendizado teórico. Eles


demonstraram uma experiência prática na aplicação de conceitos e fundamentos
sobre diversas disciplinas, evidenciando características sobre temas relevantes para
áreas específicas de atuação.

A Conjectura de Collatz, também conhecida como o problema 3n+1, é um


exemplo fascinante de um problema matemático que ainda não foi resolvido e que
nos desafia pela simplicidade e profundidade. Se um número "n" é par, é dividido por
2; se é ímpar, é multiplicado por 3 e somado a 1. Até o momento, todos os números
testados chegaram ao número 1 e entraram num ciclo contínuo de 1,4,2,1.

Neste contexto, esta atividade prática propõe uma abordagem para


implementar um programa de Linguagem C++ que solucione o problema de Collatz.
O objetivo não é apenas compreender a conjectura, mas também lidar com desafios
de programação, adaptando códigos e resolvendo problemas de compilação,
sempre seguindo os princípios da engenharia: claro, eficiente e precisão.

1.1 Objetivo

O objetivo principal deste trabalho é criar uma programação com base nos
princípios da lógica de programação. Espera-se que, ao final desta atividade, o
programa seja capaz de:

 Utilização de estruturas de decisão e reprodução de forma eficaz.


 Empregar variáveis e entender a importância dos diferentes tipos de
variáveis.
 Resolver o problema proposto de Collatz, demonstrando a aplicação
prática dos conceitos treinados.

Para atingir esses objetivos, será necessário aprimorar o conhecimento sobre


a linguagem de programação C++ e sua capacidade de aplicação lógica e
estruturada em desafios de programação.

5
2. Metodologia experimental

2.1 Problema Proposto

Esta atividade prática propõe um desafio centrado na conjectura de Collatz. A


conjectura se baseia nas seguintes regras simples: um número natural "n" será
dividido por 2 se por par; se para ímpar, será multiplicado por 3 e, em seguida,
somado 1. Este processo é repetido indefinidamente até que o número atinja o valor
1. Uma vez realizado, entre-se em um ciclo contínuo: 1,4,2,1, 4,2,1,4,2,1...

Matematicamente, as regras são definidas como:

 (n) = n/2 se n é par


 (n) = 3n + 1n se n é ímpar

Dentro deste contexto, o programa a ser desenvolvido terá como objetivo


calcular toda a sequência de Collatz com base em uma entrada fornecida pelo
usuário. Os comandos a serem implementados são:

 Solicite a entrada de um número inteiro positivo maior que 1.


 Dividir o número por dois se for par.
 Multiplicar o número por três e somar 1 se for ímpar.

A sequência, conforme a conjectura de Collatz, sempre se encerra ao atingir o


número 1. Para validar a sequência gerada pelo programa, recomenda-se o uso do
site http://cehum.ilch.uminho.pt/collatz, que gera a sequência de Collatz conforme a
entrada fornecida.

3. Resultados encontrados

A primeira etapa no roteiro da atividade consiste em instalar no computador o


programa DEV C++ um console gratuito que permitirá a compilação e execução do
programa escrito.

Em um segundo momento, desenvolve-se o código a ser executado em


Linguagem C++.

6
3.1 Código

O código desenvolvido foi concebido para funcionar no ambiente Dev C++.


Seu objetivo principal é calcular a sequência completa de Collatz com base em um
número fornecido pelo usuário. A Figura 2 ilustra o projeto dentro da plataforma de
desenvolvimento.

Figura 1 - Script em C++


#include <iostream>

int main(int argc, char** argv) {


long int num;

std::cout<<"Digite um numero:\n"<<std::endl;
std::cin>>num;

while(1){
if(num==1)
break;
if(num%2==1)
num=num*3+1;
else
num=num/2; std::cout<<num<<std::endl;
}
return 0;
}

Figura 2 - Desenvolvimento do Projeto

3.2 Compilando e executando o programa

Em seguida, foram apresentadas as imagens que ilustram o processo de


desenvolvimento do projeto, bem como o teste realizado no site indicado.
7
Figura 3 - Compilando e executando

Figura 4 - Teste no site Figura 5 - Resultado no DEV C+

3.2.1 Comprovando o funcionamento

Para garantir o correto funcionamento, foram realizados alguns testes,


conforme demonstrado nas imagens a seguir.

8
Figura 6 - Teste no site Figura 7 - Teste no DEV C++

4. Discussão

Os testes realizados demonstraram que o programa desenvolvido atingiu os


objetivos propostos. As saídas reproduzidas pelo programa apresentam os mesmos
resultados do site http://cehum.ilch.uminho.pt/collatz, quando simuladas as mesmas
entradas.

5. Conclusão

A exceção da teoria e prática é fundamental para a verdadeira assimilação de


qualquer aprendizado. Neste estudo, aprofundamos nossa experiência prática ao
lidar com a aplicação de conceitos diversificados e ao trazer à tona as nuances de
tópicos intrínsecos a áreas particulares de estudo.

A Conjectura de Collatz destaca-se como um desafio enigmático no cenário


matemático, tendo uma apresentação simples, mas carregando uma profundidade
que ainda intriga muitos.

9
REFERÊNCIAS

Problema de Collatz. WorldFarm MathWorld. Disponível em:


https://mathworld.wolfram.com/CollatzProblem.html Acesso em 23 mar. 2022

Conjectura de Collatz. Disponível em: http://cehum.ilch.uminho.pt/collatz Acesso em 23 mar. 2022

10

Você também pode gostar