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 - sabeeee

#41
Bueno, parece que lo parcharon ?, ahora abre archivos nomas , parece ser inestable, al ponerlo solo en una carpeta con otro archivo allí si se crashea.
#42
http://sourceforge.net/projects/batchcompiler/ Ese es muy pero muy bueno en mi opinion, yo estoy haciendo un código que traduce realmente el bat a un c, podrías poner el código de tu bat y quizás te podamos ayudar mas.
#43
Recomendaría que lo hagas desde C/C++ todo, hasta lo que pude entender.
#44
Con mis aparatos tecnológicos cuando NO paso, solo te puedo decir que no estoy mas de 6 horas sin ellos.
#45
Foro Libre / Re: Cuenta de twitter
15 Enero 2015, 19:04 PM
No entiendo porque hay gente que borra sus cuentas, yo personalmente no uso mas que facebook y jamas lo borraría por nadie, como dejar que te vean el celular, es la forma de demostrarles que te tienen agarrado de los huevos.
#46
En la consola ingreso:
echo Prueba pause
PAUSE
echo Prueba pause>nul
PAUSE>NUL
FIN


Y da de resultado:

#include <stdio.h>
#include <stdlib.h>
int main( int argc, char **argv)
{
       //La primera linea ¿En donde esta? //MAL
printf("Presione una tecla para continuar."); //OK
getchar(); //OK
system("echo prueba pausenul"); //OK
getchar(); //OK
}


Gracias igualmente por corregir el código.
¿Sera porque use el gets con el scanf?
----------
EDIT: La solución era borrar la linea '163' que estaba allí por un despiste de novato que soy, yo pensando que era el bug que sucede al combinar gets con scanf, por algún lado había leído que se salteaba lineas y demás.
#47
Hola nuevamente foro, tengo un problema que me dificulta seguir con mi código, digo que es un bug porque hice mi código aparte, el cual funciona perfectamente, luego lo implemente a mi código y falla:

Código donde se presenta la falla:

#include <stdio.h>
#include <ctype.h>
#include <string.h>
#include <stdlib.h>

// Limpiador de pantalla
void clrScr()
{
//Windows/Linux
if (system("CLS")) system("clear");
/* Modo realmente multiplataforma (malo).
   int n;
   for (n = 0; n < 10; n++)
   printf( "\n\n\n\n\n\n\n\n\n\n\n\n\n" );
*/
}

// Mensaje "propagandistico"
void Mensaje()
{
printf("\t+----------------------------+\n");
   printf("\t|BATCH TO C SOURCE CONVERTER |\n");
   printf("\t+----------------------------+\n");
}
// Limpiador de ENTER
void EnterLimp()
{
while ( getchar() != '\n' );    /* limpia el caracter ENTER de la entrada estandar */
}

