Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - S[e]C

#1
Seguridad / Re:[Encuesta] Mejor Firewall
Julio 08, 2011, 06:35:09 PM
iptables, que no sé por que no está en la lista ...
#2
ese método dejó de funcionar hace varios días ...
#3
Dudas y pedidos generales / Re:Duda puertos router
Julio 03, 2011, 09:12:20 PM
tu problema es con emule, con el troyano o con ambos?, si es con emule, pues solo abre ese puerto en el router, si es el troyano pues abre el puerto del troyano, si son ambos pues abres ambos.

Un saludo.
#4
Dudas y pedidos generales / Re:¿Códigos Binarios?
Julio 03, 2011, 09:10:47 PM
Lee el documento que te facilitó Sthefano02, si no comprender algo al detalle vuelves acá y preguntas, no es la forma decir que simplemente no entiendes, dinos que no entiendes, y te podremos ayudar,

un saludo.
#5
Listas, pilas, arboles, entre otras estructuras dinámicas se usan en amplitud de situaciones de la vida real, por nombrar algunos, simular un estacionamiento,  filas que se hacen en los bancos o supermercados, un diccionario, etc .
#6
Primero para escanear tu propia pc, usa la loop ip (127.0.0.1 ó localhost ) , al usar la ip que sale a la nube del tipo 192.bla.bla.bla nmap detectará la dirección ip de tu router o del pc que este directamente conectado a el, que puede ser linux aunqe tu no.

Otra cosa es que para detectar el sistema operativo con nmap, se utiliza el argumento -O ,

Código: php
sec@gentoo ~# : nmap -O 127.0.0.1 


lee la documentación para mas información .

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Un saludo.
#7
Dudas y pedidos generales / Re:Firefox
Julio 03, 2011, 08:46:35 PM
Compañero use Opera, ocupa poca memoria en comparación a opera, es rápido, personalizable, bonito, respeta los estándares web como ningún otro, evangelicese :P .
#8
Dudas y pedidos generales / Re:Duda puertos router
Julio 03, 2011, 08:31:32 PM
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
vale he leido lo de emule, pero tonces que hago, ponerle los puertos de emule a mi troyano???

Claro que no, pones el puerto con que configuraste tu troyano, en lugar del puerto de emule en el tutorial que te facilitaron.
#9
Yo para lo que es programación en la nube uso Bluefish, aunque geany rlz :) , podrías probarlos, yo me quede con bluefish :) , yo en tu lugar los pruebo todos, y me quedo con el que produzca mas jeje .
#10
Dudas y pedidos generales / Re:duda memset =)
Junio 22, 2011, 12:57:53 AM
la respuesta es claramente obvia ... haz ese printf y adios duda ;) .
#11
Dudas y pedidos generales / Re:Conexion java a mysql
Junio 22, 2011, 12:27:01 AM
gracias por publicar la solución, cerrado :) .
#12
Dudas y pedidos generales / Re:Vector en RMI
Junio 22, 2011, 12:25:00 AM
lo que pasa es que siempre que el objetoRemoto  llama al método "insertar" re-inicializa la variable i en 0, por lo que inserta en esa posición, luego incrementa i, pero la próxima ves q se llame el método pasara lo mismo, se inicializa en 0, y se incrementa (inútil incremento xd) . No sé si se entendio, pero prueba algo como esto:

Código: java
import java.io.Serializable;
import java.rmi.RemoteException;
import java.rmi.server.UnicastRemoteObject;
import java.util.*;

public class ObjetoRemoto extends UnicastRemoteObject implements InterfaceRemota {
private int posActual;
public ObjetoRemoto() throws RemoteException {
super();
                posActual = 0;
}

        public int getposActual(void){
            return this.posActual;
        }

        public void setposActual(int nueva){
            this.posActual = nueva;
        }

public int inserta(String usuario, String post) {

String mensaje = new String();
String users[] = new String[10];
Vector vector = new Vector(10);
int a = 0;

try {
users[i] = usuario;
vector.insertElementAt(post, getposActual());
//System.out.println(vector.elementAt(1));
mensaje = vector.toString();;
a = vector.size();
                setPosActual(getposActual()+1);
}catch(Exception e) {
e.printStackTrace();
}
return i;
}
}
#13
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
ReySolARG gracias por tu ayuda pero cuando trato de compilar no compila porque sera

