• Home
  • Chat IA
  • Guru IA
  • Tutores
  • Central de ajuda
Home
Chat IA
Guru IA
Tutores

·

Engenharia de Produção ·

Introdução à Lógica e Programação

Envie sua pergunta para a IA e receba a resposta na hora

Recomendado para você

Algoritmos e Lógica de Programação

22

Algoritmos e Lógica de Programação

Introdução à Lógica e Programação

UNIA

Algoritmos-e-Programacao-Estruturada-Questoes-Resolvidas

20

Algoritmos-e-Programacao-Estruturada-Questoes-Resolvidas

Introdução à Lógica e Programação

UNIA

Associação entre Definições e Estruturas em Programação

10

Associação entre Definições e Estruturas em Programação

Introdução à Lógica e Programação

UNIA

Roteiro Aula Pratica 2 Algoritmos e Logica de Programacao - Conjectura de Collatz em C++

8

Roteiro Aula Pratica 2 Algoritmos e Logica de Programacao - Conjectura de Collatz em C++

Introdução à Lógica e Programação

UNIA

Relatório de Aula Prática - Algoritmos e Lógica de Programação

12

Relatório de Aula Prática - Algoritmos e Lógica de Programação

Introdução à Lógica e Programação

UNIA

Analise Diagrama de Casos de Uso - Escritor Edita Documento

5

Analise Diagrama de Casos de Uso - Escritor Edita Documento

Introdução à Lógica e Programação

UNIA

UML-Conceitos-e-Aplicacoes-em-Modelagem-de-Software

5

UML-Conceitos-e-Aplicacoes-em-Modelagem-de-Software

Introdução à Lógica e Programação

UNIA

Modelagem de Dados - Roteiro Aula Pratica 2 - Criacao de DER no MySQL Workbench

4

Modelagem de Dados - Roteiro Aula Pratica 2 - Criacao de DER no MySQL Workbench

Introdução à Lógica e Programação

UNIA

Aplicações de Programação

14

Aplicações de Programação

Introdução à Lógica e Programação

UNIA

Roteiro de Aula Prática: Desenvolvimento de Diagrama de Casos de Uso em UML

4

Roteiro de Aula Prática: Desenvolvimento de Diagrama de Casos de Uso em UML

Introdução à Lógica e Programação

UNIA

Texto de pré-visualização