int main()
{
int oculto;
int clave;

   FILE *fp;
char *cPtr;
   char filename[30];          //filename for source code
   //for command
   char cmd[150];
   //la clave
   char cmb[350];

// Nombre archivo final
Mensaje();
printf("\nEntre el nombre que le quiere dar al codigo saliente(.c): ");
scanf("%s",filename);
EnterLimp();

clrScr();

// Tipo de clave
Mensaje();
printf("AVISO: (No es posible modo oculto con clave externa) (2)\n ");
printf("1: Para modo clave consola.\n 2: para clave externa (-pass clave) \n 0: sin clave");
scanf("%d" ,&clave);
EnterLimp();
clrScr();

// Modo clave 1
if( clave== 1 ){
Mensaje();
   printf("\nLa clave de mas de 3 caracteres: ");
   scanf("%s",cmb);
EnterLimp();
}
// Modo clave 2
if( clave== 2 ){
Mensaje();
   printf("\nLa clave: ");
   scanf("%s",cmb);
EnterLimp();
}
clrScr();

//Modo "oculto"
if( clave== 2 ){
Mensaje();
printf("No es posible modo oculto con clave externa\n");
printf("Enter para continuar\n");
getchar(); //pausa multiplataforma
}else{
Mensaje();
printf("Para modo oculto escriba 1 (solo windows) o 0 para normal : ");
scanf("%d" ,&oculto);
EnterLimp();
}
clrScr();
/*
//Concatenado
Mensaje();
   printf("\nMetodo de concatenado : ");
   printf("\n1 para metodo modo inteligente (beta) : ");
   scanf("%d",&concatenado);
EnterLimp();

clrScr();
*/
//Codigos
fp = fopen(filename,"w");
   if (fp==NULL)
   {
    printf("Ocurrio un error al intentar abrir el archivo");
    getchar();
    exit(1);
   }
   else
   {
// includes normales
fprintf(fp,"#include <stdio.h>\n");
       fprintf(fp,"#include <stdlib.h>\n");
if( clave== 2 ){
fprintf(fp,"#include <string.h>\n");
}
if( oculto== 1 ){
// modo oculto
       fprintf(fp,"#include <windows.h>\n");
}

if( oculto== 1 ){
       fprintf(fp,"int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,\n");
       fprintf(fp,"PSTR szCmdLine, int iCmdShow)\n");
}
// int argc, char **argv
fprintf(fp,"int main( int argc, char **argv)\n");
       fprintf(fp,"{\n");

if( clave== 1 ){
// modo clave

       fprintf(fp,"\nchar clave[6];\n");
       fprintf(fp,"printf(\"Escriba su clave: \");\n");
       fprintf(fp,"scanf(\"%%s\",clave);\n");
       fprintf(fp,"if(strcmp(clave,\"%s\")==0)\n",cmb);
       fprintf(fp,"{\n");
}
if( clave== 2 ){
// modo consola
       fprintf(fp,"\tchar clave[21];\n");
       fprintf(fp,"\tchar clave2[21] = \"%s\";\n",cmb);
       fprintf(fp,"\tif ( argc < 3 ) {\n");
       fprintf(fp,"\tprintf(\"USO: programa -pass clave\");\n");
       fprintf(fp,"\treturn 1;\n");
       fprintf(fp,"}\n");
       fprintf(fp,"\tif ( !strcmp( argv[1], \"-pass\" ) ) {\n");
       fprintf(fp,"\tstrncpy( clave, argv[2], 20 );\n");
       fprintf(fp,"\tclave[21] = '\\0';\n");
       fprintf(fp,"}\n");
       fprintf(fp,"\telse\n");
       fprintf(fp,"return 1;\n");
       fprintf(fp,"\n");
       fprintf(fp,"\tif ( !strcmp(clave, clave2) )\n");
       fprintf(fp,"{\n");
}
clrScr();

Mensaje();

       printf("\nComience a escribir los comandos : \n");
       printf("Cuando finalice, ecriba 'FIN' para terminar\n");
       printf("\nComandos :\n\n");
     
       gets(cmd);
       while (1)
       {

fgets( cmd, 150, stdin );
if ( ( cPtr = strchr( cmd, '\n' ) ) != NULL ) *cPtr = '\0';

while (!strcmp(cmd,"PAUSE\>NUL"))
{
fprintf(fp,"\tgetchar();\n");
fgets( cmd, 150, stdin );
if ( ( cPtr = strchr( cmd, '\n' ) ) != NULL ) *cPtr = '\0';
                }

while (!strcmp(cmd,"PAUSE"))
{
fprintf(fp,"\tprintf(\"Presione una tecla para continuar.\");\n");
fprintf(fp,"\tgetchar();\n");
fgets( cmd, 150, stdin );
if ( ( cPtr = strchr( cmd, '\n' ) ) != NULL ) *cPtr = '\0';
                }
if (!strcmp(cmd,"FIN"))
                {
                break;              //if end is typed, get out of loop
                }
             fprintf(fp,"\tsystem(\"%s\");\n",cmd);
}
if( clave== 0 ){
       fprintf(fp,"}");
}

if( clave== 1 ){
// modo clave
       fprintf(fp,"\t}\nelse\n{\n");
       fprintf(fp,"\tprintf(\"Clave no valida\");\n}\n");
       fprintf(fp,"\treturn 0;\n}");
}

if( clave== 2 ){
// modo clave
       fprintf(fp,"\t}\nelse\n{\n");
       fprintf(fp,"\tprintf(\"Clave no valida\");\n}\n");
       fprintf(fp,"\treturn 0;\n}");
}
fclose(fp);
   }
getchar();
}



