La Comunidad DragonJAR  

Retroceder   La Comunidad DragonJAR > Seguridad > Retos

¿Qué es La Comunidad DragonJAR?

DragonJAR.org es una comunidad de investigadores, estudiantes, profesionales y entusiastas de la Seguridad Informática, En la cual se busca darle un enfoque eminentemente práctico a la teoría sin olvidar las bases esenciales de esta.

De esta manera se Tratará de ofrecer soluciones útiles a los usuarios, tanto novatos, estudiantes, como a los profesionales e investigadores, Teniendo presente que el mundo de la seguridad informática y la información es un medio que se auto inventa constantemente.

La Comunidad DragonJAR es un espacio abierto y libre para cualquier persona que desee compatir en un ambiente digital sus conocimientos o sus dudas. El registro es gratuito, toma poco tiempo y te permite disfrutar de todas las características del sitio.

Si es tu primera visita, quizás deberías visitar la Ayuda para aprender un poco sobre el uso de los foros, para empezar a ver mensajes, selecciona el foro que quieres visitar de la lista de abajo.

Respuesta
 
LinkBack Herramientas Desplegado
Antiguo 10-Apr-2009, 17:39   #21
Recien Nacido
 
Fecha de Ingreso: 10-April-2009
Mensajes: 3
Gracias: 1
Agradecido 0 veces en 0 Mensajes
xaidapm está en el buen camino
Predeterminado

Que pena responder tan tarde.... posiblemente la competencia ya a acabado, y posiblemente este programa no compita con los presentados hasta el momento, pero aca envio un programa de mi autoria que solo los genera hasta el 1024, pero en lenguaje asembler.. para mic 80c51....

PRACTICA: DETECTOR DE NUMEROS PRIMOS DEL 0 AL 1024
DESARROLLADOR: ANDRES ALBERTO DIAZ
;------------------------------------------------------------------------------
ORG 00H ;INICIO DEL PROGRAMA PARA CRIMSON
;------------------------------------------------------------------------------
MOV R2,#03H ;NUMEROS DEL 3 AL 1024 NUMERADOR
MOV R3,#02H ;CONTADOR DE 2 A N-1 DENOMINADOR
MOV R0,#02H ;DIRECCIONADOR QUE CONTROLARA EL NUMERO QUE SE REVISA NUMERADOR
MOV R1,#03H ;DIRECCIONADOR QUE CONTROLARA EL NUMERO DE DIVISIONES QUE HAY QUE HACER PARA DETECTAR SI EL NUMERO ES PAR O IMPAR DENOMINADOR
;------------------------------------------------------------------------------
;************************************************* *EXCLUSIVO DE CRIMSON*********
MOV 40H,#02H ;MOSTRARA EN LA POCISION 40H EL NUMERO EN CASO TAL DE SER PRIMO//EN MICROLAB SE REEMPLAZA POR SHOW IN DISPLAY
;************************************************* *EXCLUSIVO DE CRIMSON*********
;------------------------------------------------------------------------------
AA: MOV 05H,@R0 ;SE CARGA EL R5 CON LO QUE HAYA EN DIRECCION DE R0/ OSEA QUE TENEMOS EN R5 EL NUMERO QUE SE VA A REVISAR/ ESTE IRA AUMENTADO HASTA 1024 DENOMINADOR
MOV 06H,@R1 ;SE CARGA EL R6 CON LO QUE HAYA EN DIRECCION DE R1/ OSEA QUE TENEMOS EN R6 EL NUMERO DE VECES QUE HAY QUE DIVIDIR EL NUMERO PARA SABER SI ES PRIMO O NO NUMERADOR
MOV A,R5 ;SE CARGA EL ACUMULADOR CON EL NUMERO A EVALUAR NUMERADOR
MOV B,R6 ;SE CARGA B CON EL NUMERO QUE SE VA A DIVIDIR DENOMINADOR
CLC C ;SE REINICIA EL CARRY
DIV AB ;SE DIVIDE EL NUMERO A ESTUDIAR POR EL NUMERO CONTADOR/ SI HAY CARRY LA DIV NO FUE ENTERA/ ENTIENDASE VICEVERSA TAMBIEN
MOV A,B
JNZ AAB ;SI HAY CARRY SALTE A "AB" PARA QUE HAGAN CONTEO DE LOS CARRYS QUE SE PRESENTEN EN EL CICLO
AAC: MOV A,06H ;SE CARGA EL ACUMULADOR CON EL DENOMINADOR ACTUAL
MOV 20H,A ;SE CARGA EN R8 EL VALOR DE A// OSEA EL DENOMINADOR ACTUAL
INC 20H ;INC R8 CON EL FIN DE COMPARAR SI NUMERADOR YA ES IGUAL A DENOMINADOR//CON EL FIN DE QUE EL DENOMINADOR SOLO VALLA DE 2 A N-1
MOV A,R5 ;SE CARGA CON EL VALOR DE R5/ Q SE SUPONE TIENE EL NUMERO POR EL CUAL SE ESTA DIVIDIENDO/ ESTO ES CON EL FIN DE SABER SI YA ES IGUAL NUM/DEN
INC R3 ;SE INCREMENTA EN UNO/ PARA PASAR AL SIGUIENTE DENOMINADOR
CJNE A,20H,AA ;SI SON IGUALES QUIERE DECIR QUE YA SE HICIERON TODAS LAS DIVISIONES CORRESPONDIENTES PARA EL NUMERO QU SE EVALUA/ OSEA QUE YA SE SABE SI ES PRIMO O NO
LJMP BA
AAB: INC R4 ;R4 CONTARA EL NUMERO DE CARRYS
LJMP AAC ;SALTA A AC QUE HACE EL CONTEO DE LOS DENOMINADORES Y LO HACE CICLICO HASTA QUE SE HAGAN TODAS LAS DIVISIONES DE 2 A N-1 POR CADA DENOMINADOR
;-------------------------------------------------------------------------------
BA: MOV A,R5 ;SE CARGA ACUMM CON EL VALOR DEL NUMERADOR QUE SE ACABO DE EVALUAR
DEC A
DEC A ;SE DECREMENTA EL NUM 2 VECES PARA COMPARAR SI LUEGO ES IGUAL AL NUMERO DE CARRYS
CJNE A,04H,BB ;COMPARA SI EL NUMERO DE CARRYS ES IGUAL A NUMERADOR-2//SI ES IGUAL ENTONCES EL NUMERO ES PRIMO Y CONTINUE/SI NO ES IGUAL NO ES PRIMO SALTE A BB
;************************************************* *EXCLUSIVO DE CRIMSON*********
MOV 40H,R5 ;MOSTRARA EN LA POCISION 40H EL NUMERO EN CASO TAL DE SER PRIMO//EN MICROLAB SE REEMPLAZA POR SHOW IN DISPLAY
;************************************************* *EXCLUSIVO DE CRIMSON*********
BB: MOV R4,#00H ;SE RESETEA EL CONTADOR DE CARRYs
MOV A,R5 ;GUARDAMOS EN EL ACUMULADOR EL NUMERADOR ACTUAL
INC R2 ;SE AUMENTA R2 PARA QUE PASE AL NUMERADOR SIGUIENTE
MOV R3,#02H ;SE INICIALIZA NUEVAMENTE R3 PARA QUE VUELVA A EMPEZAR DESDE 2 Y PUEDA VOLVER A AUMENTAR HASTA N-1
CJNE A,#0FFH,AA ;VUELVE Y EMPIEZA EL PROGRAMA CON EL SIGUIENTE NUMERADOR
END
;-------------------------------------------------------------------------------
xaidapm está desconectado   Responder Citando
Antiguo 21-Apr-2009, 11:34   #22
Recien Nacido
 