Es porque usas Dev-C++ y la libreria graphics.h no es estandar. Debes compilarlo con el compilador de borland , checha acá: No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Saludos.
#14
Dudas y pedidos generales / Re:Ayuda con Agenda en C
Junio 04, 2011, 08:20:27 PM
Prueba si te anda bien, así, es lo que yo te decía:
Código: c
////////////////////////////////////////agenda//////////////////////////////////////////////////

#include<string.h>
#include<stdio.h>
#include<conio.h>
#include<ctype.h>
#include<stdlib.h>
#include<DOS.H>
#include<time.h>

struct fechanac{
  int dia;
  int mes;
  int ano;
  } fn;

struct a{
  char nombre[10];
  char apellido[10];
  int edad;
  long int tel;
  long int dni;
  char correo[30];
  struct fechanac fn;
  } con[30];


int validarnomap(int);
int validarcorreo (char*);
void main()
{

//----------------------------VARIABLES----------------------------------------------
int op=0,x=0,s=0,o=0,y=0,j=0,p=0,i=0,lgo=0,cont=0,time_t,t;
int vf;
int vff=0,a4=0,a100=0,a400=0,d=0;
long int nro=0;
char string[30];
//-----------------------------ARCHIVO-----------------------------------------
FILE *v;
v=fopen("agendaCRIS.txt","r+");

//-----------------------------REPETICION DEL MENU---------------------------------
do
{
//---------------------------CARGA DE DATOS------------------------------------
x=0;
while (x<2)
{
fscanf (v,"%s",&con[x].nombre);
fscanf (v,"%s",&con[x].apellido);
fscanf (v,"%d",&con[x].edad);
fscanf (v,"%2d/%2d/%4d",&con[x].fn.dia,&con[x].fn.mes,&con[x].fn.ano);
fscanf (v,"%ld",&con[x].tel);
fscanf (v,"%ld",&con[x].dni);
fscanf (v,"%s",&con[x].correo);
x++;
}
fclose(v)

//------------------------------MENU--------------------------------------------------



textbackground(RED);
textcolor(WHITE);
clrscr ();


  gotoxy(20,2) ;printf ("|||||||||||||||||||||||||||||||||\n");
  gotoxy(20,3) ;printf ("||           AGENDA            ||\n");
  gotoxy(20,4) ;printf ("|||||||||||||||||||||||||||||||||\n");
  gotoxy(20,5) ;printf ("|| 1_ Ingresar Contacto        ||\n");
  gotoxy(20,6) ;printf ("|| 2_ Ver un contacto          ||\n");
  gotoxy(20,7) ;printf ("|| 3_ Ver todos los contactos  ||\n");
  gotoxy(20,8) ;printf ("|| 4_ Editar Contacto          ||\n");
  gotoxy(20,9) ;printf ("|| 5_ Guardar                  ||\n");
  gotoxy(20,10);printf ("|| 6_ Salir                    ||\n");
  gotoxy(20,11);printf ("|||||||||||||||||||||||||||||||||\n");
printf ("\n");
  gotoxy(20,13);printf ("|||||||||||||||||||||||||||||||||\n");
  gotoxy(20,14);printf ("|| INGRESE OPCION:             ||\n");
  gotoxy(20,15);printf ("|||||||||||||||||||||||||||||||||\n");
  gotoxy(20,20) ;printf("Copyrights@ by CRISTIAN ALLEMAND\n");
  gotoxy(29,21) ;printf("Diciembre 2010\n");
  gotoxy(39,14);scanf ("%d",& op);
printf ("\n\n");


//--------------------------OPERACIONES---------------------------------------------
clrscr();
switch (op)
{
case 1:
  x=0;
  while (x<30)
   {

if(con[x].nombre[x] =='\x0')
  {
printf ("> Contacto Numero %d\n",(x+1));
printf ("> Ingrese Nombre(sin espacios previos):");
scanf ("%s",con[x].nombre);

o=validarnomap(x);
if(o==0)
  {
  printf("                                BIEN ESCRITO\n");
  }
  else
{
printf("                            MAL ESCRIT\n");

  getch();
  clrscr();
  gotoxy(20,4); printf ("|||||||||||||||||||||||||||||||||||||||||");
  gotoxy(20,5); printf ("|| 1_  <+> Volver al menu Principal    ||\n");
  gotoxy(20,6); printf ("|| 2_  <+> Salir                       ||\n");
  gotoxy(20,7); printf ("|||||||||||||||||||||||||||||||||||||||||\n");
  gotoxy(20,8); printf ("|||||||||||||||||||||||||||||||||||||||||\n");
  gotoxy(20,9); printf ("|| INGRESE OPCION:                     ||\n");
  gotoxy(20,10);printf ("|||||||||||||||||||||||||||||||||||||||||\n");
  gotoxy(39,9); scanf("%d",&s);
  if(s==1)
{
x=33;x++;
break;
}
else
   {
   if(s==2)
{
  exit(0);
}

   }
break;
}

//------------------------------
do{
      printf("\nFecha de Nac:\n");
      fflush(stdin);
      printf("Dia: ");
      scanf("%d",&con[x].fn.dia);
      printf("Mes: ");
      scanf("%d",&con[x].fn.mes);
      printf("Año: ");
      scanf("%d",&con[x].fn.ano);
      p=con[x].fn.mes%2;
      if((con[x].fn.mes>0)&&(con[x].fn.mes<13))
{
if(con[x].fn.mes==2)
  {
a4=con[x].fn.ano%4;
a100=con[x].fn.ano%100;
a400=con[x].fn.ano%400;
if(a4==0)
  {
    if(a100==0)
      {
if(a400==0)
  {
d=30;
  }
  else
    {
d=29;
    }
      }
      else
{
d=30;
}
  }
  else
    {
    d=29;
    }
}
  else
    {
if(con[x].fn.mes<8)
  {
    if(p==0)
      {
d=31;
      }
      else
{
d=32;
}
  }
  else
    {
      if(p==0)
{
d=32;
}
else
  {
d=31;
  }
    }
    }
    if(con[x].fn.dia<d)
      {
vf=1;
      }
      else
{
printf("\nFecha no valida.....!!!");
}
   }
   else
{
printf("\nFecha no valida.....!!!");
}
  }while(vf!=1);
      do
{
printf ("> Ingrese numero de telefono: ");
scanf ("%ld",&con[x].tel);
ltoa(con[x].tel,string,10);
nro=validarnro(string);
if(nro!=0)
  {
   printf("                         ERROR....!!!\n");
   vff=1;
  }
  else
    {
    vff=0;
    }
}while(vff!=1);
printf ("> Ingrese DNI: ");
scanf ("%d",&con[x].dni);

o=con[x].dni;
if(o>99999999)
  {
  printf("ERROR !! dni no valido\n");
  }
printf ("> Ingrese correo electronico: ");
scanf ("%s",con[x].correo);
nro=validarcorreo(con[x].correo);
if(nro==0)
  {
  printf("ERROR falta el '@'\n");
  }
  else
    {
    if(nro==1)
      {
      printf("ERROR falta el domino ej:'.com','.com.ar','.net',etc\n");
      }
    }



getch();
clrscr();
   gotoxy(20,4); printf ("|||||||||||||||||||||||||||||||||||||||||");
   gotoxy(20,5); printf ("|| 1_  <+> Volver al menu principal    ||\n");
   gotoxy(20,6); printf ("|| 2_  <+> Salir                       ||\n");
   gotoxy(20,7); printf ("|||||||||||||||||||||||||||||||||||||||||\n");
   gotoxy(20,8); printf ("|||||||||||||||||||||||||||||||||||||||||\n");
   gotoxy(20,9); printf ("|| INGRESE OPCION:                     ||\n");
   gotoxy(20,10);printf ("|||||||||||||||||||||||||||||||||||||||||\n");
   gotoxy(39,9); scanf("%d",&s);

if(s==2)
{
x=33;
}
      }
x++;
   }
   break;



   case 2:
   {
x=0;
printf ("Ingrse numero de contacto que desea ver: ");
scanf  ("%d",&x);
x--;
printf ("\n> Contacto Nun %d\n",(x+1));
printf ("> Nombre: %s\n",con[x].nombre);
printf ("> Apellido: %s\n",con[x].apellido);
printf ("> Edad(A¥os): %d\n",con[x].edad);
printf ("> Fecha de nacimiento: %2d/%2d/%4d\n",con[x].fn.dia,con[x].fn.mes,con[x].fn.ano);
printf ("> Numero de telefono: %d\n",con[x].tel);
printf ("> DNI: %d\n",con[x].dni);
printf ("> Correo electronico: %s\n",con[x].correo);
   }
   getch();
   break;

   case 3:
   {
    x=0;
    while (con[x].nombre[x] !='\x0')
     {
printf ("\n> Contacto Nun %d\n",(x+1));
printf ("> Nombre: %s\n",con[x].nombre);
printf ("> Apellido: %s\n",con[x].apellido);
printf ("> Edad(A¥os): %d\n",con[x].edad);
printf ("> Fecha de nacimiento: %2d/%2d/%4d\n",con[x].fn.dia,con[x].fn.mes,con[x].fn.ano);
printf ("> Numero de telefono: %d\n",con[x].tel);
printf ("> DNI: %d\n",con[x].dni);
printf ("> Correo electronico: %s\n",con[x].correo);
x++;
     }
   }
   getch();
   break;

   case 4:
   {
    x=0;
    printf ("TENER EN CUENTA QUE LOS DATOS VIEJOS SE PERDERAN!!");
    printf ("Ingrese numero de contacto que desea re ingresar:  ");
    scanf ("%d",&x);
    x--;
       printf ("> Ingrese Nombre(sin espacios previos):");
scanf ("%s",con[x].nombre);

o=validarnomap(x);
if(o==0)
  {
  printf("                                BIEN ESCRITO\n");
  }
  else
{
printf("                            MAL ESCRIT\n");

  getch();
  clrscr();
  gotoxy(20,4); printf ("|||||||||||||||||||||||||||||||||||||||||");
  gotoxy(20,5); printf ("|| 1_  <+> Volver al menu Principal    ||\n");
  gotoxy(20,6); printf ("|| 2_  <+> Salir                       ||\n");
  gotoxy(20,7); printf ("|||||||||||||||||||||||||||||||||||||||||\n");
  gotoxy(20,8); printf ("|||||||||||||||||||||||||||||||||||||||||\n");
  gotoxy(20,9); printf ("|| INGRESE OPCION:                     ||\n");
  gotoxy(20,10);printf ("|||||||||||||||||||||||||||||||||||||||||\n");
  gotoxy(39,9); scanf("%d",&s);
  if(s==1)
{
x=33;x++;
break;
}
else
   {
   if(s==2)
{
  exit(0);
}

   }
break;
}

//------------------------------
do{
      printf("\nFecha de Nac:\n");
      fflush(stdin);
      printf("Dia: ");
      scanf("%d",&con[x].fn.dia);
      printf("Mes: ");
      scanf("%d",&con[x].fn.mes);
      printf("Año: ");
      scanf("%d",&con[x].fn.ano);
      p=con[x].fn.mes%2;
      if((con[x].fn.mes>0)&&(con[x].fn.mes<13))
{
if(con[x].fn.mes==2)
  {
a4=con[x].fn.ano%4;
a100=con[x].fn.ano%100;
a400=con[x].fn.ano%400;
if(a4==0)
  {
    if(a100==0)
      {
if(a400==0)
  {
d=30;
  }
  else
    {
d=29;
    }
      }
      else
{
d=30;
}
  }
  else
    {
    d=29;
    }
}
  else
    {
if(con[x].fn.mes<8)
  {
    if(p==0)
      {
d=31;
      }
      else
{
d=32;
}
  }
  else
    {
      if(p==0)
{
d=32;
}
else
  {
d=31;
  }
    }
    }
    if(con[x].fn.dia<d)
      {
vf=1;
      }
      else
{
printf("\nFecha no valida.....!!!");
}
   }
   else
{
printf("\nFecha no valida.....!!!");
}
  }while(vf!=1);
      do
{
printf ("> Ingrese numero de telefono: ");
scanf ("%ld",&con[x].tel);
ltoa(con[x].tel,string,10);
nro=validarnro(string);
if(nro!=0)
  {
   printf("                         ERROR....!!!\n");
   vff=1;
  }
  else
    {
    vff=0;
    }
}while(vff!=1);
printf ("> Ingrese DNI: ");
scanf ("%d",&con[x].dni);

o=con[x].dni;
if(o>99999999)
  {
  printf("ERROR !! dni no valido\n");
  }
printf ("> Ingrese correo electronico: ");
scanf ("%s",con[x].correo);
nro=validarcorreo(con[x].correo);
if(nro==0)
  {
  printf("ERROR falta el '@'\n");
  }
  else
    {
    if(nro==1)
      {
      printf("ERROR falta el domino ej:'.com','.com.ar','.net',etc\n");
      }
    }



getch();
clrscr();
   gotoxy(20,4); printf ("|||||||||||||||||||||||||||||||||||||||||");
   gotoxy(20,5); printf ("|| 1_  <+> Volver al menu principal    ||\n");
   gotoxy(20,6); printf ("|| 2_  <+> Salir                       ||\n");
   gotoxy(20,7); printf ("|||||||||||||||||||||||||||||||||||||||||\n");
   gotoxy(20,8); printf ("|||||||||||||||||||||||||||||||||||||||||\n");
   gotoxy(20,9); printf ("|| INGRESE OPCION:                     ||\n");
   gotoxy(20,10);printf ("|||||||||||||||||||||||||||||||||||||||||\n");
   gotoxy(39,9); scanf("%d",&s);
if(s==1)
   {
   x=33;
   x++;
   }
   if(s==2)
     {
     exit(0);
     }


   }


   getch();
   break;

   case 5:
   {
   v=fopen("agendaCRIS.txt","a+");
    x=0;
    while (con[x].nombre[x] !='\x0')
     {
fprintf (v,"%s\n",con[x].nombre);
fprintf (v,"%s\n",con[x].apellido);
fprintf (v,"%2d/%2d/%4d\n",con[x].fn.dia,con[x].fn.mes,con[x].fn.ano);
fprintf (v,"%d\n",con[x].tel);
fprintf (v,"%d\n",con[x].dni);
fprintf (v,"%s\n",con[x].correo);
x++;
     }
    fclose(v);
   }

   break;
}
//-----------------------------REPETICION DEL MENU---------------------------------
}
while (op !=6);
//----------------------------------FIN----------------------------------------
fclose(v);
}
void espera(long sec)
{

    long inicio, actual;
    time(&inicio) ;
    time(&actual) ;

    while((actual-inicio)<sec)
    {
time(&actual) ;
    }

}