Código que funciona perfectamente y es similar:

#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <string.h>
int main()
{
char *cPtr;

   FILE *fp;
   char filename[30];
   char incs[200] = "#include <stdio.h>\n#include <stdlib.h>\nint main()\n{\n";
   char end[50] = "}\n";
   char cmd[150];
 
   printf("\nArchivo a crear: ");
   scanf("%s",filename);
   fp = fopen(filename,"w");
   if (fp==NULL)
   {
    printf("Some error occurred while opening file");
    getchar();
    exit(1);
   }
   else
   {
       fprintf(fp,"%s",incs);
       
       printf("\nIngrese sus codigos: \n");
     
       gets(cmd);
       while (1)
       {
fgets( cmd, 150, stdin );
if ( ( cPtr = strchr( cmd, '\n' ) ) != NULL ) *cPtr = '\0';

while (!strcmp(cmd,"PAUSE\>NUL"))
{
fprintf(fp,"\tgetchar();\n");
fgets( cmd, 150, stdin );
if ( ( cPtr = strchr( cmd, '\n' ) ) != NULL ) *cPtr = '\0';
                }

while (!strcmp(cmd,"PAUSE"))
{
fprintf(fp,"\tprintf(\"Presione una tecla para continuar.\");\n");
fprintf(fp,"\tgetchar();\n");
fgets( cmd, 150, stdin );
if ( ( cPtr = strchr( cmd, '\n' ) ) != NULL ) *cPtr = '\0';
                }
if (!strcmp(cmd,"FIN"))
                {
                break;
                }
             fprintf(fp,"\tsystem(\"%s\");\n",cmd);
}
     
       fprintf(fp,"\n%s",end);

       fclose(fp);
   }
   getchar();
}


Lo que pasa es que en el ultimo me devuelve el código perfectamente y el primero de todos, ese es el que falla y no se porque, funciona pero se saltea las lineas, aveces anda otras no ¿Se le puede hacer algo?.

SOLUCIONADO Y CORREGIDO UN POCO.

#include <stdio.h>
#include <ctype.h>
#include <string.h>
#include <stdlib.h>

// Limpiador de pantalla
void clrScr()
{
//Windows/Linux
if (system("CLS")) system("clear");
/* Modo realmente multiplataforma (malo).
    int n;
    for (n = 0; n < 10; n++)
    printf( "\n\n\n\n\n\n\n\n\n\n\n\n\n" );
*/
}

// Mensaje "propagandistico"
void Mensaje()
{
printf("\t+----------------------------+\n");
    printf("\t|BATCH TO C SOURCE CONVERTER |\n");
    printf("\t+----------------------------+\n");
}
// Limpiador de ENTER
void EnterLimp()
{
while ( getchar() != '\n' );    /* limpia el caracter ENTER de la entrada estandar */
}

