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

 

 


Tema destacado: (TUTORIAL) Aprende a emular Sentinel Dongle By Yapis


  Mostrar Temas
Páginas: 1 2 3 [4] 5 6
31  Programación / Programación C/C++ / Generar un mapa aleatorio 2D con puntos en: 8 Marzo 2014, 01:12 am
/ Elimine el post porque me di cuenta como iba a acabar en un lio eso
32  Foros Generales / Foro Libre / Juego de Tronos 4ta Temporada (abrebocas) subtitulado en: 3 Marzo 2014, 05:01 am
Aqui esta un adelanto, contado por los actores de esta espectacular serie

33  Foros Generales / Foro Libre / Efecto Pendulo en: 3 Marzo 2014, 01:29 am
Simple video que quise compartir

34  Programación / Programación C/C++ / Modificar un archivo de texto en: 27 Febrero 2014, 22:38 pm
Hola, este es mi codigo

Código
  1. #include <stdio.h>
  2. #include <string.h>
  3.  
  4. int main( int argc, char* args[] )
  5. {
  6.    FILE *ptr;
  7.    fpos_t pos;
  8.    char palabra_usuario[50] = {};
  9.    char palabra_archivo[50] = {};
  10.    char ch;
  11.    int n = 0;
  12.    bool encontrado = false;
  13.  
  14.    ptr = fopen("prueba.txt", "r+");
  15.  
  16.    if( ptr )
  17.    {
  18.        printf("Escriba lo que desea modificar: ");
  19.        fgets(palabra_usuario, 50, stdin);
  20.  
  21.        while( !feof(ptr) || !encontrado )
  22.        {
  23.            fgetpos( ptr, &pos );
  24.  
  25.            do
  26.            {
  27.                ch = fgetc(ptr);
  28.                palabra_archivo[n++] = ch;
  29.            }while( ch != '\n' );
  30.  
  31.            palabra_archivo[n] = '\0';
  32.            n = 0;
  33.  
  34.            if( strcmp(palabra_usuario, palabra_archivo) == 0 )
  35.            {
  36.                printf("Su palabra: %s Palabra encontrada: %s\n\n", palabra_usuario, palabra_archivo);
  37.                printf("Escriba por lo que lo quiera cambiar: ");
  38.                fgets(palabra_usuario, 50, stdin);
  39.                fsetpos(ptr,&pos);
  40.                fprintf(ptr, "%s", palabra_usuario);
  41.                encontrado = true;
  42.            }
  43.        }
  44.  
  45.        if( !encontrado )
  46.            printf("No se encontro esa palabra");
  47.    }
  48.  
  49.    fclose(ptr);
  50.  
  51.    return 0;
  52. }
  53.  
  54.  

El programa encuentra efectivamente la palabra del archivo de texto (Nota: el archivo de texto ya existe), pero cuando intento agregar la nueva palabra para modificarla el programa muestra un error.

Gracias por la ayuda de antemano.
35  Programación / Programación C/C++ / Tutoriales SDL 2.0 en: 24 Febrero 2014, 00:35 am
Buenas aqui les dejo 2 links sobre tutoriales de SDL 2.0, lamentablemente estan en ingles, aun asi no creo que sea mucho problema si todos los comandos en programacion son en ese idioma asi que deberian estar familiarizados con el ;)

http://twinklebeardev.blogspot.com/p/sdl-20-tutorial-index.html

http://lazyfoo.net/tutorials/SDL/index.php
36  Foros Generales / Foro Libre / Explicando las 10 dimensiones en: 20 Febrero 2014, 05:29 am
Hola que tal aqui comparto un video interesante que encontré, si alguien llega a entender bien la parte de la 6ta dimension se los agradeceria que lo explicaran  ;D