int validarnomap (x)
  {


   int lgo=0,i=0,cont=0, o=0;
   lgo=strlen(con[x].nombre);

   while(i<lgo)
     {
     if(isalpha(con[x].nombre[i]))
       {
cont++;
       }
       i++;
     }

     if(lgo>0 && cont==lgo)
       {
o=0;
return o;   //esta bien escrito
       }
       else
  {
   o=1;
   return o;   //esta mal escrito
  }
}
int validarnro (char* string)
  {
  //printf("Evaluando el contacto %d", x);

   int lgo=0,i=0,cont=0, nro=0;
   lgo=strlen(string);

   while(i<lgo)
     {
     if(isdigit(string[i]))
       {
cont++;
       }
       i++;
     }

     if(lgo>0 && cont==lgo)
       {
nro=0;
return nro;   //esta bien escrito
       }
       else
  {
   nro=1;
   return nro;   //esta mal escrito
  }
}


int validarcorreo(char* correo)
{

  int i, j, flag,x,nro=6;



  j = 0;
  flag = 0; /* <- Buscar la '@' */
  for(i = 0; i < strlen(correo); i++)
  {
    if (flag == 1)
    {
      if (correo[i] == '.')
      {
j = i+1;
break;
      }
    }
    else if (flag == 0)
      if (correo[i] == '@')
flag++; /* <- Buscar el '.' */
  }


    if (flag == 0)
    {
      nro=0;
      return nro; //("No Valido. Falta la @\n");
    }
    else
      {
      nro=1;
      return nro; //("No Valido. Falta el dominio\n");
      }
}