int main()
{
int oculto;
int clave;

    FILE *fp;
char *cPtr;
    char filename[30];          //filename for source code
    //for command
    char cmd[150];
    //la clave
    char cmb[350];

// Nombre archivo final
Mensaje();
printf("\nEntre el nombre que le quiere dar al codigo saliente(.c): ");
scanf("%s",filename);
EnterLimp();

clrScr();

// Tipo de clave
Mensaje();
printf("AVISO: (No es posible modo oculto con clave externa) (2)\n ");
printf("1: Para modo clave consola.\n 2: para clave externa (-pass clave) \n 0: sin clave:\n\t");
scanf("%d" ,&clave);
EnterLimp();
clrScr();

// Modo clave 1
if( clave== 1 ){
Mensaje();
    printf("\nLa clave de mas de 3 caracteres: ");
    scanf("%s",cmb);
EnterLimp();
clrScr();
}
// Modo clave 2
if( clave== 2 ){
Mensaje();
    printf("\nLa clave: ");
    scanf("%s",cmb);
EnterLimp();

clrScr();

//Modo "oculto"
Mensaje();
printf("No es posible modo oculto con clave externa\n");
printf("Enter para continuar\n");
getchar(); //pausa multiplataforma
}else{
Mensaje();
printf("Para modo oculto escriba 1 (solo windows) o 0 para normal : ");
scanf("%d" ,&oculto);
EnterLimp();
}
clrScr();
/*
//Concatenado
Mensaje();
    printf("\nMetodo de concatenado : ");
    printf("\n1 para metodo modo inteligente (beta) : ");
    scanf("%d",&concatenado);
EnterLimp();

clrScr();
*/
//Codigos
fp = fopen(filename,"w");
    if (fp==NULL)
    {
     printf("Ocurrio un error al intentar abrir el archivo");
     getchar();
     exit(1);
    }
    else
    {
// includes normales
fprintf(fp,"#include <stdio.h>\n");
        fprintf(fp,"#include <stdlib.h>\n");
if( clave== 2 ){
fprintf(fp,"#include <string.h>\n");
}
if( oculto== 1 ){
// modo oculto
        fprintf(fp,"#include <windows.h>\n");
}

if( oculto== 1 ){
        fprintf(fp,"int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,\n");
        fprintf(fp,"PSTR szCmdLine, int iCmdShow)\n");
}
// int argc, char **argv
fprintf(fp,"int main( int argc, char **argv)\n");
        fprintf(fp,"{\n");

if( clave== 1 ){
// modo clave

        fprintf(fp,"\nchar clave[6];\n");
        fprintf(fp,"printf(\"Escriba su clave: \");\n");
        fprintf(fp,"scanf(\"%%s\",clave);\n");
        fprintf(fp,"if(strcmp(clave,\"%s\")==0)\n",cmb);
        fprintf(fp,"{\n");
}
if( clave== 2 ){
// modo consola
        fprintf(fp,"\tchar clave[21];\n");
        fprintf(fp,"\tchar clave2[21] = \"%s\";\n",cmb);
        fprintf(fp,"\tif ( argc < 3 ) {\n");
        fprintf(fp,"\tprintf(\"USO: programa -pass clave\");\n");
        fprintf(fp,"\treturn 1;\n");
        fprintf(fp,"}\n");
        fprintf(fp,"\tif ( !strcmp( argv[1], \"-pass\" ) ) {\n");
        fprintf(fp,"\tstrncpy( clave, argv[2], 20 );\n");
        fprintf(fp,"\tclave[21] = '\\0';\n");
        fprintf(fp,"}\n");
        fprintf(fp,"\telse\n");
        fprintf(fp,"return 1;\n");
        fprintf(fp,"\n");
        fprintf(fp,"\tif ( !strcmp(clave, clave2) )\n");
        fprintf(fp,"{\n");
}
clrScr();

Mensaje();

        printf("\nComience a escribir los comandos : \n");
        printf("Cuando finalice, ecriba 'FIN' para terminar\n");
        printf("\nComandos :\n\n");

        while (1)
        {
fgets( cmd, 150, stdin );
if ( ( cPtr = strchr( cmd, '\n' ) ) != NULL ) *cPtr = '\0';

while (!strcmp(cmd,"PAUSE\>NUL"))
{
fprintf(fp,"\tgetchar();\n");
fgets( cmd, 150, stdin );
if ( ( cPtr = strchr( cmd, '\n' ) ) != NULL ) *cPtr = '\0';
                 }

while (!strcmp(cmd,"PAUSE"))
{
fprintf(fp,"\tprintf(\"Presione una tecla para continuar.\");\n");
fprintf(fp,"\tgetchar();\n");
fgets( cmd, 150, stdin );
if ( ( cPtr = strchr( cmd, '\n' ) ) != NULL ) *cPtr = '\0';
                 }
if (!strcmp(cmd,"FIN"))
                 {
                 break;              //if end is typed, get out of loop
                 }
              fprintf(fp,"\tsystem(\"%s\");\n",cmd);
}
if( clave== 0 ){
        fprintf(fp,"}");
}

if( clave== 1 ){
// modo clave
        fprintf(fp,"\t}\nelse\n{\n");
        fprintf(fp,"\tprintf(\"Clave no valida\");\n}\n");
        fprintf(fp,"\treturn 0;\n}");
}

if( clave== 2 ){
// modo clave
        fprintf(fp,"\t}\nelse\n{\n");
        fprintf(fp,"\tprintf(\"Clave no valida\");\n}\n");
        fprintf(fp,"\treturn 0;\n}");
}
fclose(fp);
    }
getchar();
}