Algoritmos e Lógica de Programação Roteiro Aula Prática 2 ROTEIRO DE AULA PRÁTICA NOME DA DISCIPLINA Algoritmos e Lógica de Programação OBJETIVOS Definição dos objetivos da aula prática Desenvolver um programa utilizando os fundamentos da lógica de programação de maneira estruturada utilizando recursos básicos como estruturas de decisão e repetição e uso de variáveis e seus tipos INFRAESTRUTURA Instalações Computador com o programa Dev CC Materiais de consumo Descrição Quantidade de materiais por procedimentoatividade Computador 1 por aluno Software Sim X Não Em caso afirmativo qual Dev CC Pago Não Pago X Tipo de Licença Gratuita Descrição do software DevC é um ambiente de desenvolvimento integrado livre que utiliza os compiladores do projeto GNU para compilar programas para o sistema operacional Microsoft Windows Suporta as linguagens de programação C e C e possui toda a biblioteca ANSI C Equipamento de Proteção Individual EPI NSA PROCEDIMENTOS PRÁTICOS Desenvolvimento de um programa utilizando a Linguagem CC Atividade proposta Desenvolvimento de um programa utilizando a Linguagem CC 3 Procedimentos para a realização da atividade Você deverá Realizar o download e instalar o DEV CC o aluno poderá utilizar outro ambiente de desenvolvimento no entanto é importante que a linguagem utilizada seja o CC Após a instalação do programa o aluno deverá abrir um projeto Arquivo Novo Projeto como indicado na Figura 1 Figura 1 Criando um projeto Uma nova janela vai se abrir e nesta o aluno escolherá a opção Console Application e Projeto C como indicado na Figura 2 Figura 2 Criando um projeto 4 Uma nova janela aparecerá o aluno deverá escolher qual pasta o projeto será armazenado e qual é o nome deste projeto como indicado na Figura 3 Figura 3 Salvando e renomeando o projeto Após esta configuração o ambiente de desenvolvimento está pronto para ser utilizado e elaborar o problema proposto a seguir Problema Proposto Faça um programa problema utilizando conjectura de Collatz Esta conjuntura toma um número natural n se n for par será dividido por 2 se n for ímpar será multiplicado por 3 e ao resultado será somado 1 Repetese o processo indefinidamente A Conjectura de Collatz estabelece que com essas duas regras simples todos os números naturais chegam até 1 e a partir daí o laço 1421421421 se repete indefinidamente Matematicamente as regras são n n2 se n é par n 3n 1n se n é ímpar Vamos então fazer um programa que calcula todos os números da sequência de Collatz para uma entrada qualquer A sequência de comandos é Entrar com um número inteiro positivo superior a 1 Se o número for par dividir por dois Se o número for ímpar multiplicar por três e somar 1 Pela conjectura de Collatz a sequência sempre termina em 1 como já foi explanado Solicitar o número cuja sequência de Colatz será calculada Para conferir a sequência gerado o seguinte site gera a sequência gerada de acordo com uma entrada httpcehumilchuminhoptcollatz 5 Checklist Criar um projeto no Dev CC Desenvolver a solução para o problema proposto RESULTADOS Resultados da aula prática Elaborar um relatório que deverá conter introdução métodos resultados e conclusão sobre o assunto desenvolvido em aula prática Código fonte escrito na linguagem C que implementa a sequência de Collatz include stdioh int main int n Solicitar o número inteiro positivo maior que 1 printfDigite um número inteiro positivo maior que 1 scanfd n Verificar se o número é maior que 1 if n 1 printfO número deve ser maior que 1 return 1 Imprimir o início da sequência printfSequência de Collatz para d n Loop para calcular a sequência até chegar a 1 while n 1 printfd n Se n é par divide por 2 if n 2 0 n 2 Se n é ímpar multiplica por 3 e soma 1 else n 3 n 1 Imprimir o último número da sequência que é 1 printf1 return 0 Prints de teste Imprimir o início da sequência printfSequência de Collatz para d n Loop para calcular a sequência até chegar a 1 while n 1 printfd n Se n é par divide por 2 if n 2 0 n 2 Se n é ímpar multiplica por 3 e soma 1 else n 3 n 1 Imprimir o último número da sequência que é 1 printf1 return 0 Digite um número inteiro positivo maior que 1 Obs eu utilizei o GDB que é um compilador online da linguagem C pois considero ele melhor que o dev C Explicação do Código 1 Entrada de Dados O programa solicita que o usuário insira um número inteiro maior que 1 2 Validação Se o número for menor ou igual a 1 ele imprime uma mensagem de erro e encerra o programa 3 Cálculo da Sequência Enquanto o número não for 1 o programa verifica se é par ou ímpar o Se for par n 2 0 divide o número por 2 o Se for ímpar multiplica o número por 3 e adiciona 1 4 Impressão da Sequência A sequência é impressa até chegar ao número 1 que finaliza o cálculo Com este código você pode calcular a sequência de Collatz para qualquer número natural positivo maior que 1 Ao rodar o programa ele imprimirá a sequência de números até chegar ao final da conjectura o número 1 Introdução A matemática assim como a vida tem seus mistérios e um deles é a conjetura de Collatz Proposta pelo matemático alemão Lothar Collatz em 1937 ele percebeu que os números tinham um padrão curioso que o levou a criar a seguinte hipótese matemática quando aplicamos repetidamente duas operações simples em um número natural O processo começa com qualquer número positivo maior que 1 e aplicamos as seguintes regras Se o número é par dividimos por 2 Se o número é ímpar multiplicamos por 3 e somamos 1 Esse ciclo de operações continua até que o número se torne 1 A conjectura afirma que não importa qual número inicial você escolha eventualmente o processo sempre leva ao número 1 Vários matemáticos tentaram mas nenhum conseguiu provar matematicamente que a conjectura funciona para todos os números Isso faz da conjectura de Collatz um dos mistérios ainda não resolvidos na matemática Será que com a ajuda dá programação podemos resolver esse mistério mal resolvida da matemática Este projeto mostra um programa desenvolvido na linguagem C que tem como objetivo testar se a hipótese matemática funciona para todos os números A ideia é mostrar que qualquer número independente das operações realizadas sempre o resultado levará ao número um Métodos Entrada de Dados com scanf O código usa scanf para capturar um número inteiro inserido pelo usuário Esse número é a base para calcular a sequência de Collatz Exemplo scanfd n lê um número inteiro e o armazena na variável n Estrutura Condicional ifelse A conjectura exige que façamos algo diferente dependendo se o número é par ou ímpar Para isso usamos uma estrutura condicional ifelse Para verificar se o número é par ou ímpar utilizamos o operador de módulo Se n 2 0 o número é par caso contrário é ímpar Estrutura de Repetição while Como queremos que o processo de divisão e multiplicação continue até que o número chegue a 1 usamos um laço while O while é ideal aqui porque não sabemos exatamente quantas vezes o laço deve rodar isso depende do número inicial O laço termina apenas quando n se torna 1 Impressão de Resultados com printf À medida que o programa calcula cada novo valor na sequência de Collatz ele usa printf para exibir esses valores na tela mostrando a sequência completa Exemplo printfd n imprime o valor atual de n Validação de Entrada O código inclui uma verificação simples para garantir que o usuário insira um número maior que 1 Caso contrário o programa exibe uma mensagem de erro e termina Resultados Testei o código com o numero 4 que é para e com o numero 7 que é impar e ambos resultaram em 1 mostrando que com esses números a conjectura de collatz funciona Conclusão A conclusão que cheguei com o presente trabalho é que a tecnologia através do uso da linguagem C comprova que a hipótese matemática desenvolvida por Collatz está correta assim como aquele ditado que diz todos os caminhos levam a Roma na matemática todos os números de alguma forma chegarão ao resultado um Código fonte escrito na linguagem C que implementa a sequência de Collatz include stdioh int main int n Solicitar o número inteiro positivo maior que 1 printfDigite um número inteiro positivo maior que 1 scanfd n Verificar se o número é maior que 1 if n 1 printfO número deve ser maior que 1 return 1 Imprimir o início da sequência printfSequência de Collatz para d n Loop para calcular a sequência até chegar a 1 while n 1 printfd n Se n é par divide por 2 if n 2 0 n 2 Se n é ímpar multiplica por 3 e soma 1 else n 3 n 1 Imprimir o último número da sequência que é 1 printf1 return 0 Prints de teste Imprimir o início da sequência printfSequência de Collatz para d n Loop para calcular a sequência até chegar a 1 while n 1 printfd n Se n é par divide por 2 if n 2 0 n 2 Se n é ímpar multiplica por 3 e soma 1 else n 3 n 1 Imprimir o último número da sequência que é 1 printf1 return 0 Digite um número inteiro positivo maior que 1 Obs eu utilizei o GDB que é um compilador online da linguagem C pois considero ele melhor que o dev C Explicação do Código 1 Entrada de Dados O programa solicita que o usuário insira um número inteiro maior que 1 2 Validação Se o número for menor ou igual a 1 ele imprime uma mensagem de erro e encerra o programa 3 Cálculo da Sequência Enquanto o número não for 1 o programa verifica se é par ou ímpar o Se for par n 2 0 divide o número por 2 o Se for ímpar multiplica o número por 3 e adiciona 1 4 Impressão da Sequência A sequência é impressa até chegar ao número 1 que finaliza o cálculo Com este código você pode calcular a sequência de Collatz para qualquer número natural positivo maior que 1 Ao rodar o programa ele imprimirá a sequência de números até chegar ao final da conjectura o número 1 Introdução A matemática assim como a vida tem seus mistérios e um deles é a conjetura de Collatz Proposta pelo matemático alemão Lothar Collatz em 1937 ele percebeu que os números tinham um padrão curioso que o levou a criar a seguinte hipótese matemática quando aplicamos repetidamente duas operações simples em um número natural O processo começa com qualquer número positivo maior que 1 e aplicamos as seguintes regras Se o número é par dividimos por 2 Se o número é ímpar multiplicamos por 3 e somamos 1 Esse ciclo de operações continua até que o número se torne 1 A conjectura afirma que não importa qual número inicial você escolha eventualmente o processo sempre leva ao número 1 Vários matemáticos tentaram mas nenhum conseguiu provar matematicamente que a conjectura funciona para todos os números Isso faz da conjectura de Collatz um dos mistérios ainda não resolvidos na matemática Será que com a ajuda dá programação podemos resolver esse mistério mal resolvida da matemática Este projeto mostra um programa desenvolvido na linguagem C que tem como objetivo testar se a hipótese matemática funciona para todos os números A ideia é mostrar que qualquer número independente das operações realizadas sempre o resultado levará ao número um Métodos Entrada de Dados com scanf O código usa scanf para capturar um número inteiro inserido pelo usuário Esse número é a base para calcular a sequência de Collatz Exemplo scanfd n lê um número inteiro e o armazena na variável n Estrutura Condicional ifelse A conjectura exige que façamos algo diferente dependendo se o número é par ou ímpar Para isso usamos uma estrutura condicional ifelse Para verificar se o número é par ou ímpar utilizamos o operador de módulo Se n 2 0 o número é par caso contrário é ímpar Estrutura de Repetição while Como queremos que o processo de divisão e multiplicação continue até que o número chegue a 1 usamos um laço while O while é ideal aqui porque não sabemos exatamente quantas vezes o laço deve rodar isso depende do número inicial O laço termina apenas quando n se torna 1 Impressão de Resultados com printf À medida que o programa calcula cada novo valor na sequência de Collatz ele usa printf para exibir esses valores na tela mostrando a sequência completa Exemplo printfd n imprime o valor atual de n Validação de Entrada O código inclui uma verificação simples para garantir que o usuário insira um número maior que 1 Caso contrário o programa exibe uma mensagem de erro e termina Resultados Testei o código com o numero 4 que é para e com o numero 7 que é impar e ambos resultaram em 1 mostrando que com esses números a conjectura de collatz funciona Conclusão A conclusão que cheguei com o presente trabalho é que a tecnologia através do uso da linguagem C comprova que a hipótese matemática desenvolvida por Collatz está correta assim como aquele ditado que diz todos os caminhos levam a Roma na matemática todos os números de alguma forma chegarão ao resultado um Imprimir o início da sequência printfSequência de Collatz para d n Loop para calcular a sequência até chegar a 1 while n 1 printfd n Se n é par divide por 2 if n 2 0 n 2 Se n é ímpar multiplica por 3 e soma 1 else n 3 n 1 Imprimir o último número da sequência que é 1 printf1 return 0 Digite um número inteiro positivo maior que 1 Digite um número inteiro positivo maior que 1 7 Sequência de Collatz para 7 7 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1 Program finished with exit code 0 Press ENTER to exit console Digite um número inteiro positivo maior que 1 4 include stdioh int main int n Solicitar o número inteiro positivo maior que 1 printfDigite um número inteiro positivo maior que 1 scanfd n Verificar se o número é maior que 1 if n 1 printfO número deve ser maior que 1 return 1 Imprimir o início da sequência printfSequência de Collatz para d n Loop para calcular a sequência até chegar a 1 while n 1 printfd n Se n é par divide por 2 if n 2 0 n 2 Digite um número inteiro positivo maior que 1 4 Sequência de Collatz para 4 4 2 1 Program finished with exit code 0 Press ENTER to exit console Digite um número inteiro positivo maior que 1 7 Sequência de Collatz para 7 7 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1 Program finished with exit code 0 Press ENTER to exit console

