Ir ao conteúdo
  • Cadastre-se

Desafio-Primo: JAVA - algorítimos inter-dependentes


Vinicius55coelho

Posts recomendados

  • Membro VIP
Desculpe, troco e-mail com voce;

Pode fechar o topico, vou conversar com voce via e-mail

Olá Vinicius. Eu prefiro realizar tal conversa aqui pelo fórum mesmo, assim todos se beneficiam e podem opinar sobre as idéias discutidas, além de a solução para o problema ficar disponível aqui caso alguém tenha a mesma dúvida no futuro.

Agradeço a compreensão e aguardo a sua resposta.

Link para o comentário
Compartilhar em outros sites

Oky.

Parte 1:

A constatação da possibilidade de existir um padrão nos números primos veio, quando incrédulo assistir ao video "El secreto de los numeros primos" no youtube, ( vide: /watch?v=qSjh4-VYDcg); no qual o autor desse video "revela-nos" que o segredo dos números primos seria os numeros redondos, que seguem essa lógica:

* números redondos:

2 = 2

2x3 = 6

2x3x5 = 30

2x3x5x7 = 210

2x3x5x7x11 = 2310

2x3x5x7x11x13 = 30.030

30030x17 = 510.510

510510x19 = 9.699.690

...

e assim por diante.

E mais: O autor do vídeo nos apresenta de forma bastante coerente as tabelas em relação aos números redondos 6 e 30; todavia a tabela 210 destrói a lógica que havia, como pode ver meu comentário abaixo do vídeo no site. Logo a lógica, que o autor do vídeo apresentou, é incorreta.

Vejamos, Parte 2:

1. Selecionando esses números redondos e colocando em ordem:

T=(2,6,30,210,2310,30.030, 510.510, 9.699.690...)

2. Selecionando o total de números primos de 2 até o referido número redondo,obtemos:

H = (1,3,10,46,388,3248,X,Y,....)

Isto é, de 0 a 2, há 1 número primo, que é 2; de 0 a 6, há 3 números primos, que são 2,3,5; de 0 a 30, há 10 números primos; de 0 a 210, há 46 números primos; de 0 a 2310, há 388 números primos; de 0 a 30.030, há 3248 números primos; de 0 a 510.510, há X números primos; de 0 a 9.699.690, há Y números primos; ...

I.

Considere:

H = (1,3,10,46,388,3248,X,Y,....);

H =(a1,a2,a3,a4,a5,a6,a7,a8,.... an);

Logo:

a1= 1; a2 = 3; e assim por diante.

II.

Sabendo-se que: a6 = a5.r; logo r = a6/a5; assim como r = a5/a4; r = a4/a3; r = a4/a2; r = a2/a1; r = a7/a6; r = a8/a7; e assim por diante...

Divindindo-se an+1 por an; obtemos a seguinte seqüência:

K = (

3;

3,333...;

4,6;

8,4347826086956521739130434782609;

8,3711340206185567010309278350515;

X/a6;

Y/X;

...

)

Percebe-se, entretanto, que o valor de "r" é variável; contudo para se tentar achar a lógica de "r" temos que ter uma sequência de "K" significativa.

Para ter uma sequência significativa de "K", entretanto, tenho que ter de antemão uma sequência significativa também de "H", e, por sua vez, para ter uma sequência significativa de "H", precisa-se ter uma sequência signifiva de "T".

Então, na verdade, são três algarítmos, que se busca: um para satisfazer a sequência "T"; outro para satisfazer a sequência "H"; e, por fim, um para satisfazer a sequência "K"; visto que um depende do outro, isto é, são inter-dependetes.

É possível criar esses três algarítmos? Ora, sendo possível, pode ser que possamos descobrir o mistério que envolve os números primos.

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

Muito interessante o seu questionamento, e eu diria que na verdade você não está em busca de um algoritmo para encontrar números primos numa dada faixa, mas sim de um estudo sobre o comportamento dos números primos.

No caso isso entraria mais no ramo da teoria dos números, então se você tem interesses em números primos seria melhor direcionar seus estudos para este campo. Inclusive é possível que esta sua teoria já tenha sido analisada de forma mais aprofundada, mas se ela ainda não foi, talvez haja ferramentas neste campo que te permitam extrair mais da teoria.

Vou falar com algumas pessoas sobre o seu questionamento e depois te informo sobre boas fontes de conteúdos acerca deste assunto.

Abraços.