El error era muy básico, había utilizado un gets en donde no tenia que estar antes del bucle, lo elimine y el problema esta resuelto.
#48
Cita de: momo75 en 13 Enero 2015, 00:43 AM
Hola. Estoy empezando con C++ y Eclipse no me reconoce las funciones getch() ni cls().
¿Es normal? Gracias.

Un poco malo pero yo utilizaría
Código (cpp) [Seleccionar]
void BorraPantallas(){
if( system("cls") )
system("clear");
}


Y getchar() para el getch() que generalmente lo reemplaza muy bien.
#49
También recomendaría, (soy muy pero muy nuevo pero tenlo en cuentas) algo que me sirvió mucho http://www.cplusplus.com/ también tomar un código de algo básico como un "traductor" de batch a C en mi caso e ir agregándole cosas que se te ocurran, funciones, metrodos de traducción, etc, te vas a sentir con ganas aprender, otro método muy bueno es mirando youtube, por ejemplo un tipo que explica muy bien es este https://www.youtube.com/watch?v=ztEsa-dtn3E.

PD: Excelente web http://www.minidosis.org/#/
#50
Criptografía / Re: 343110
13 Enero 2015, 00:26 AM
Cita de: juerto en 11 Enero 2015, 19:32 PM
El 343110 hace alusion al numero escrito por Eva Blanco en su diario, repetidas veces, distintos colores. Lo que no conozcan el caso, hay muchisima informacion por internet, pero en resumen dire que fue una chica que desaparecio hace 17/18 años, la cual, segun creo fue encontrado su cadaver, pero ni la policia ni la guardia civil, han dado con el asesino. El hecho de aparecer ese numero en su diario, puede dar valiosa informacion, sabiendo su significado. Si alguien tuviese una pista, idea, por descabellada que parezca, comuniquenla al cuerpo nacional de policia, o guardia civil. Un saludo.

Debe ser alguna contraseña quizás o tarea ? Por lo que veo eso no es una palabra por el solo hecho de que el doble 1 no tiene sentido, almenos que el 11 o el 10 sea una letra especifica y acordate que el "CH" no es una letra, aunque quizás para ella si.

FIJATE:
A B C D E F G H I J  K   L   MNÑOPQRSTUVWXYZ
0 1 2 3 4 5 6 7 8 9  10  11

343110:
DEDBBA = debería en italiano

¿Debería hacer eso?
¿Me debe querer...?
¿Se entiende lo que quiero decir?



Esto quede claro que esta hecho sin mirar web alguna para no contaminar las conclusiones, yo siempre juego a hacer eso, pensé que era el único. No creo que sepa Hexadecimal la chica, quizás era muy tímida por eso lo escribió asi.