37  Foros Generales / Foro Libre / Nosotros todo el tiempo estamos sumando infinitos en: 16 Febrero 2014, 19:07 pm
Leyendo por encima sobre Teoria de Conjuntos, George Cantor decia que existen infinitos mas grandes que otros, hasta que me percate de algo ( ojo, no se si esto lo explica él ), imaginense un rango entre 0 y 1, sabiendo que los numeros reales son inifinitos, se podria escribir 0.00000000009 y aun asi no llegaria a 0 al igual que 0.999999999 y no llegariamos a uno, entonces podemos decir que tanto 0 como 1 vienen a representar menos infinito y mas infinito respectivamente.



Espero que tengan alguna opinion respecto a esto =)
38  Foros Generales / Foro Libre / ¿ Es nuestro universo un simulador generado por un "Supercomputador" ? en: 15 Febrero 2014, 00:38 am
Buenas noches amigos, abri este topico porque me entró una curiosidad, ustedes veran que el hombre a traves del tiempo con su manipulacion del computador ha logrado diseñar simuladores cada vez mas sorprendentes, y luego de ver el programa llamado "El juego de la vida" y la forma en que funciona me puse a pensar, ¿Seria posible contar con un computador con una cantidad de memoria lo suficientemente grande y diseñar un simulador con leyes parecidas al "Juego de la vida" y que se creasen condiciones ideales para que esos "puntos" (digamos que serian particula, por asi decirlo), y dejar que ese programa evolucione indefinidamente, hasta tal punto que se formen estructuras tan complicadas que simulen vidas primitivas dentro de ese universo, y aun mas adelante seres "inteligentes" , y mas sorprendente aun esos seres pudiesen crear herramientas, tales como una computadora y a su vez ellos hacer simuladores , y su simulaciones sucesivamente? Imagino que la cantidad de memoria seria abismal y contar con un tiempo exageradamente extenso, pero mi punto es ese, si teóricamente se pudiese diseñar algo asi ¿ No creen que nosotros provengamos de algun "Supercomputador" el cual nos simula, y a su vez ese ente que nos programo seria tambien simulado por un "Supercomputador" mas grande, y asi indefinidamente? Entonces yo llego a mi conclusion que cada ente en su universo local tiene un creador en universo superior, todo esto lo pense por mi analogia de como nuestro simulador podria diseñar otros simuladores.

