elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


  Mostrar Temas
Páginas: 1 2 3 4 [5]
41  Programación / Programación C/C++ / [Aporte]Convertidor de números decimales a romanos en: 24 Mayo 2015, 19:00 pm
el código es un simple algoritmo recursivo, el limite es de 3999 pero se puede extender haciendo unas modificaciones en el código, esto es así porque con las letras IVXLCDM solo se puede hasta ese valor

Código
  1. #include <stdio.h>
  2.  
  3. char* s = "IVXLCDM";
  4. int n[] = {1,5,10,50,100,500,1000};
  5.  
  6. int aC; //aC es el número a convertir
  7. #define NUM_LIMITE 4000 //aC tiene que ser menor a esta constante
  8.  
  9. void rec(int r){ //algoritmo recursivo, el valor de r lo explico con ejemplos:
  10.                 //si aC = 43 entonces r = 10, si aC = 232 entonces r = 100
  11.                 //si aC = 2132 entonces r = 1000, si aC = 4 entonces r = 1
  12.  
  13.    int b = aC/r; //Toma el digito más significativo de aC, ejemplo: si aC = 234 entonces b = 2
  14.    aC -= b*r;    //trunca aC restando el digito más significativo, si aC = 234 entonces aC = 34
  15.    int p = 0;  
  16.  
  17.    for(int i=0; i < 7;i++)
  18.    if(r==n[i]) p = i;   /*
  19.            p sirve para saber la posición del caracter más indicado para imprimir ejemplos:
  20. cuando r = 1 entonces p = 0 y s[p] = 'I'
  21.                        cuando r = 10 entonces p = 2 y s[p] = 'X'
  22. cuando r = 100 entonces p = 4 y s[p] = 'C'
  23. cuando r = 1000 entonces p = 6 y s[p] = 'M'
  24. */          
  25.  
  26.    //lo siguiente lo comento para r = 1 pero lo mismo pasa con diferentes valores de r
  27.  
  28.    if(b < 4){ //para I II II
  29.        for(int i=0; i < b;i++)
  30.           printf("%c",s[p]);   //s[p] = 'I' lo imprime b veces
  31.    }
  32.  
  33.    else if(b < 6){ //para IV and V
  34.   printf("%c%c",(b==4)?s[p]:' ',s[p+1]); // s[p] = 'I' y s[p+1] = 'V'
  35.    }
  36.  
  37.    else if(b < 9){ //para VI VII VIII
  38.  
  39.   printf("%c",s[p+1]); //s[p+1] = 'V'
  40.  
  41.   for(int i = b-5; i > 0;i--)
  42.       printf("%c",s[p]);      //s[p] = 'I' lo imprime b-5 veces
  43.    }
  44.  
  45.    else{ //para IX
  46. printf("%c%c",s[p],s[p+2]); //s[p] = 'I' y s[p+2] = 'X'
  47.    }
  48.  
  49.    printf(" ");  //esta linea es solo para que el resultado sea más legible :)  
  50.  
  51.    if(r!=1) rec(r/10); //cuando r = 1 entonces se ha evaluado el digito menos significativo de aC
  52.  
  53. }
  54.  
  55. int main(){
  56.  
  57.  printf("Ingresa el numero a convertir: ");
  58.  scanf("%i",&aC);
  59.  
  60.  if( aC < NUM_LIMITE )
  61.      for(int r = 10; ;r*=10)
  62.          if(aC < r){
  63.          rec(r/10);
  64.          break;
  65.      }
  66.  
  67.  getchar();
  68.  return 0;
  69. }
  70.  


ITI
42  Programación / ASM / Problemas al instalar masm32 en: 23 Mayo 2015, 21:57 pm
Me salen dos errores cuando trato de instalar masm32 en mi computadora windows 8 de 64 bits

los errores son los siguientes:
inc2l.exe: No se encuentra el ordinal 202 en la biblioteca de vínculos dinámicos C:\WINDOWS\AppPatch\AcLayers.dll

inc2l.exe: No se encuentra el ordinal 200 en la biblioteca de vínculos dinámicos C:\WINDOWS\AppPatch\AcGenral.dll