Link para o comentário
Compartilhar em outros sites

Muito obrigado! Sou bastante grato a sua atenção e importância que dá a esse problema.Ficaria muito feliz se aceitasse a trabalhar comigo nesse projeto, se não for ofortúnio para você, claro.

Agora, que você falou, notei algo, que não tinha percebido antes: na verdade, trata-se de um super-algorítmo, do qual o funcionamento depende das respostas que um algorítmo é capaz de fornecer para o outro, de uma maneira ordenada para que não cause erro no sistema, uma vez que uma sequência não pode ter um rítmo mais rápido que sua antecessora, isto é, os algorímos devem funcionar nessa ordem (T,H,K), e de maneira sincronizada com a capacidade de disponibilidade de respostas dessas sequências entre si; logo devemos somar mais um quarto algorítmo geral para essa finalidade, chamado de algorítmo S, de sincronicidade.

Um possível caminho para desenvolvimento dos algorítimos inter-dependetes, ou do super-algorítimo:

1. O primeiro, algorímo "T"

Para conseguirmos montar a sequência "T", teríamos que ter já de antemão uma sequência de números primos, obtida mediante um algorítmo específico "P" (eis aí mais um algorítimo, quinto). Para assim conseguirmos, mediante o algorítmo "S", utilizar os elementos dessa sequência "P", no algorítmo "T".

2. Algorítmos H e K

O processo para o desenvolvimento dos algorítmos H e K é análogo ao que expomos acima.

3. Conclusão

Isso é complexo e trabalhoso, mas não é difícil; as expectativas, todavia, são boas; espero que encontre ferramentas, fontes, e pessoas para nos ajudar nesse problema.

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

Bem, não sei se tal solução seria realmente viável, afinal há uma certa dependência entre esses algoritmos que pode tornar o problema bem complexo se a questão não for analisada um pouco mais.

Existem algoritmos para encontrar números primos que são bem eficientes, como o crivo de erastótenes, que é relativamente fácil de implementar e oferece resultados satisfatórios, mas para números muito grandes ele pode não ser muito bom.

Pela descrição daquilo que você quer fazer, eu diria que você não está em busca de um algoritmo, mas sim de um estudo sobre os números primos. A consequência desse estudo é que será o algoritmo, então a princípio eu recomendo que você deixe de lado a questão da implementação e se foque em estudar os números primos e outros campos que são necessários ao entendimento desses números.

Ir direto para a implementação é arriscado pois não há como comprovar que os algoritmos relacionados conseguem de fato fornecer aquilo que se deseja de uma forma eficiente.

Então, se você precisa encontrar uma sequência de números primos a curto prazo eu recomendo que implemente o crivo de erastótenes(nisso eu poderia te ajudar desde já), mas se estiver interessado em desvendar o padrão relacionado aos primos(caso exista tal padrão), será necessário mais tempo e dedicação, então pode demorar para chegar ao resultado desejado.

Abraços.

Link para o comentário
Compartilhar em outros sites

  • Membro VIP
Muito obrigado, acho que seria um bom caminho usar o crivo de Erastotenes para tentar achar os números primos de 0 a 510510; depois de encontrados, há algum meio de saber quantos são? Ficaria muito satisfeito com essas duas respostas. Obrigado.

Bem, você pode incrementar um contador sempre que encontra um primo, ou ao fim do processo pode percorrer toda a tabela e ir contando. É mais interessante fazer o primeiro caso, pois assim você não tem que percorrer a tabela toda uma outra vez.

Abraços.

Link para o comentário
Compartilhar em outros sites

Goliathvv, muito obrigado pela prestatvidade, paciência e atenção; graças ao nosso diálogo tive algumas ideias interessantes, por isso agradeço a você; gostei muito da recomendação de usar o crivo de Erastoténes, acrescido de um marcardor. Obrigado. Se desejar pode fechar o tópico, estou satisfeito.

Link para o comentário
Compartilhar em outros sites

  • Membro VIP
Goliathvv, muito obrigado pela prestatvidade, paciência e atenção; graças ao nosso diálogo tive algumas ideias interessantes, por isso agradeço a você; gostei muito da recomendação de usar o crivo de Erastoténes, acrescido de um marcardor. Obrigado. Se desejar pode fechar o tópico, estou satisfeito.

Por nada amigo, sinta-se à vontade para levantar questionamentos ou sugerir mais discussões no fórum.

Abraços.

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...