Espero alguien tenga una idea al respecto a esto y me corrija en algo si estoy fallando en mi analisis =)
39  Programación / Programación C/C++ / Problema manejo de Pila en: 12 Febrero 2014, 23:47 pm
Hola que tal estoy teniendo algunos problemas para mostrar los valores de una pila una vez se ha borrado un valor, y posteriormente luego cuando voy a borrar los nodos restantes. Aqui va el codigo, espero una ayuda gracias:

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. typedef struct nodo
  5. {
  6.    int num;
  7.    struct nodo *sig;
  8. }Nodo;
  9.  
  10. typedef struct pila
  11. {
  12.    Nodo *primero;
  13.    Nodo *ultimo;
  14. }Pila;
  15.  
  16. void resetPila( Pila * );
  17. int estaVacia( Pila * );
  18. void agregarValor( Pila *, int );
  19. void mostrarPila( Pila * );
  20. int borrarTope( Pila * );
  21. void borrarTodo( Pila * );
  22.  
  23. int main( int argc, char* args[] )
  24. {
  25.    Pila miPila;
  26.    int valor, opcion;
  27.  
  28.    resetPila( &miPila );
  29.  
  30.    do
  31.    {
  32.        system("cls");
  33.        printf("Ingrese una opcion\n");
  34.        printf("\n1.- Ingresar numero a la pila");
  35.        printf("\n2.- Mostrar numeros en la pila");
  36.        printf("\n3.- Eliminar tope de la pila");
  37.        printf("\n4.- Salir\n\n");
  38.        scanf("%d", &opcion);
  39.  
  40.        switch( opcion )
  41.        {
  42.            case 1:
  43.                printf("Ingrese el numero para la pila: ");
  44.                scanf("%d", &valor);
  45.                agregarValor( &miPila, valor );
  46.                system("pause");
  47.            break;
  48.  
  49.            case 2:
  50.                if( estaVacia( &miPila ) == 1 )
  51.                    printf("\nLa pila esta vacia");
  52.                else
  53.                    mostrarPila( &miPila );
  54.                system("pause");
  55.            break;
  56.  
  57.            case 3:
  58.                if( estaVacia( &miPila ) == 1 )
  59.                    printf("\nLa pila esta vacia");
  60.                else
  61.                    printf("Se elimino el numero %d\n\n", borrarTope( &miPila ));
  62.                system("pause");
  63.            break;
  64.  
  65.            case 4:
  66.                if( estaVacia( &miPila ) == 0 )
  67.                    borrarTodo( &miPila );
  68.            break;
  69.        }
  70.  
  71.    }while( opcion != 4 );
  72.  
  73.  
  74. return 0;
  75. }
  76.  
  77. void resetPila( Pila *miPila )
  78. {
  79.    miPila->primero = NULL;
  80.    miPila->ultimo = NULL;
  81. }
  82.  
  83. int estaVacia( Pila *miPila )
  84. {
  85.    if( miPila->primero == NULL )
  86.        return 1;
  87.    else
  88.        return 0;
  89. }
  90.  
  91. void agregarValor( Pila *miPila, int valor )
  92. {
  93.    Nodo *nodo;
  94.  
  95.    nodo = (Nodo *)malloc(sizeof(Nodo));
  96.    nodo->num = valor;
  97.    nodo->sig = NULL;
  98.  
  99.    if( estaVacia( miPila ) == 1 )
  100.        miPila->primero = nodo;
  101.    else
  102.        miPila->ultimo->sig = nodo;
  103.    miPila->ultimo = nodo;
  104.  
  105. }
  106.  
  107. void mostrarPila( Pila *miPila )
  108. {
  109.    Nodo *nodo;
  110.  
  111.    for( nodo = miPila->primero; nodo != NULL; nodo = nodo->sig )
  112.        printf("%d\n", nodo->num);
  113. }
  114.  
  115. int borrarTope( Pila *miPila )
  116. {
  117.    Nodo *nodo;
  118.    int valor;
  119.  
  120.    if( miPila->ultimo == miPila->primero )
  121.    {
  122.        valor = miPila->ultimo->num;
  123.        free( miPila->ultimo );
  124.    }
  125.    else
  126.    {
  127.        nodo = miPila->primero;
  128.  
  129.        while( nodo->sig != miPila->ultimo )
  130.            nodo = nodo->sig;
  131.  
  132.        valor = miPila->ultimo->num;
  133.        free( miPila->ultimo );
  134.        miPila->ultimo = nodo;
  135.    }
  136.  
  137.    return valor;
  138. }
  139.  
  140. void borrarTodo( Pila *miPila )
  141. {
  142.    Nodo *nodo;
  143.  
  144.    nodo = miPila->primero->sig;
  145.  
  146.    while( miPila->ultimo != NULL )
  147.    {
  148.        free( miPila->primero );
  149.        miPila->primero = nodo;
  150.        if( nodo != miPila->ultimo )
  151.            nodo = nodo->sig;
  152.    }
  153. }
  154.  
  155.  
40  Programación / Programación C/C++ / malloc dentro de una funcion en: 18 Diciembre 2013, 18:19 pm
Voy directo al codigo:

Código
  1. void generar( int **arreglo, int fil, int col )
  2. {
  3.    int i;
  4.  
  5.    arreglo = (int **)malloc(fil*sizeof(int *));
  6.  
  7.    for( i = 0; i < fil; i++ )
  8.        arreglo[i] = (int *)malloc(col * sizeof(int));
  9.  
  10. }
  11.  

Ok, luego de haber generado mi arreglo multidimensional y lo quiero mostrar con un ciclo dentro del main, los valores no se muestran sino que sale un error de windows, en cambio si muestro los valores dentro de la misma funcion, si lo hace. Imagino que se deben crear variables temporales solamente dentro de la funcion y por eso no se muestran en el main, y quisiera saber si existe una manera de poder reservar esa memoria y mostrarla en main.

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