![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
Holas Nelson...
Gracias... revisare los enlaces que enviaste, respondiendo a tus preguntas: 1] Estos son los ultimos de mi anterior busqueda: 959.999.998.039 959.999.998.147 959.999.998.163 959.999.998.201 959.999.998.247 959.999.998.253 959.999.998.267 959.999.998.273 959.999.998.277 959.999.998.283 959.999.998.417 959.999.998.423 959.999.998.427 959.999.998.429 959.999.998.553 959.999.998.619 959.999.998.651 959.999.998.679 959.999.998.681 959.999.998.687 959.999.998.739 959.999.998.751 959.999.998.759 959.999.998.799 959.999.998.819 959.999.998.861 959.999.998.933 959.999.998.963 959.999.998.973 959.999.998.981 959.999.999.053 959.999.999.071 959.999.999.081 959.999.999.089 959.999.999.093 959.999.999.099 959.999.999.107 959.999.999.129 959.999.999.141 959.999.999.197 959.999.999.227 959.999.999.237 959.999.999.243 959.999.999.251 959.999.999.293 959.999.999.323 959.999.999.341 959.999.999.353 959.999.999.359 959.999.999.369 959.999.999.381 959.999.999.393 959.999.999.419 959.999.999.423 959.999.999.471 959.999.999.513 959.999.999.537 959.999.999.597 959.999.999.653 959.999.999.701 959.999.999.711 959.999.999.753 959.999.999.789 959.999.999.797 959.999.999.837 959.999.999.879 959.999.999.957 959.999.999.971 959.999.999.983 959.999.999.999 Estos los encontre usando Factoris: 1.110.000.000.023 3.810.000.000.011 3.810.000.000.013 30.810.000.000.047 30.810.000.000.067 300.810.000.000.017 300.810.000.000.077 3.000.810.000.000.013 30.008.100.000.000.007 300.081.000.000.000.019 3.000.810.000.000.000.121 30.008.100.000.000.000.029 300.081.000.000.000.000.031 3.000.810.000.000.000.000.157 30.008.100.000.000.000.000.061 300.081.000.000.000.000.000.001 3.000.810.000.000.000.000.000.029 300.810.000.000.000.000.000.000.000.247 300.810.000.000.000.000.000.000.000.000.000.017 300.810.000.000.000.000.000.000.000.000.000.000.000.151 300844950000000000000000000000000000000000000101 300844950000000000000000000000000000000000000000000031 300844950000000000000000000000000000000000000000000000000079 300844950000000000000000000000000000000000000000000000000169 300844950000000000000000000000000000000000000000000000000000000000000000000000000000000041 Como mi metodo sabe cuales son los base primos, los fui probando en Factoris y me indico que eran posibles primos ya que no encontro otros multiplos o divisores. Hasta donde se el metodo de Muller-Rabin solo es probabilistico, el metodo de Lucas-Lehmer es para primos de mersene y no comprendo a cabalidad lo que es en si, el metodo AKS indica que es mejor pero la formula o logaritmo que usa no lo he captado y no vi una pagina que use esto para verificar primos. ○ Como ya te indique anteriormente, para verificar que eran correctos los numeros primos que fui obteniendo con PRI-BASE los fui obteniendo con el metodo clasico, buscar si es multiplo de algun primo anterior hasta su raiz cuadrada, luego encontre paginas de donde se descargaban archivos de texto con numeros primos, los exporte a Excel y los compare; por ultimo los verifique con Factoris y en todos coincidian, esa es la seguridad que me dio para seguir adelante. 2] Mi equipo es Pentium-III con Windows-7 de 32 bits. 3] Probe en Delphi 7 luego en Visual Basic 6.0, este ultimo me parece mas manejable y se mas funciones por lo que uso Visual Basic. Encontre este foro o club y vi la aplicacion que adjuntaron, me parecio rapida hasta 100 mil pero al ponerlo que busque 1 millon de primos se volvio lentisimo, como dije buscar en un rango de 1.000 millones se encuentran unos 36 millones de numeros primos, mi aplicacion lo hace en 21-22 minutos, generalmente lo mandaba a buscar rangos desde 10 mil a 50 mil millones; pero en ciertos casos como ahora los busco de mil millones para sacar datos que me permitan crear unmetodo mas directo que el que uso. ○ Ayer me vino una idea y pense haberlo encontrado; pero no fue asi, solo encontre otro metodo similar a PRI-BASE, me faltan datos y eso busco, esta busqueda que pasara de 1 Billon es importante pues sacare datos que necesito. He calculado que entre los 14 a 17 billones los nuevos primos se reduciran a unos cientos, donde luego sera importante determinar los primos gemelos que aparecen y con todo esto estoy pensando mejorar mi metodo, no creo en si obtener una formula que pueda generar primos de manera directa; pero quien sabe. 4] Mi equipo es de 512 de RAM y 40 GB de disco duro, llevo mas de 1.000 archivos de numeros primos, los que voy comprimiendolos en grupos y luego los quemo en DVD, como te dije no necesito tenerlos siempre todos, hasta estas busquedas solo uso el primero, donde apenas se han activado 78.000 de los 20 millones de primos que contiene, lo que me durara para buscar rangos hasta mas de 10 billones, luego pondre el segundo archivo solamente y quitar el primero y asi continuar las busquedas. 5] Para entrar a esa competencia, me faltan evaluar unos datos y hacer tal vez algunas correcciones luego de llegar al cuatrillon, el primer dato importante son los primos desde 1 billon hasta 1 billon mil millones, buscare con rangos cortos para obtener la informacion que necesito evaluar. Luego de esto no sera complicado llegar al cuatrillon pues como mencione el tiempo en si de buscar y sacar numeros primos en un rango de 1.000 millones es de 5-6 minutos, lo que tarda es al archivar los 36 millones de primos encontrados. Esta cantidad esta disminuyendo, ahora solo hay 35 millones, y segun veo habra un momento en que se producira un salto con una disminucion brusca de numeros primos, eso es importante para mi... Entonces del tiempo no me preocupo, se que se ira acelerando al haber pocos primos en adelante y cuando pase el cuatrillon, recien considerare estar en la competencia y determinar el tiempo en llegar a un numero primo con mas de 100 millones de digitos, claro si es que no antes logre encontrar el metodo mas directo que el que uso ahora como PRI-BASE, es eficiente y sencillo; pero creo que debe haber una logica directa de extraer los numeros primos. Amigo Nelson, si lo miras desde mi logica verias que hay muchos valores coincidentes y que se repiten en las secuencias de los numeros primos, como no soy matematico, solo los apunto y lo dejo. Un ejemplo es que con 1 numero primo origen haciendo 2 calculos se genera los numeros primos base como lo hace mi metodo; pero son 2 calculos y al pasar el millon de digitos no se lo podra hacer pues las variables no soportan esta cantidad, por lo que por ahora me quedo con mi metodo que no tiene problema con eso y puede buscar primos infinitos... al menos hasta 100 millones de digitos. 6] No se de programas para instalar y que comprueben la primalidad de los numeros que obtengo. Como te dije ayer encontre una logica con el que haciendo un calculo selectivo me decia si es primo o no; pero resulto que era lo mismo que el metodo PRI-BASE, solo que este no necesita de los primos origen, de manera directa indica que tal numero no es primo y si fuera solo te daria entre el 50-60% de seguridad que lo es osea como lo hace Factoris pero sin ver si es multiplo de algun primo, si lo agregaria esto tal vez; pero a mi me interesa tener la base secuencial de todos los primos para encontrar el metodo directo. Por ahora y hasta donde he comprobado todo es correcto, no se si habra un fallo despues; la logica del metodo es diferente a los que he visto y tener una referencia. Para simplificar la respuesta a tu pregunta te diria que si la Multiplicacion tiene un fallo en algun punto, si fuera asi creo que mi metodo lo tendria en algun momento dado. Bueno Amigo.. otra vez gracias por los enlaces, los ire revisando, la informacion que compartes me hacen ver otras posibilidades de enfocar el tema de los numero primos... Gracias... |
|
#2
|
|||
|
|||
|
Holas Nelson...
Estaba revisando los enlaces que enviaste y lei sobre Riemann, que segun explican en palabras sencillas dicen que las posibilidades de saber si es primo un numero grande grande, esta en relacion al numero de digitos, osea n=digitos igual a n posibilidades. Para saber si este numero es primo 300844950000000000000000000000000000000000000000000000000000000000000000000000000000000041 que tiene 90 digitos en Factoris solo intente 11 veces y dijo que es posible primo, en otros fue casi a la primera y algunos mas de 40 intentos con la secuencia de mi metodo. Creo haber entendido mal esto de Riemann y de ser asi, mil disculpas... espero me lo aclares si sabes de esto.... Gracias. |
|
#3
|
||||
|
||||
|
Hola.
Fuera de tópico, me pareció interesante leer un artículo sobre el mayor primo descubierto hasta la fecha. El logro es de un profesor de matemáticas (Curtis Cooper), es un primo de Mersenne (mersenne.org) y tiene nada menos que 17 millones de dígitos. El artículo: Un matemático descubre el número primo mas grande... Saludos ![]()
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
|
#4
|
||||||||||||||||
|
||||||||||||||||
|
Victor Luis,
Cita:
Cita:
Cita:
Cita:
Cita:
Cita:
Cita:
Cita:
Revisa este link : Cita:
Cita:
Revisa este link : Cita:
Cita:
Cita:
Cita:
Cita:
Cita:
1- ¿Cuantas líneas efectivas tiene tu código en VB6?. 2- ¿Cuantos pasos requiere tu método para hallar un número primo?. 3- ¿Puedes describir tu algoritmo en pseudocódigo para tener una mejor idea del mismo?. 4- ¿Por que no lo publicas a nivel académico para validar el mismo?, según comentas es muy efectivo y requiere pocos recursos computacionales. Espero sea útil ![]() Nelson. |
|
#5
|
||||
|
||||
|
No me creo nada
![]()
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#6
|
|||
|
|||
|
Holas Nelson...
Para comenzar las ultimas intervenciones en este tema del foro, dire que inicie dando una sugerencia sobre el metodo utilizado, ya que el TEMA es "PROBLEMA AL GENERAR NUMEROS PRIMOS". Si hay un problema, lo que corresponde es orientar y sugerir alternativas de solucion y no solo poner codigo como piden y si no creen nada, pues problema de cada uno, no busco eso, solo compartir ideas. De que sirve publicar el codigo con la secuencia directa para extraer los numeros base de la criba de Eratostenes, si hay muchos no primos a depurar, necesita de todos los primos que se encuentren y a lo largo la busqueda sera eterna? es lo mismo que el metodo clasico... en si no ayudamos al problema planteado. Como les indique, modifiquen al codigo que publico Nelson, Sumen +2 y luego +4 y asi hasta el rango que quieran y de los numeros extraidos depuren los no primos sacando sus divisores primos. Con esto aceleraran el proceso y sera optimo hasta 100.000.0000.0000 luego tendran que dejar procesando dias para llegar un poco mas. Respondiendo a tus preguntas Nelson: ◘ Se que debo actualizar mi equipo y lo hare; pero otro objetivo es demostrar que no se precisa de muchos ordenadores para buscar numeros primos, cuando busque numeros mas grandes sera notorio, ya que seguire usando un ordenador para esto. ○ Delphi 7 que instale esta en ingles y el hecho de poner punto y coma al final de cada linea y declarar correctamente las variables, que no digo que sea malo, son las razones por lo que lo pase a Visual Basic; tambien lo tengo en VBA Excel que busca en un tiempo similar al de VB. En si como no uso calculos complejos, no le veo la necesidad de programarlo en otro lenguaje, lo que por ahora me interesa es reducir el tiempo que tarda en archivar los numeros primos encontrados, si los archivo de poco a poco, tarda mas, por eso los archivo de rangos de mil millones; creo que es asi no mas por la cantidad de primos a archivar o tu que opinas al respecto...? ○ De pedir colaboracion a escuela de matematicas o en la universidad, lo haria despues de obtener y analizar los datos que necesito. Ahora ya llegue al Billon y estos sacando estos datos con busquedas de rangos menores, lo mismo hare alllegar al cuatrillon, luego de eso estara definido mi metodo. Como lo esperaba ha habido un significativo descenso de la cantidad de primos encontrados y el tiempo se ha reducido, lo que me indica que voy por buen camino. ◘ Sobre el Codigo de mi Metodo, no esta depurado para indicarte el numero de lineas y sobre los pasos son: 1º] Carga en variables el rango a buscar, en numero de ciclos a repetir los rangos y el limite para archivar los primos encontrados. Explicando un poco esto, uso un Rango de 50.000.000 osea buscara desde donde se quedo la ultima vez hasta sumado este rango; como es poco indico que repita varios ciclos, por ejemplo 20 ciclos de este rango para buscar en 1.000.000.000 como un rango global. Al mismo tiempo indico luego de cuantos ciclos debera archivar todos los primos encontrados que se van guardando en un vector, con lo que creara un archivo de numeros primos. 2º] Inicia el Proceso de Busqueda por Ciclos-Rangos. ○ Carga en un vector los numeros base a los que digo casi primos, como te indique para un rango de 50 millones sacara unos 13.333.336 numeros base, el resto son no primos. 3º] Activa Primos (asi lo digo) ve desde el ultimo primo activado y revisa cuales mas activar. Con esto me refiero a que toma el numero primo que seguiria del archivo y si se va a activar, saca del numero primo una secuencia de no mas de 10 valores con los que depurara los no primos del vector con numeros base. Si no le corresponde activar, salta al siguiente paso; como ves no preciso tener todos los primos, solo los necesarios que son cada vez pocos. 4º] Depuracion de no primos, con las secuencia depura los no primos y pone en otro vector los que son numeros primos; como te dije los almaceno para archivarlos despues, ya que esto me reduce el tiempo de archivado. Hice la prueba archivando directo los que encuentra y archivando mas cantidad, lo ideal me parecio hacerlo luego de 20 ciclos de 50 millones de rango, osea una busqueda de 1.000 millones, donde con el archivado tarda 21-22 minutos. 5º] Guarda controles de la busqueda del rango, para saber desde donde continuar la siguiente busqueda del rango. Aparte guarda una copia de la ultima busqueda por si en medio proceso hay corte de energia, de modo que restablezca los ultimos valores y reinicie la busqueda desde ahi. Eso me paso cuando por error elimine varios archivos de primos y tambien de la papelera, donde solo guarde una copia de los archivos control y tube que volver a buscar primos desde ese limite, ahora no tengo ese problema. Tambien controla un limite definido, de modo que almacena en fracciones multiplos los nuevos primos a encontrar que tengan mas de 18-24 digitos, de modo que siga la busqueda y no tenga problemas en buscar primos de millones de digitos, todavia no he llegado ahi; pero el control y la estructura esta definida. 6º] Termina la Busqueda e informa el Tiempo del proceso y luego Actualiza los Controles de Archivos Primos y de Secuencias, para informar cual es el Ultimo primo encontrados, el Total de primos encontrados hasta esa busqueda, cuantos primos se activaron y cual el ultimo primo activado. Son datos para mi analisis posterior, los que voy anotando en cada busqueda. Bueno eson son los pasos del programa, en si son el 2º,3º y 4º. ◘ Me pides que describa el algoritmo, lo que no comprendo a que te refieres, no tengo una formula, solo un metodo donde realizo operaciones aritmeticas, tanto para activar y depurar. Te dire que hay numeros definidos y cantidades que se repiten, que aplicados a los numeros primos origen, hacen posible sacar estos numeros base y depurar los no primos. ○ Como te dije, encontre el modo de obtener estos numeros base donde hay primos; pero no podia depurar los no primos, por lo que lo deje; pero como eran pocos para evaluar volvi a revisar mis anotaciones, hice calculos y encontre secuencias definidas de cada numero primo, hacia calculos con potencias a un principio y luego encontre otro modo simple y directo de obtener estas secuencias. Estaba a punto de ir a descansar, probe una forma mas y ahi estaban los datos, se fue el sueño, lo aplique para depurar los no primos y exporte los primos a una hoja de Excel, los compare y todos coincidian. Luego busque hasta 100 millones archivandolos y los compare con los que tenia en Excel sacados con el metodo clasico y todos coincidian; lo ultimo hice un procedimiento que revise si alguno es multiplo con primos verificados inicialmente, tardo un tiempo; pero no encontro divisores primos hasta su raiz cuadrada. Al decir primos verificados inicialmente me refiero a que si se que el 2,3,5,7 son primos, comprobando con estos obtendre los siguientes y estos seran primos verificados, eso me dio la seguridad para continuar haciendo mejoras en mi codigo. ◘ Por ultimo, a tu pregunta de publicar a nivel academico, reitero que me faltan 2 controles, en este limite del billon que estoy ahora en eso y en el limite del cuatrillon, pasado esto estara mi codigo definido, para solo buscar y realizar una mejora a mi metodo con los datos que salgan de los analisis que haga. Ya te los hare saber amigo, pues agradesco la informacion que adjuntas... ☼ Respecto a lo que dije, que un niño de primaria podria hacerlo sin calculadora, fue sin mala intension... hablando con mi madre que no hizo secundaria, le explicaba como obtenia los numeros base, lo entendio facilmente y sin papel ni calculadora me fue diciendo los posibles primos desde la cantidad que le indicaba. De todos modos, mis disculpas si hay quienes lo toman a mal... |
|
#7
|
|||
|
|||
|
Holas Amigo Nelson...
Pues el 1º Dato que debia controlar al pasar del billon esta bien, busque en un rango de mil millones osea hasta 1.001.000.000.000 y todos los encontrados son primos, aqui dejo los ultimos 100 antes de este limite: 1.000.999.997.341 1.000.999.997.357 1.000.999.997.369 1.000.999.997.449 1.000.999.997.471 1.000.999.997.479 1.000.999.997.507 1.000.999.997.521 1.000.999.997.533 1.000.999.997.537 1.000.999.997.579 1.000.999.997.597 1.000.999.997.629 1.000.999.997.633 1.000.999.997.689 1.000.999.997.693 1.000.999.997.737 1.000.999.997.743 1.000.999.997.749 1.000.999.997.761 1.000.999.997.797 1.000.999.997.807 1.000.999.997.929 1.000.999.997.941 1.000.999.997.951 1.000.999.997.981 1.000.999.998.023 1.000.999.998.043 1.000.999.998.169 1.000.999.998.191 1.000.999.998.203 1.000.999.998.287 1.000.999.998.319 1.000.999.998.391 1.000.999.998.409 1.000.999.998.413 1.000.999.998.463 1.000.999.998.473 1.000.999.998.499 1.000.999.998.517 1.000.999.998.521 1.000.999.998.527 1.000.999.998.529 1.000.999.998.539 1.000.999.998.613 1.000.999.998.619 1.000.999.998.641 1.000.999.998.643 1.000.999.998.697 1.000.999.998.731 1.000.999.998.751 1.000.999.998.787 1.000.999.998.827 1.000.999.998.829 1.000.999.998.839 1.000.999.998.857 1.000.999.998.941 1.000.999.998.983 1.000.999.998.991 1.000.999.998.997 1.000.999.999.009 1.000.999.999.033 1.000.999.999.067 1.000.999.999.123 1.000.999.999.133 1.000.999.999.163 1.000.999.999.189 1.000.999.999.201 1.000.999.999.217 1.000.999.999.271 1.000.999.999.303 1.000.999.999.343 1.000.999.999.357 1.000.999.999.361 1.000.999.999.421 1.000.999.999.427 1.000.999.999.471 1.000.999.999.501 1.000.999.999.513 1.000.999.999.541 1.000.999.999.547 1.000.999.999.579 1.000.999.999.613 1.000.999.999.619 1.000.999.999.621 1.000.999.999.627 1.000.999.999.631 1.000.999.999.679 1.000.999.999.693 1.000.999.999.711 1.000.999.999.729 1.000.999.999.799 1.000.999.999.871 1.000.999.999.873 1.000.999.999.877 1.000.999.999.889 1.000.999.999.897 1.000.999.999.913 1.000.999.999.943 1.001.000.000.017 |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| 11 millones de números primos | ixMike | La Taberna | 15 | 06-10-2013 00:00:37 |
| Suma de dígitos primos - Simplificar código | Subliminalz | Varios | 3 | 12-06-2013 00:00:22 |
| Ayuda con numeros primos | Jcn | Varios | 4 | 28-05-2013 01:39:20 |
| Como obtengo numeros primos ? | llSnakell | Varios | 13 | 05-10-2011 03:56:09 |
| Promedio.. digitos primos .. | luisito2011 | Varios | 3 | 07-05-2011 02:54:02 |
|