Envie sua pergunta para a IA e receba a resposta na hora

Recomendado para você

Algoritmos e Lógica de Programação

22

Algoritmos e Lógica de Programação

Introdução à Lógica e Programação

UNIA

Algoritmos-e-Programacao-Estruturada-Questoes-Resolvidas

20

Algoritmos-e-Programacao-Estruturada-Questoes-Resolvidas

Introdução à Lógica e Programação

UNIA

Associação entre Definições e Estruturas em Programação

10

Associação entre Definições e Estruturas em Programação

Introdução à Lógica e Programação

UNIA

Roteiro Aula Pratica 2 Algoritmos e Logica de Programacao - Conjectura de Collatz em C++

8

Roteiro Aula Pratica 2 Algoritmos e Logica de Programacao - Conjectura de Collatz em C++

Introdução à Lógica e Programação

UNIA

Relatório de Aula Prática - Algoritmos e Lógica de Programação

12

Relatório de Aula Prática - Algoritmos e Lógica de Programação

Introdução à Lógica e Programação

UNIA

Analise Diagrama de Casos de Uso - Escritor Edita Documento

5

Analise Diagrama de Casos de Uso - Escritor Edita Documento

Introdução à Lógica e Programação

UNIA

UML-Conceitos-e-Aplicacoes-em-Modelagem-de-Software