yo no puedo checar si lo que modifiqué esta 100% bien porque gotoxy me hincha los huevos xD!, pero checalo y cuentame si anda bien =) .

PD: lo que dice Alejandro_N12 es correcto tambien, y lo de leer todo de una tambien :P .

Saludos
#15
Dudas y pedidos generales / Re:Ayuda con Agenda en C
Junio 04, 2011, 06:46:54 PM
ahora voy acompañar a mi madre al super xd, apenas regrese te posteo tu código modificado, mientras intenta arreglarlo tú, relee mi ultimo post, lo que dije al principio, eso es lo que tienes que hacer jeje.

SaludOS.
#16
Dudas y pedidos generales / Re:Ayuda con Agenda en C
Junio 04, 2011, 06:27:02 PM
mmm no es que pruebes con uno o con otro, lo correcto no es que abras una sola vez el archivo de una sola forma y asi operes con el ...

Mira para cargar abre el archivo en modo "r+" y luego de cargado lo cierras (fclose), lo otro ... no abras el archivo denuevo (fopen) hasta que en el menu se indique la opcion de guardar, ahi lo abres en modo "a+" y lo cierras luego del guardado.

haz eso y cuentame, porque mira, te explico el problema que habia primero...

Código: php
ARCHIVO VACIO


tu abrias en a+ osea el cursor esta situado al final del archivo, entonces escribias datos y guardabas quedaba algo asi en el archivo:

Código: php
palabra1 palabra2
palabra3 palabra4


entonces cuando lo abrias denuevo se abria en modo a+ nuevamente con el puntero al final del archivo, osea:
Código: php

palabra1 palabra2
palabra3 palabra4 X    (donde X es el puntero)


osea si haces un fscanf(archivo ... no leias nada porque desde el final en adelante solo esta EOF (end of file), pero si para leer (cargar) abres en r+ el puntero estara al principio, es decir:
Código: php

X palabra1 palabra2
palabra3 palabra4 


por lo que fscanf(archivo si lee el contenido total del archivo...

espero que se halla entendido :)
#17
Dudas y pedidos generales / Re:Ayuda con Agenda en C
Junio 04, 2011, 06:12:38 PM
Lo que te dije no era la solución jeje, era para que vieras tu error, mira "a+" abre el archivo para lectura o escritura y sitúa el puntero al final del archivo, es conveniente abrirlo asi para escribir en el archivo =) , "r+" abre el archivo para lectura y escritura y sitúa el puntero al principio del archivo es decir es conveniente para leer ... osea prueba a abrir y cerrar dos veces el archivo usando esos dos modos y cuando corresponda y no deberías tener ningún problema.
#18
Dudas y pedidos generales / Re:Ayuda con Agenda en C
Junio 04, 2011, 04:56:08 PM
cambia el modo de apertura del archivo a "r+" y cuentame :)
#19
muy bueno =) , se agradece .
#20
Sobre algoritmo en si, si entiendes que son "un conjunto de pasos finitos y ordenados que dan solución a un problema", solo puede acomplejarte la dificultad de no comprender un proceso y eso se soluciona leyendo e investigando de ese proceso especifico.

Seguramente puede interesarte expresar algoritmos mediante pseudo-código para lo que puedes mirar en el foro, y te recomendaría probar alguna aplicación como No tienes permitido ver los links. Registrarse o Entrar a mi cuenta el cual te genera automáticamente el diagrama de flujo asociado que veo es lo que te interesa :) .

Para mas sobre diagramas de flujos y pesudo-código/algoritmos puedes mirar los siguientes enlaces :

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Espero haberte ayudado, saludos y espero que aprendas mucho =) .