Fecha de Ingreso: 28-October-2008
Mensajes: 1
Gracias: 0
Agradecido 0 veces en 0 Mensajes
LordOmar está en el buen camino
Predeterminado Hola a todos esta es mi solucion:

#include <clx.h>
#pragma hdrstop
#pragma argsused
#include<iostream.h>
int main(int argc, char* argv[])
{
int num = 1;
int n = 1;
int cont = 3;
cout<<2<<endl<<3<<endl;
while(num <= 20000)
{
num = 4*n-1;
cout<<num<<" ,";
num = 4*n+1;
cout<<num<<" ,";
n++;
}
return 0;
}
LordOmar está desconectado   Responder Citando
Antiguo 19-May-2009, 20:59   #23
Dragonauta con Privilegios
 
Avatar de Dédalo
 
Fecha de Ingreso: 22-March-2009
Ubicación: Lima - Perú
Mensajes: 289
Gracias: 18
Agradecido 70 veces en 51 Mensajes
Dédalo llegará a ser famoso muy pronto
Predeterminado

en qbasic xD =)

Código PHP:
DIM abAS INTEGER
CLS
INPUT a
FOR 1 TO a
 
IF a MOD b 0 THEN
  c 
1
 END 
IF
NEXT b
IF a THEN
 
IF 2 THEN
  
PRINT "si es primo"
 
ELSE
  PRINT 
"no es"
 
END IF
END IF 
ahi pa los que estan aprendiendo programacion =) uno de los lenguajes mas faciles =)


saludos
Dedalo(Dédalo)
__________________



Siganme en twitter

http://twitter.com/seguridadblanca
Dédalo está desconectado   Responder Citando
Respuesta

Etiquetas
numeros, primos

Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder mensajes
No puedes subir archivos adjuntos
No puedes editar tus mensajes

Los Códigos BB están Activado
Las Caritas están Activado
[IMG] está Activado
El Código HTML está Desactivado
Trackbacks are Activado
Pingbacks are Activado
Refbacks are Activado


Temas Similares
Tema Autor Foro Respuestas Último mensaje
Varias cositas que no sobran sobre primos phicar Criptografía 5 22-May-2009 01:49
@rroba 6 Numeros¡ blue_reckiem Biblioteca: Revistas Electrónicas 5 14-Jan-2009 07:54


La franja horaria es GMT -6. Ahora son las 22:44.