5

UML-Conceitos-e-Aplicacoes-em-Modelagem-de-Software

Introdução à Lógica e Programação

UNIA

Modelagem de Dados - Roteiro Aula Pratica 2 - Criacao de DER no MySQL Workbench

4

Modelagem de Dados - Roteiro Aula Pratica 2 - Criacao de DER no MySQL Workbench

Introdução à Lógica e Programação

UNIA

Aplicações de Programação

14

Aplicações de Programação

Introdução à Lógica e Programação

UNIA

Roteiro de Aula Prática: Desenvolvimento de Diagrama de Casos de Uso em UML

4

Roteiro de Aula Prática: Desenvolvimento de Diagrama de Casos de Uso em UML

Introdução à Lógica e Programação

UNIA

Texto de pré-visualização

Algoritmos e Lógica de Programação Roteiro Aula Prática 2 ROTEIRO DE AULA PRÁTICA NOME DA DISCIPLINA Algoritmos e Lógica de Programação OBJETIVOS Definição dos objetivos da aula prática Desenvolver um programa utilizando os fundamentos da lógica de programação de maneira estruturada utilizando recursos básicos como estruturas de decisão e repetição e uso de variáveis e seus tipos INFRAESTRUTURA Instalações Computador com o programa Dev CC Materiais de consumo Descrição Quantidade de materiais por procedimentoatividade Computador 1 por aluno Software Sim X Não Em caso afirmativo qual Dev CC Pago Não Pago X Tipo de Licença Gratuita Descrição do software DevC é um ambiente de desenvolvimento integrado livre que utiliza os compiladores do projeto GNU para compilar programas para o sistema operacional Microsoft Windows Suporta as linguagens de programação C e C e possui toda a biblioteca ANSI C Equipamento de Proteção Individual EPI NSA PROCEDIMENTOS PRÁTICOS Desenvolvimento de um programa utilizando a Linguagem CC Atividade proposta Desenvolvimento de um programa utilizando a Linguagem CC 3 Procedimentos para a realização da atividade Você deverá Realizar o download e instalar o DEV CC o aluno poderá utilizar outro ambiente de desenvolvimento no entanto é importante que a linguagem utilizada seja o CC Após a instalação do programa o aluno deverá abrir um projeto Arquivo Novo Projeto como indicado na Figura 1 Figura 1 Criando um projeto Uma nova janela vai se abrir e nesta o aluno escolherá a opção Console Application e Projeto C como indicado na Figura 2 Figura 2 Criando um projeto 4 Uma nova janela aparecerá o aluno deverá escolher qual pasta o projeto será armazenado e qual é o nome deste projeto como indicado na Figura 3 Figura 3 Salvando e renomeando o projeto Após esta configuração o ambiente de desenvolvimento está pronto para ser utilizado e elaborar o problema proposto a seguir Problema Proposto Faça um programa problema utilizando conjectura de Collatz Esta conjuntura toma um número natural n se n for par será dividido por 2 se n for ímpar será multiplicado por 3 e ao resultado será somado 1 Repetese o processo indefinidamente A Conjectura de Collatz estabelece que com essas duas regras simples todos os números naturais chegam até 1 e a partir daí o laço 1421421421 se repete indefinidamente Matematicamente as regras são n n2 se n é par n 3n 1n se n é ímpar Vamos então fazer um programa que calcula todos os números da sequência de Collatz para uma entrada qualquer A sequência de comandos é Entrar com um número inteiro positivo superior a 1 Se o número for par dividir por dois Se o número for ímpar multiplicar por três e somar 1 Pela conjectura de Collatz a sequência sempre termina em 1 como já foi explanado Solicitar o número cuja sequência de Colatz será calculada Para conferir a sequência gerado o seguinte site gera a sequência gerada de acordo com uma entrada httpcehumilchuminhoptcollatz 5 Checklist Criar um projeto no Dev CC Desenvolver a solução para o problema proposto RESULTADOS Resultados da aula prática Elaborar um relatório que deverá conter introdução métodos resultados e conclusão sobre o assunto desenvolvido em aula prática Código fonte escrito na linguagem C que implementa a sequência de Collatz include stdioh int main int n Solicitar o número inteiro positivo maior que 1 printfDigite um número inteiro positivo maior que 1 scanfd n Verificar se o número é maior que 1 if n 1 printfO número deve ser maior que 1 return 1 Imprimir o início da sequência printfSequência de Collatz para d n Loop para calcular a sequência até chegar a 1 while n 1 printfd n Se n é par divide por 2 if n 2 0 n 2 Se n é ímpar multiplica por 3 e soma 1 else n 3 n 1 Imprimir o último número da sequência que é 1 printf1 return 0 Prints de teste Imprimir o início da sequência printfSequência de Collatz para d n Loop para calcular a sequência até chegar a 1 while n 1 printfd n Se n é par divide por 2 if n 2 0 n 2 Se n é ímpar multiplica por 3 e soma 1 else n 3 n 1 Imprimir o último número da sequência que é 1 printf1 return 0 Digite um número inteiro positivo maior que 1 Obs eu utilizei o GDB que é um compilador online da linguagem C pois considero ele melhor que o dev C Explicação do Código 1 Entrada de Dados O programa solicita que o usuário insira um número inteiro maior que 1 2 Validação Se o número for menor ou igual a 1 ele imprime uma mensagem de erro e encerra o programa 3 Cálculo da Sequência Enquanto o número não for 1 o programa verifica se é par ou ímpar o Se for par n 2 0 divide o número por 2 o Se for ímpar multiplica o número por 3 e adiciona 1 4 Impressão da Sequência A sequência é impressa até chegar ao número 1 que finaliza o cálculo Com este código você pode calcular a sequência de Collatz para qualquer número natural positivo maior que 1 Ao rodar o programa ele imprimirá a sequência de números até chegar ao final da conjectura o número 1 Introdução A matemática assim como a vida tem seus mistérios e um deles é a conjetura de Collatz Proposta pelo matemático alemão Lothar Collatz em 1937 ele percebeu que os números tinham um padrão curioso que o levou a criar a seguinte hipótese matemática quando aplicamos repetidamente duas operações simples em um número natural O processo começa com qualquer número positivo maior que 1 e aplicamos as seguintes regras Se o número é par dividimos por 2 Se o número é ímpar multiplicamos por 3 e somamos 1 Esse ciclo de operações continua até que o número se torne 1 A conjectura afirma que não importa qual número inicial você escolha eventualmente o processo sempre leva ao número 1 Vários matemáticos tentaram mas nenhum conseguiu provar matematicamente que a conjectura funciona para todos os números Isso faz da conjectura de Collatz um dos mistérios ainda não resolvidos na matemática Será que com a ajuda dá programação podemos resolver esse mistério mal resolvida da matemática Este projeto mostra um programa desenvolvido na linguagem C que tem como objetivo testar se a hipótese matemática funciona para todos os números A ideia é mostrar que qualquer número independente das operações realizadas sempre o resultado levará ao número um Métodos Entrada de Dados com scanf O código usa scanf para capturar um número inteiro inserido pelo usuário Esse número é a base para calcular a sequência de Collatz Exemplo scanfd n lê um número inteiro e o armazena na variável n Estrutura Condicional ifelse A conjectura exige que façamos algo diferente dependendo se o número é par ou ímpar Para isso usamos uma estrutura condicional ifelse Para verificar se o número é par ou ímpar utilizamos o operador de módulo Se n 2 0 o número é par caso contrário é ímpar Estrutura de Repetição while Como queremos que o processo de divisão e multiplicação continue até que o número chegue a 1 usamos um laço while O while é ideal aqui porque não sabemos exatamente quantas vezes o laço deve rodar isso depende do número inicial O laço termina apenas quando n se torna 1 Impressão de Resultados com printf À medida que o programa calcula cada novo valor na sequência de Collatz ele usa printf para exibir esses valores na tela mostrando a sequência completa Exemplo printfd n imprime o valor atual de n Validação de Entrada O código inclui uma verificação simples para garantir que o usuário insira um número maior que 1 Caso contrário o programa exibe uma mensagem de erro e termina Resultados Testei o código com o numero 4 que é para e com o numero 7 que é impar e ambos resultaram em 1 mostrando que com esses números a conjectura de collatz funciona Conclusão A conclusão que cheguei com o presente trabalho é que a tecnologia através do uso da linguagem C comprova que a hipótese matemática desenvolvida por Collatz está correta assim como aquele ditado que diz todos os caminhos levam a Roma na matemática todos os números de alguma forma chegarão ao resultado um Código fonte escrito na linguagem C que implementa a sequência de Collatz include stdioh int main int n Solicitar o número inteiro positivo maior que 1 printfDigite um número inteiro positivo maior que 1 scanfd n Verificar se o número é maior que 1 if n 1 printfO número deve ser maior que 1 return 1 Imprimir o início da sequência printfSequência de Collatz para d n Loop para calcular a sequência até chegar a 1 while n 1 printfd n Se n é par divide por 2 if n 2 0 n 2 Se n é ímpar multiplica por 3 e soma 1 else n 3 n 1 Imprimir o último número da sequência que é 1 printf1 return 0 Prints de teste Imprimir o início da sequência printfSequência de Collatz para d n Loop para calcular a sequência até chegar a 1 while n 1 printfd n Se n é par divide por 2 if n 2 0 n 2 Se n é ímpar multiplica por 3 e soma 1 else n 3 n 1 Imprimir o último número da sequência que é 1 printf1 return 0 Digite um número inteiro positivo maior que 1 Obs eu utilizei o GDB que é um compilador online da linguagem C pois considero ele melhor que o dev C Explicação do Código 1 Entrada de Dados O programa solicita que o usuário insira um número inteiro maior que 1 2 Validação Se o número for menor ou igual a 1 ele imprime uma mensagem de erro e encerra o programa 3 Cálculo da Sequência Enquanto o número não for 1 o programa verifica se é par ou ímpar o Se for par n 2 0 divide o número por 2 o Se for ímpar multiplica o número por 3 e adiciona 1 4 Impressão da Sequência A sequência é impressa até chegar ao número 1 que finaliza o cálculo Com este código você pode calcular a sequência de Collatz para qualquer número natural positivo maior que 1 Ao rodar o programa ele imprimirá a sequência de números até chegar ao final da conjectura o número 1 Introdução A matemática assim como a vida tem seus mistérios e um deles é a conjetura de Collatz Proposta pelo matemático alemão Lothar Collatz em 1937 ele percebeu que os números tinham um padrão curioso que o levou a criar a seguinte hipótese matemática quando aplicamos repetidamente duas operações simples em um número natural O processo começa com qualquer número positivo maior que 1 e aplicamos as seguintes regras Se o número é par dividimos por 2 Se o número é ímpar multiplicamos por 3 e somamos 1 Esse ciclo de operações continua até que o número se torne 1 A conjectura afirma que não importa qual número inicial você escolha eventualmente o processo sempre leva ao número 1 Vários matemáticos tentaram mas nenhum conseguiu provar matematicamente que a conjectura funciona para todos os números Isso faz da conjectura de Collatz um dos mistérios ainda não resolvidos na matemática Será que com a ajuda dá programação podemos resolver esse mistério mal resolvida da matemática Este projeto mostra um programa desenvolvido na linguagem C que tem como objetivo testar se a hipótese matemática funciona para todos os números A ideia é mostrar que qualquer número independente das operações realizadas sempre o resultado levará ao número um Métodos Entrada de Dados com scanf O código usa scanf para capturar um número inteiro inserido pelo usuário Esse número é a base para calcular a sequência de Collatz Exemplo scanfd n lê um número inteiro e o armazena na variável n Estrutura Condicional ifelse A conjectura exige que façamos algo diferente dependendo se o número é par ou ímpar Para isso usamos uma estrutura condicional ifelse Para verificar se o número é par ou ímpar utilizamos o operador de módulo Se n 2 0 o número é par caso contrário é ímpar Estrutura de Repetição while Como queremos que o processo de divisão e multiplicação continue até que o número chegue a 1 usamos um laço while O while é ideal aqui porque não sabemos exatamente quantas vezes o laço deve rodar isso depende do número inicial O laço termina apenas quando n se torna 1 Impressão de Resultados com printf À medida que o programa calcula cada novo valor na sequência de Collatz ele usa printf para exibir esses valores na tela mostrando a sequência completa Exemplo printfd n imprime o valor atual de n Validação de Entrada O código inclui uma verificação simples para garantir que o usuário insira um número maior que 1 Caso contrário o programa exibe uma mensagem de erro e termina Resultados Testei o código com o numero 4 que é para e com o numero 7 que é impar e ambos resultaram em 1 mostrando que com esses números a conjectura de collatz funciona Conclusão A conclusão que cheguei com o presente trabalho é que a tecnologia através do uso da linguagem C comprova que a hipótese matemática desenvolvida por Collatz está correta assim como aquele ditado que diz todos os caminhos levam a Roma na matemática todos os números de alguma forma chegarão ao resultado um Imprimir o início da sequência printfSequência de Collatz para d n Loop para calcular a sequência até chegar a 1 while n 1 printfd n Se n é par divide por 2 if n 2 0 n 2 Se n é ímpar multiplica por 3 e soma 1 else n 3 n 1 Imprimir o último número da sequência que é 1 printf1 return 0 Digite um número inteiro positivo maior que 1 Digite um número inteiro positivo maior que 1 7 Sequência de Collatz para 7 7 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1 Program finished with exit code 0 Press ENTER to exit console Digite um número inteiro positivo maior que 1 4 include stdioh int main int n Solicitar o número inteiro positivo maior que 1 printfDigite um número inteiro positivo maior que 1 scanfd n Verificar se o número é maior que 1 if n 1 printfO número deve ser maior que 1 return 1 Imprimir o início da sequência printfSequência de Collatz para d n Loop para calcular a sequência até chegar a 1 while n 1 printfd n Se n é par divide por 2 if n 2 0 n 2 Digite um número inteiro positivo maior que 1 4 Sequência de Collatz para 4 4 2 1 Program finished with exit code 0 Press ENTER to exit console Digite um número inteiro positivo maior que 1 7 Sequência de Collatz para 7 7 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1 Program finished with exit code 0 Press ENTER to exit console

Sua Nova Sala de Aula

Sua Nova Sala de Aula

Empresa

Central de ajuda Contato Blog

Legal

Termos de uso Política de privacidade Política de cookies Código de honra

Baixe o app

4,8
(35.000 avaliações)
© 2025 Meu Guru®