Se instala y todo pero no sé si eso traerá problemas cuando ya esté programando  :-[


También cuando trato de ensamblar el siguiente código:

Código
  1. .model small
  2. .486
  3. .stack 64
  4. .data
  5. CR equ 13
  6. LF equ 10
  7. cadena db 'Hola Mundo 32 bits!$',CR,LF
  8. .code
  9. inicio:
  10. mov eax,@data
  11. mov ds,eax
  12.  
  13. mov eax,0900h
  14. lea edx,cadena
  15. int 21h
  16.  
  17. mov eax,4c00h
  18. int 21h
  19.  
  20. end inicio
  21.  

me sale el siguiente error:
/z2
"as.obj"
"as.exe"
NUL
LINK : warning LNK4044: unrecognized option "z2" ignored
LINK : error : segment referene in fixup record
as.obj : fatal error LNK1123: failure during conversion to COFF: file invalid or corrupt

ya traté de ensamblar otros código y el error es el mismo ahora quisiera saber si esos errores al ensamblar son por culpa del error al momento de instalar el masm  :-\
43  Programación / Programación C/C++ / duda sobre funciones en: 18 Abril 2015, 04:49 am
Hola, tengo una función en un fichero diferente al main.cpp, y quiero que esa función pueda ser llamada desde el fichero main, cómo le hago? :-\

Me pueden dar unos ejemplos? , gracias de antemano.
44  Foros Generales / Foro Libre / IQ Test en: 7 Abril 2015, 22:16 pm
cuánto les lanza éste Test?

a mi 103...

link:http://www.quickiqtest.net/spanish/
45  Programación / Java / [Java]Como saber el día de la semana en: 1 Junio 2013, 23:48 pm
Sencillo programa para saber el día de la semana de una fecha...
el único inconveniente es que hay que saber si el año es bisiesto


Código:
import java.util.Scanner;

public class Estudiando{
   
public static String Busca_Dia(int dia){
String El_Dia=null;
   
  switch(dia){
      case 0: El_Dia="Domingo"; break;
      case 1: El_Dia="Lunes"; break;
      case 2: El_Dia="Martes"; break;
      case 3: El_Dia="Miercoles"; break;
      case 4: El_Dia="Jueves"; break;
      case 5: El_Dia="Viernes"; break;
      case 6: El_Dia="Sabado"; break;   
  }

return El_Dia;
}

    public static void imprime(String palabra){
    System.out.println(palabra);
    }
       
public static void main(String[]args){
Scanner leer = new Scanner(System.in);

int año,dia,mes;
int comprobar_año;

imprime("Ingresa año");
 año = leer.nextInt();

do{
imprime("ingresa mes: del 1 al 12");
 mes = leer.nextInt();
}while(mes>12 || mes==0);

do{
imprime("ingresa dia");
 dia = leer.nextInt();
}while(dia>31 || dia==0);

do{
imprime("El año es bisiesto? Si->1,  No->2");
 comprobar_año = leer.nextInt();
}while(comprobar_año>2 || comprobar_año==0);

int Modulo_mes = modulo_mes(mes,comprobar_año);

//Formula para saber el dia
int A = (año-1) % 7;
int D = dia % 7;
int DM = (((año-1)/4) - (3*((año-1)/100+1)/4)) % 7;
int resultado = (A + D + Modulo_mes + DM) % 7;

    String busca_dia = Busca_Dia(resultado);
    System.out.println("El dia Es: " + busca_dia);
    imprime("Comunidad Underground Hispana El-Hacker.com");

}


public static int modulo_mes(int mes,int bisiesto){
int modulo=0;

switch(mes){
    case 1: modulo = 0; break;
    case 2: modulo = 3; break;
    case 3: if(bisiesto==1)
               modulo = 4;
            else
              modulo = 3; break;
    case 4: if(bisiesto==1)
               modulo = 0;
            else
              modulo = 6; break;
    case 5: if(bisiesto==1)
               modulo = 2;
            else
              modulo = 1; break;
    case 6: if(bisiesto==1)
               modulo = 5;
            else
              modulo = 4; break;
    case 7: if(bisiesto==1)
               modulo = 0;
            else
              modulo = 6; break;
    case 8: if(bisiesto==1)
               modulo = 3;
            else
              modulo = 2; break;
    case 9: if(bisiesto==1)
               modulo = 6;
            else
              modulo = 5; break;
    case 10: if(bisiesto==1)
               modulo = 0;
            else
              modulo = 1; break;
    case 11: if(bisiesto==1)
               modulo = 4;
            else
              modulo = 3; break;
    case 12: if(bisiesto==1)
               modulo = 6;
            else
              modulo = 5; break;       
}

return modulo;
}

}
46  Programación / Java / [Java]Port Scanner 0.1 en: 12 Mayo 2013, 21:10 pm
Sencillo programa para escanear puertos......

Tarda entre 3 a 4 minutos en buscar entre los 65535 puertos.....
puedo ser mas rápido,pero no quiero romper la pc de nadie xD

un ejemplo:
Esto fue en un cyber:

Código:
Puerto 65502 Abierto
Puerto 12110 Abierto
Puerto 12119 Abierto
Puerto 12025 Abierto
Puerto 135 Abierto
Puerto 7438 Abierto
Puerto 5939 Abierto
Puerto 12143 Abierto
Puerto 1341 Abierto
Puerto 445 Abierto
Puerto 1052 Abierto
Puerto 5152 Abierto
Puerto 12563 Abierto
Puerto 12465 Abierto
Puerto 12080 Abierto
Puerto 27275 Abierto
Puerto 5679 Abierto
Puerto 80 Abierto
Puerto 990 Abierto
Puerto 12993 Abierto
Puerto 12995 Abierto
GENERACIÓN CORRECTA (total time: 3 minutes 26 seconds)


El Código del Scanner:
Código
  1. import java.net.Socket;
  2. import java.util.concurrent.ExecutorService;
  3. import java.util.concurrent.Executors;
  4.  
  5. public class Estudiando {
  6.  
  7.    public static void main(String[]args){
  8.      ExecutorService executor = Executors.newCachedThreadPool();
  9.  
  10.      int ini=1,fin=100;
  11.      while(fin<=65500){
  12.      executor.execute(new Run(ini,fin));
  13.      fin+=100;
  14.      ini+=100;
  15.      }
  16.      executor.execute(new Run(65501,65535));
  17.  
  18.        }
  19.  
  20.    }
  21.  
  22. class Run implements Runnable{
  23.    int puerto = 0;
  24.    int fin;
  25.    public Run(int port,int fin){
  26.    puerto = port;
  27.    this.fin=fin;
  28.    }
  29.  
  30.    public void run(){
  31.    Scanner Scanner = new Scanner(puerto,fin);
  32.    }
  33. }
  34.  
  35.  
  36. class Scanner {
  37.  
  38. public Scanner(int puerto,int fin){
  39.  
  40. Socket dame;
  41. String ip="localhost";
  42.  
  43.        for(int port =puerto;port<=fin;port++){
  44.         try{
  45.         dame = new Socket(ip,port);
  46.  
  47.         System.out.println("Puerto "+port+" Abierto");
  48.         dame.close();
  49.  
  50.         }
  51.         catch(Exception ex){}
  52.  
  53.      }
  54.   }
  55. }
  56.  


Ferreter
47  Programación / Java / IA De Un ajedrez?? en: 2 Abril 2013, 02:04 am
Como puedo hacerlo??

la pregunta es esa, Quería saber si es posible hacer un juego de ajedrez con IA y que tan difícil podría hacer...

Cuales metodos tendria que crear...como cuantas lineas de código tendría que hacer?? etc

se un poco de programación... llevo casi 4 meses programando
48  Programación / Java / Megaman Zero en: 1 Abril 2013, 01:25 am

Este juego es muy sencillo lo hice un domingo que estaba aburrido xDD
ya iré haciendo mas aportaciones conforme m valla acostumbrándome al foro xDD

Se mueve con A hacia la izquierda
Se mueve con D hacia la derecha
Con SPACE puede disparar su primer poder con daño x1
con T dispara su segundo poder con daño x2

El Juego trata de matar al tigre cuantas veces aparezca y llegar ala meta antes de que el tiempo termine











La Carpeta megaman
rapishare
http://rapidshare.com/files/60609308/megaman.rar

MediaFire
http://www.mediafire.com/?2guq7u5g7x6d9pu
La carpeta megaman va en disco local C:


cámbienlo si quieren



Código:
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;
import javax.swing.*;




public class zero extends JFrame{



public static int x=150;
public static int y=350;
public static float x_nave=10;
public static float y_nave=100;
public static float x_move_nave=2.50f;
public static float salida=200;
public static float bajada_disparos_nave=100;


public static int mapax,mapay,mapax2;
public static int daño=0;
public static int tiempo=10000;
public static int vida=100;
public static String stiempo;
public static String svida;


public static int objetivo_a_matar=450;
public static Image nave;
public static boolean disparar,golpear,cortar,derecha,izquierda,correr;
Rectangle2D megaman,fuego,fuego2,pared1,nave_enemiga,disparos_nave,disparos_nave2,disparos_nave3,disparos_nave4,disparos_nave5,disparos_nave6,disparos_nave7,disparos_nave8,disparos_nave9,disparos_nave10,disparos_nave11,disparos_nave12;
Rectangle2D disparos_nave13,disparos_nave14,disparos_nave15,disparos_nave16,disparos_nave17,disparos_nave18,disparos_nave19,disparos_nave20,disparos_nave21,disparos_nave22,disparos_nave23,disparos_nave24;
public void pintarEnOffscreen(Graphics2D g2){

g2.setColor(Color.white);
g2.setBackground(Color.white);


megaman = new Rectangle2D.Double(x+40,y+20, 10, 35);


bajada_disparos_nave+=1;

if(bajada_disparos_nave>=400){bajada_disparos_nave=100;}




disparos_nave = new Rectangle2D.Double(mapax2+100,bajada_disparos_nave, 10, 40);
disparos_nave2 = new Rectangle2D.Double(mapax2+300,bajada_disparos_nave, 10, 40);
disparos_nave3 = new Rectangle2D.Double(mapax2+500,bajada_disparos_nave, 10, 40);
disparos_nave4 = new Rectangle2D.Double(mapax2+600,bajada_disparos_nave, 10, 40);
disparos_nave5 = new Rectangle2D.Double(mapax2+700,bajada_disparos_nave, 10, 40);
disparos_nave6 = new Rectangle2D.Double(mapax2+900,bajada_disparos_nave, 10, 40);
disparos_nave7 = new Rectangle2D.Double(mapax2+1200,bajada_disparos_nave, 10, 40);
disparos_nave8 = new Rectangle2D.Double(mapax2+1300,bajada_disparos_nave, 10, 40);
disparos_nave9= new Rectangle2D.Double(mapax2+1500,bajada_disparos_nave, 10, 40);
disparos_nave10 = new Rectangle2D.Double(mapax2+1600,bajada_disparos_nave, 10, 40);
disparos_nave11 = new Rectangle2D.Double(mapax2+1800,bajada_disparos_nave, 10, 40);
disparos_nave12 = new Rectangle2D.Double(mapax2+2200,bajada_disparos_nave, 10, 40);



disparos_nave13 = new Rectangle2D.Double(mapax2+2300,bajada_disparos_nave, 10, 40);
disparos_nave14 = new Rectangle2D.Double(mapax2+2400,bajada_disparos_nave, 10, 40);
disparos_nave15 = new Rectangle2D.Double(mapax2+2600,bajada_disparos_nave, 10, 40);
disparos_nave16 = new Rectangle2D.Double(mapax2+2900,bajada_disparos_nave, 10, 40);
disparos_nave17 = new Rectangle2D.Double(mapax2+3100,bajada_disparos_nave, 10, 40);
disparos_nave18 = new Rectangle2D.Double(mapax2+3200,bajada_disparos_nave, 10, 40);
disparos_nave19 = new Rectangle2D.Double(mapax2+3500,bajada_disparos_nave, 10, 40);
disparos_nave20 = new Rectangle2D.Double(mapax2+3600,bajada_disparos_nave, 10, 40);
disparos_nave21= new Rectangle2D.Double(mapax2+3750,bajada_disparos_nave, 10, 40);
disparos_nave22 = new Rectangle2D.Double(mapax2+3820,bajada_disparos_nave, 10, 40);
disparos_nave23 = new Rectangle2D.Double(mapax2+3850,bajada_disparos_nave, 10, 40);
disparos_nave24 = new Rectangle2D.Double(mapax2+3900,bajada_disparos_nave, 10, 40);

g2.setColor(Color.red);

g2.fill(disparos_nave);
g2.fill(disparos_nave2);
g2.fill(disparos_nave3);
g2.fill(disparos_nave4);
g2.fill(disparos_nave5);
g2.fill(disparos_nave6);
g2.fill(disparos_nave7);
g2.fill(disparos_nave8);
g2.fill(disparos_nave9);
g2.fill(disparos_nave10);
g2.fill(disparos_nave11);
g2.fill(disparos_nave12);
         
         
g2.fill(disparos_nave13);
g2.fill(disparos_nave14);
g2.fill(disparos_nave15);
g2.fill(disparos_nave16);
g2.fill(disparos_nave17);
g2.fill(disparos_nave18);
g2.fill(disparos_nave19);
g2.fill(disparos_nave20);
g2.fill(disparos_nave21);
g2.fill(disparos_nave22);
g2.fill(disparos_nave23);
g2.fill(disparos_nave24);
         
       if(megaman.intersects(disparos_nave) || megaman.intersects(disparos_nave2) || megaman.intersects(disparos_nave3) || megaman.intersects(disparos_nave4) || megaman.intersects(disparos_nave5) ||
       megaman.intersects(disparos_nave6) || megaman.intersects(disparos_nave7) || megaman.intersects(disparos_nave8) || megaman.intersects(disparos_nave9) || megaman.intersects(disparos_nave10) ||
       megaman.intersects(disparos_nave11) || megaman.intersects(disparos_nave12) || megaman.intersects(disparos_nave13) || megaman.intersects(disparos_nave14) || megaman.intersects(disparos_nave15) ||
       megaman.intersects(disparos_nave16) || megaman.intersects(disparos_nave17) || megaman.intersects(disparos_nave18) || megaman.intersects(disparos_nave19) || megaman.intersects(disparos_nave20) ||
       megaman.intersects(disparos_nave21) || megaman.intersects(disparos_nave22) || megaman.intersects(disparos_nave23) || megaman.intersects(disparos_nave24)
       ){System.exit(0);}











g2.setColor(Color.BLUE);
pared1 = new Rectangle2D.Double(mapax+objetivo_a_matar+220, 345, 40, 60);


 
   if(megaman.intersects(pared1)){mapax+=6; mapax2+=6;
   g2.drawString("PRESIONA SPACE O R PARA GOLPEAR",100,200);
   }
   
   if(megaman.intersects(pared1)){ vida-=1;}
 


Image normal = Toolkit.getDefaultToolkit().getImage("C://megaman//normal.gif");
Image run = Toolkit.getDefaultToolkit().getImage("C://megaman//run.gif");
Image kill = Toolkit.getDefaultToolkit().getImage("C://megaman//kill.gif");
Image kill2 = Toolkit.getDefaultToolkit().getImage("C://megaman//enemigo1.gif");
g2.drawImage(kill2, mapax+objetivo_a_matar+200,345, this);
Image kill3 = Toolkit.getDefaultToolkit().getImage("C://megaman//kill3.gif");

if(!disparar && !golpear && !cortar && !correr){
g2.drawImage(normal,x+20,y+20,this);

}


if(correr){
 
g2.drawImage(run,x,y,this);

   }

   if(disparar){
 
fuego = new Rectangle2D.Double(x+50, y+20, 150, 30);
g2.setColor(Color.white);
if(fuego.intersects(pared1)){g2.drawString("!!HIT!!", 200, 250); daño+=1;}





   g2.drawImage(kill,x+8,y+20,this);

   }
   
   
   if(daño>=500){objetivo_a_matar=800;}
if(daño>=1000){objetivo_a_matar=1000;}
if(daño>=1500){objetivo_a_matar=1400;}
if(daño>=2000){objetivo_a_matar=1800;}
if(daño>=2500){objetivo_a_matar=2000;}
if(daño>=3000){objetivo_a_matar=2300;}
if(daño>=3500){objetivo_a_matar=2600;}
if(daño>=4000){objetivo_a_matar=3000;}
if(daño>=4500){objetivo_a_matar=3200;}
if(daño>=5500){objetivo_a_matar=3400;}
if(daño>=7000){objetivo_a_matar=3700;}
if(daño>=8000){objetivo_a_matar=3800;}
if(daño>=10000){objetivo_a_matar=10000;}


   
 
   
   
   if(cortar){
  g2.drawImage(kill3,x+14,y+3,this);

fuego2 = new Rectangle2D.Double(x+80, y, 10, 50);
g2.setColor(Color.white);
if(fuego2.intersects(pared1)){g2.drawString("!!DOBLE HIT!!", 200, 250); daño+=2;}


  }
   
   
   g2.setColor(Color.green);
   
   
 
   g2.drawString("!!META!!",mapax+4000,150);
   g2.fillRect(mapax,410,60000, 80);
   
   
   
   g2.setColor(Color.blue);
   
   
 
   
   
   g2.setColor(Color.white);
   g2.drawString("MEGAMAN ZERO CREADO POR FERRETER",100,50);
   
 
   g2.setColor(Color.red);
   tiempo-=1;
   stiempo= String.valueOf(tiempo).toString();
   g2.drawString("TIEMPO   " +stiempo, 520, 50);
   
   
   if(objetivo_a_matar<10000 && tiempo<=0){System.exit(0);}
   
   g2.setColor(Color.green);
   svida= String.valueOf(vida).toString();
   g2.drawString("VIDA  "+svida , 500, 100);
   

   if(vida<=0){System.exit(0);}
   
   if(mapax>=-500){
   g2.setColor(Color.white);
   g2.fillRect(10, 100, 200, 40);
   g2.setColor(Color.black);
   g2.drawString("Tu Objetivo Es Llegar Al Final",11,110);
   g2.drawString("De La Meta Antes De Que",11,120);
   g2.drawString("El Tiempo Termine",11,130);
   }
   
   
   

}

public void paint(Graphics g) {
Graphics2D g2 = (Graphics2D)g;
Dimension d = getSize();
Image mImagen = createImage(d.width, d.height);
Graphics2D offG = (Graphics2D)mImagen.getGraphics();
offG.setColor(Color.black);
offG.fill(new Rectangle2D.Double(0, 0, d.width, d.height));
pintarEnOffscreen(offG);
g2.drawImage(mImagen, 0, 20, null);

}























public static void main(String []args){


zero e= new zero();
e.setSize(700,600);
e.setTitle("MEGAMAN ZERO By Ferreter");



e.setLayout(new FlowLayout());
    e.setVisible(true);
e.repaint();
e.addWindowListener(new WindowAdapter(){public void windowClosing (WindowEvent e){System.exit(1);}});
e.addKeyListener(new KeyAdapter(){
public void keyPressed(KeyEvent e) {
if(e.getKeyCode()==KeyEvent.VK_D){mapax-=6; mapax2-=6; disparar=false; golpear=false; cortar=false; correr=true; }
if(e.getKeyCode()==KeyEvent.VK_A){mapax+=6;  mapax2+=6;disparar=false; golpear=false; cortar=false; correr=true;}
if(e.getKeyCode()==KeyEvent.VK_T){cortar=true;disparar=false; golpear=false; correr=false;}
if(e.getKeyCode()==KeyEvent.VK_SPACE){disparar=true; golpear=false; cortar=false; correr=false;}



}

public void keyTyped (KeyEvent e2){

if(e2.getKeyCode()==KeyEvent.VK_D){correr=false; disparar=false; cortar=false; golpear=false;}
if(e2.getKeyCode()==KeyEvent.VK_A){correr=false; disparar=false; cortar=false; golpear=false;}

}



});
}
}
Páginas: 1 2 3 4 [5]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines