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

 

 


Tema destacado: Introducción a Git (Primera Parte)


  Mostrar Mensajes
Páginas: 1 2 [3] 4 5 6
21  Programación / Programación C/C++ / Re: No me compila en Codeblocks c++ en: 18 Noviembre 2014, 22:45 pm
Gracias zShackra tenia un caracter no permitido en uno de los nombres de las capetas de la ruta. Se puede con espacios pero no con ese tipo de catacteres. En el caso mio tenia '/'. Muchas gracias nuevamente.
22  Programación / Programación C/C++ / Re: No me compila en Codeblocks c++ en: 18 Noviembre 2014, 21:15 pm
Si yo se lo que dice, lo que no entiendo es porque, si yo formatie el disco C donde se instala el SO y los programas y yo todos los archivos los tengo en el disco D. Ademas antes de formatearlo estaba funcionando bien y estaba distribuido de la misma manera.

 :huh: :huh: :huh:
23  Programación / Programación C/C++ / No me compila en Codeblocks c++ en: 18 Noviembre 2014, 20:55 pm
Buenas noches,
Formatie el pc y quiero instalar de nuevo codeblocks para programar en c++
pero luego de instalarlo, trate de compilar un archivo y no me fue posible.
Me sale el siguiente error:

Citar
programitas\VECTORS\Vector-string.o"
mingw32-g++.exe: error: D:\Personal\PROGRAMACION C/C++\SOLO---C++\Mis programitas\VECTORS\Vector-string.cpp: No such file or directory
mingw32-g++.exe: fatal error: no input files
compilation terminated.
Process terminated with status 1 (0 minute(s), 0 second(s))
1 error(s), 0 warning(s) (0 minute(s), 0 second(s))

Me descargue e instale la version de codeblocks 13.12 con MinGw.

En settings - compiler me detecta el GNU GCC Compiler.

En settings - compiler en la pestana toolchain excecutables le doy auto-detect y me detecta el MinGw

Citar
C:\Program Files (x86)\CodeBlocks\MinGW

Entonces no se porque me sale el error, si alguien me puede colaborar lo agradeceria mucho.  :huh:
24  Programación / Programación C/C++ / Re: Punteros a estructuras...??? en: 11 Noviembre 2014, 19:24 pm
Muchas gracias a ambos por sus respuestas...

eferion respecto a liberar memoria con delete, tengo entendido que siempre se debe realizar para que dicha memoria utilizada se pueda reutilizar por asi decirlo y evitar el desbordamiento (overflow), para asi evitar que el programa colapse. y segun lei se debe hacer asi:

Código
  1. delete [] (Nombre puntero);

Estoy en lo correcto?...eso es cuando tengo un arreglo de lo contrario solo seria :

Código
  1. delete (Nombre puntero);
25  Programación / Programación C/C++ / Punteros a estructuras...??? en: 11 Noviembre 2014, 04:38 am
Buenas por aqui otra vez jejeje..tratando de resolver dudas...
Estoy aprendidendo y leyendo acerca de los punteros...
Mi duda surge cuando quiero utilizar los punteros con estructuras..

Código
  1. #include <iostream>
  2. using std::cout;
  3. using std::cin;
  4. using std::endl;
  5.  
  6. struct Estructura
  7. {
  8.     string nombre;
  9.     int Edad;
  10. };
  11.  
  12. int main()
  13. {
  14.    Estructura persona[2];  
  15.  
  16.    Estrucputa *ptr_persona = NULL; // Declaro puntero y lo inicializo
  17.  
  18.    // Hasta aqui todo va bien, pero como asigno el nombre y la edad que se
  19.    // pida al usuario para llenar el arreglo persona[2]
  20.  
  21.    // Normalmente sin punteros seria asi:
  22.  
  23.   for (int i=0 ; i<2 ; i++)
  24.   {
  25.       cout << "Ingrese nombre: ";
  26.       getline(cin,persona[i].nombre);
  27.       cout << "Ingrese edad: ";
  28.       cin >> persona[i].edad;
  29.       cin.ignore();
  30.   }
  31.  
  32.  // Y para imprimirlo seria:
  33.  
  34.   for (int i=0 ; i<2 ; i++)
  35.   {
  36.       cout << persona[i].nombre << endl;
  37.       cout << persona[i].edad << endl;
  38.   }
  39. }
  40.  

  Como haria esto con punteros??...Quiero ver como hacerlo con un ejemplo sencillo a ver si
  Puedo lograr algo mas complicado y entender como funcionan los punteros con las estructuras.
  He leido bastante pero no he visto un ejemplo concreto donde pueda ver esto que quiero hacer...

Muchas Gracias a quien me pueda colaborar, ando de autodidacta y no tengo a quien preguntar
en mi entorno acerca de estos temas.

EDITO: Es mediante la asignacion dinamica de memoria (eso creo), seguire leyendo, igualmente si alguien me  puedo dar una breve explicacion lo apreciaria mucho...
26  Sistemas Operativos / GNU/Linux / Re: Archivos temporales OpenSUSE 13.1 en: 9 Noviembre 2014, 18:41 pm
Hola,
Hey gracias por la info...Encontre la manera de solucionarlo... dejo aca la solucion:

Abrir la terminal y poner:

Citar
sed 's/^d/D/' /usr/lib/tmpfiles.d/tmp.conf > /etc/tmpfiles.d/tmp.conf

Reinician el sistema y veran que se borran los archivos en en la carpeta /tmp y en /var/tmp...apareceran unos pocos los que se inician cuando arranca el sistema, lo normal
27  Programación / Programación C/C++ / Agenda C++ con estructuras en: 8 Noviembre 2014, 05:44 am
Buenas
Por acá dejo el código de la agenda que estoy haciendo....Solo me falta la parte de Eliminar...
Quisiera que me dieran ideas de como hacerlo, solo me falta eso...el resto funciona perfecto...lo pueden compilar y verán que funciona...(no guarda los datos luego de cerrar el programa..Ese es el paso siguiente que quiero hacer y adicional a eso usar vectores pero lo haré mas adelante) por ahora quiero terminar este de esta manera.

Esta hecho y compilado en codeblocks en linux, si utilizan windows y sale algún error posiblemente sea el de system("clear").... en windows se cambia por system("cls") y ya.

Código
  1. //----------------------- LIBRERIAS -----------------------------------//
  2. #include <iostream>
  3. using std::cout;
  4. using std::cin;
  5. using std::endl;
  6.  
  7. #include <cstring>
  8. using std::string;
  9.  
  10. #include <cstdlib>   // system("clear")
  11.  
  12. //----------------------- PROTOTIPO FUNCIONES --------------------------//
  13.  
  14. void menu();                                       // Muestra el menu principal
  15. void Ingresar(struct Datos Persona[],int,int);     // Ingreso de contactos
  16.  
  17. // Funciones para mostrar la info de los contactos
  18. void Mostrar(struct Datos Persona[],int);           // Muestra todos los contactos
  19. void ImprFicha(struct Datos Persona[],int,int);     // Imprime la informacion de los contactos
  20.  
  21. // Funciones de Busqueda
  22. void Buscar(struct Datos Persona[],int);          // Busqueda con menu
  23. void BuscaFicha(struct Datos Persona[],int);      // Buscar por # Ficha
  24. void BuscaNombre(struct Datos Persona[],int);     // Buscar por Nombre
  25. void BuscaTel(struct Datos Persona[],int);       // Buscar por Telefono
  26.  
  27. // Funcion Modificar
  28. void Modificar(struct Datos Persona[],int);
  29.  
  30. //----------------------- ESTRUCTURAS ----------------------------------//
  31. struct Cumpleanos
  32. {
  33.    string Nacimiento;
  34. };
  35.  
  36. struct Datos
  37. {
  38.    string Nombre;
  39.    string Direccion;
  40.    string Telefono;
  41.  
  42.    Cumpleanos Fecha;
  43. };
  44.  
  45. //------------------------ FUNCION PRINCIPAL ----------------------------//
  46. int main()
  47. {
  48.    const int LEN = 2;   // Cantidad de Contactos a guardar
  49.  
  50.    Datos Persona[LEN];  // Defino la variable Persona del tipo Datos (estructura)
  51.  
  52.    int index = 0;  // Variable para el Indice cada contacto
  53.    int opcion;     // Opcion Menu principal
  54.    bool salir;     // Variable Para salir del menu principal
  55.  
  56.    do
  57.    {
  58.        menu();  // Llamada funcion menu();
  59.  
  60.        cout << "\n\t Elija la opcion: ";
  61.        cin >> opcion;
  62.        cin.ignore();
  63.  
  64.        switch (opcion)    // Menu principal
  65.        {
  66.            case 1:
  67.                    system("clear");
  68.                    Ingresar(Persona,index,LEN); // Llamo funcion Ingresar();
  69.                    index++;
  70.                    break;
  71.            case 2:
  72.                    system("clear");
  73.                    Mostrar(Persona,index);  // Llamo funcion Mostrar();
  74.                    break;
  75.            case 3:
  76.                    system("clear");
  77.                    Buscar(Persona,index);  // LLamo funcion Buscar();
  78.                    break;
  79.            case 4:
  80.                    system("clear");
  81.                    Modificar(Persona,index);
  82.                    break;
  83.            case 6:
  84.                    salir = true;
  85.                    break;
  86.            default:
  87.                    system("clear");
  88.                    cout << "Ingrese Opcion valida\n\n";
  89.                    break;
  90.        }
  91.    }while(salir == false);
  92.  
  93.    return 0;
  94. }
  95.  
  96. //--------------------- FUNCIONES ---------------------------//
  97.  
  98. /// FUNCION MENU ///
  99. void menu()
  100. {
  101.    cout << "\t AGENDA INFORMATIVA \n\n";
  102.  
  103.    cout << "\t 1. Ingresar." << endl;
  104.    cout << "\t 2. Mostrar todos." << endl;
  105.    cout << "\t 3. Buscar contacto." << endl;
  106.    cout << "\t 4. Modificar." << endl;
  107.    cout << "\t 5. Eliminar." << endl;
  108.    cout << "\t 6. SALIR." << endl;
  109. }
  110.  
  111. /// FUNCION INGRESAR ///
  112.  
  113. void Ingresar(struct Datos Persona[], int numero, int TAM)  // Paso como parametros la estructura,index y LEN
  114. {
  115.    if(numero < TAM)  // Comparo el numero de contactos con la cantidad que se pueden guardar
  116.    {
  117.        cout << "\t Igresar Datos Ficha: #" << numero << endl << endl;
  118.  
  119.        cout << " Nombre: ";
  120.        getline(cin,Persona[numero].Nombre);
  121.        cout << " Direccion: ";
  122.        getline(cin,Persona[numero].Direccion);
  123.        cout << " Telefono: ";
  124.        getline(cin,Persona[numero].Telefono);
  125.        cout << " Fecha Nacimiento (DD/MM/AAAA): ";
  126.        getline(cin, Persona[numero].Fecha.Nacimiento);
  127.        cout << endl << endl;
  128.    }
  129.    else
  130.        cout << "LLEGO AL LIMITE DE CONTACTOS PERMITIDOS" << endl << endl;
  131. }
  132.  
  133. /// FUNCION IMPRFICHA ///
  134. void ImprFicha(struct Datos Persona[], int x) // x ==> paso parametro iterador i  // Funcion Imprimir info
  135. {
  136.    cout << "\t Informacion ficha: #" << x << endl << endl;
  137.    cout << " Nombre: " << Persona[x].Nombre << endl;
  138.    cout << " Direccion: " << Persona[x].Direccion << endl;
  139.    cout << " Telefono: " << Persona[x].Telefono << endl;
  140.    cout << " Fecha Nacimiento (DD/MM/AAAA): " << Persona[x].Fecha.Nacimiento;
  141.    cout << endl << endl;
  142. }
  143.  
  144. /// FUNCION MOSTRAR ///
  145. void Mostrar(struct Datos Persona[], int numero)
  146. {
  147.    for(int i=0 ; i<numero ; i++)
  148.    {
  149.        ImprFicha(Persona,i);     // Llamada Funcion para imprimir la info
  150.    }
  151.    cin.get();        // Pausa
  152.    system("clear");  // Lipmpia
  153. }
  154.  
  155. /// FUNCION BUSCAR ///
  156. void Buscar(struct Datos Persona[], int numero)
  157. {
  158.    bool exit;  // variable para salir del menu Busqueda
  159.    do
  160.    {   // Menu de Busqueda
  161.        cout << "\t BUSQUEDA: \n\n";
  162.        cout << " 1. # Ficha" << endl;
  163.        cout << " 2. Nombre" << endl;
  164.        cout << " 3. Telefono" << endl;
  165.        cout << " 4. SALIR" << endl << endl;
  166.  
  167.        unsigned int op;
  168.        cout << " Indique Opcion: ";
  169.        cin >> op;
  170.        cin.ignore();
  171.        cout << endl;
  172.  
  173.        switch(op)  // Opciones Menu de Busqueda
  174.        {
  175.            case 1:
  176.                system("clear");
  177.                BuscaFicha(Persona,numero);  // Llamada funcion BuscaFicha(); ==> Busca por # de Ficha
  178.                break;
  179.            case 2:
  180.                system("clear");
  181.                BuscaNombre(Persona,numero); // Llamada funcion BuscaNombre(); ==> Busca por Nombre
  182.                break;
  183.            case 3:
  184.                system("clear");
  185.                BuscaTel(Persona,numero); // Llamada funcion BuscaTel(); ==> Busca por Telefono
  186.                break;
  187.            case 4:
  188.                exit = true;
  189.                break;
  190.  
  191.            default:
  192.                cout << "ERROR, DIGITE OPCION CORRECTA\n";
  193.                break;
  194.        }
  195.    }while(exit == false);
  196.  
  197.    system("clear");     // Limpiar
  198. }
  199.  
  200. /// FUNCION BUSCAFICHA ///
  201. void BuscaFicha(struct Datos Persona[], int numero)
  202. {
  203.    cout << "\t Busqueda por ficha: \n\n";
  204.  
  205.    unsigned int Ficha;
  206.    cout << " Digite # Ficha: ";
  207.    cin >> Ficha;
  208.    cin.ignore();
  209.    cout << endl;
  210.  
  211.    for(int i=0 ; i<numero ; i++)
  212.    {
  213.        if(Ficha == i)
  214.        {
  215.            ImprFicha(Persona,i);
  216.        }
  217.    }
  218.    cin.get();        // Pausa
  219.    system("clear");  // Limpia
  220. }
  221.  
  222. /// FUNCION BUSCANOMBRE ///
  223. void BuscaNombre(struct Datos Persona[], int numero)
  224. {
  225.    cout << "\t Busqueda por nombre: \n\n";
  226.  
  227.    string nomb;
  228.    cout << " Digite el nombre: ";
  229.    getline(cin,nomb);
  230.    cout <<  endl;
  231.  
  232.    for(int i=0 ; i<numero ; i++)
  233.    {
  234.        if(nomb == Persona[i].Nombre)
  235.        {
  236.            ImprFicha(Persona,i);
  237.        }
  238.    }
  239.    cin.get();
  240.    system("clear");
  241. }
  242.  
  243. /// FUNCION BUSCAFECHA ///
  244. void BuscaTel(struct Datos Persona[], int numero)
  245. {
  246.    cout << "\t Busqueda por Telefono: \n\n";
  247.  
  248.    string tel;
  249.    cout << "Digite Telefono: ";
  250.    getline(cin,tel);
  251.    cout << endl;
  252.  
  253.    for(int i=0 ; i<numero ; i++)
  254.    {
  255.        if(tel == Persona[i].Telefono)
  256.        {
  257.            ImprFicha(Persona,i);
  258.        }
  259.    }
  260.    cin.get();
  261.    system("clear");
  262. }
  263.  
  264. /// FUNCION MODIFICAR ///
  265. void Modificar(struct Datos Persona[], int numero)
  266. {
  267.    cout << " Modificar o Editar la informacion: \n\n";
  268.  
  269.    string tel;
  270.    cout << "Digite Telefono: ";
  271.    getline(cin,tel);
  272.    cout << endl;
  273.  
  274.    for(int i=0 ; i<numero ; i++)
  275.    {
  276.        if(tel == Persona[i].Telefono)
  277.        {
  278.            ImprFicha(Persona,i);
  279.  
  280.            cout << " Nombre: ";
  281.            getline(cin,Persona[i].Nombre);
  282.            cout << " Direccion: ";
  283.            getline(cin,Persona[i].Direccion);
  284.            cout << " Telefono: ";
  285.            getline(cin,Persona[i].Telefono);
  286.            cout << " Fecha Nacimiento (DD/MM/AAAA): ";
  287.            getline(cin, Persona[i].Fecha.Nacimiento);
  288.            cout << endl << endl;
  289.        }
  290.    }
  291. }
  292.  
  293.  
28  Programación / Programación C/C++ / Re: Ayuda con el operador != en: 8 Noviembre 2014, 04:19 am
Hola,

En el While, en la ultima parte de la condicion te falto especificar el indice del arreglo
(posicionSatelite[2]!=MovimientoEsferico) ==> (posicionSatelite[2]!=MovimientoEsferico[2])...

Si no es eso...mmm a modo de pregunta...Estas comparando los valores de los indices de cada arreglo....el arreglo float posicionSatelite[12] guarda 12 valores, y el array float MovimientoEsferico[3] guarda 3 y tu solo quieres comprar o decir que mientras sean diferente (!=) los primeros 3 valores de esos arreglos haga:

api.getMyZRState(posicionSatelite);
api.setPositionTarget(MovimientoEsferico);

Es asi lo que intentas hacer?....si es asi porque el arreglo de posicioSatelite[] tiene 12 valores no serian innecesarios, y bastarian los mismos 3 que estas comparando...

 
29  Programación / Programación C/C++ / Re: Archivos .txt y estructuras c++ en: 7 Noviembre 2014, 02:41 am
Muchas gracias Flakito81  , probe lo de el bool salir = true en el do..while... funciono perfecto.

Estoy viendo como como leer el archivo hasta que encuentre un simbolo determinado por ejemplo un punto (.) para que me leea la informacion del contacto, ya que quiero agregar informacion a la estructura y en un solo renglon no queda bien.

Quedaria algo asi: Leer el archivo hasta el punto y que comprare el nombre con el introducido por el usuario, y si es igual que imprima esa informacion hasta el punto y si no que siga leyendo el archivo...
Pero no se de que manera implementarlo en el codigo, la sintaxis...  :huh:

Nombre: fulanito
edad: 24 años. <-----(.) aqui que lea el punto e imrpima si es igual al nombre introducido por el usuario o siga leyendo si es lo contrario.

Muchas Gracias seguire averiguando como hacerlo, algun consejo lo agradeceria.

30  Programación / Programación C/C++ / Archivos .txt y estructuras c++ en: 3 Noviembre 2014, 22:00 pm
Buenas tardes, me encuentro realizando una agenda de contactos con un menu que me permita anadir, ver contacto, editar, eliminar, salir.

Pues bien ya comence con la primera opcion que es anadir un contacto, y lo he guardado en un archivo de texto. Ahora quiero que al cerrar el programa y vuelva a entrar le pueda dar la opcion de ver contacto y que me lo muestre en pantalla.

Se que con la funcion ifstream puedo leer el archivo y comparando un string que le pida al usuario con el string que me idica el nombre para encontrarlo... pero, Como hago para que leea el archivo y me busque el contacto que le indique, y sobre todo que me lo muestre en pantalla??...

Código
  1. #include <iostream>
  2. #include <fstream>   // read and write outfile .txt
  3. #include <cstring>
  4. #include <cstdlib>   // To use system("clear")
  5.  
  6. using std::ofstream;  // write outfile .txt
  7. using std::ifstream;  // read outfile .txt
  8. using std::ios;
  9. using std::cout;
  10. using std::cin;
  11. using std::endl;
  12. using std::string;
  13.  
  14. const int LEN = 2;
  15.  
  16. void Addd(struct Data people[], int reg);  // add_contact_funtion
  17.  
  18. struct Data
  19. {
  20.   string Naame;
  21.   unsigned int age;
  22. };
  23.  
  24. int main()
  25. {
  26.   Data people[LEN];  //struct
  27.  
  28.   cout << endl;
  29.   cout << "\t ////////  ////////  //        //  /////////  //////////  //////// " << endl;
  30.   cout << "\t //        //    //  ////      //      //     //      //  //       " << endl;
  31.   cout << "\t //        //    //  //  //    //      //     //      //  //       " << endl;
  32.   cout << "\t //        //    //  //    //  //      //     //////////  //       " << endl;
  33.   cout << "\t //        //    //  //      ////      //     //      //  //       " << endl;
  34.   cout << "\t ////////  ////////  //        //      //     //      //  //////// " << endl;
  35.   cout << endl;
  36.   cout << "CONTACTS" << endl << endl;
  37.  
  38.   cout << "1. Add contact." << endl << endl;
  39.   cout << "2. Show contact." << endl << endl;
  40.   cout << "3. Exit" << endl << endl;
  41.  
  42.   int regi_ter = 0;
  43.  
  44.   int option;
  45.   cout << "Numero de operacion a realizar: ";
  46.   cin >> option;
  47.   cin.ignore();
  48.   cout << endl;
  49.  
  50.   switch (option)
  51.   {
  52.      case 1:
  53.      system("clear");
  54.      Addd(people,regi_ter);
  55.      break;
  56.  
  57.      case 2:
  58.         cout << "Show contact";
  59.      break;
  60.  
  61.      case 3:
  62.         cout << "EXIT";
  63.         exit(0);
  64.      break;
  65.  
  66.      default:
  67.      cout << "Operation invalid.";
  68.      system("clear");
  69.      main();
  70.      break;
  71.   }
  72.  
  73.   return 0;
  74. }
  75.  
  76. /// ADD_CONTACT_FUNTION ///
  77.  
  78. void Addd(struct Data people[], int reg)
  79. {
  80.   cout << "Write the contact information.";
  81.   cout << endl << endl;
  82.   cout << "1. Name: ";
  83.   getline(cin,people[reg].Naame);
  84.   cout << endl;
  85.   cout << "6. Age: ";
  86.   cin >> people[reg].age;
  87.   cin.ignore();
  88.   cout << endl;
  89.  
  90.   char sn[5];
  91.  
  92.   do
  93.   {
  94.      cout << "Add contact in the agenda? [S/N]: ";
  95.      cin >> sn;
  96.  
  97.      if((strcmp(sn,"s")==0)||(strcmp(sn,"S")==0))
  98.      {
  99.         ofstream archivo;
  100.         archivo.open("ContactsAgenda.txt", ios::app);
  101.         archivo << "Name: " << people[reg].Naame << endl;
  102.         archivo << "Age: " << people[reg].age << endl;
  103.         archivo << endl << "---------------------------------------------" << endl << endl;
  104.         archivo.close();
  105.  
  106.         reg++;
  107.  
  108.         cout << endl << "Contacto anadido." << endl;
  109.  
  110.         system("clear");
  111.         main();
  112.      }
  113.  
  114.      if((strcmp(sn,"n")==0)||(strcmp(sn,"N")==0))
  115.      {
  116.         cout << endl << "Contacto no anadido." << endl;
  117.  
  118.         system("clear");
  119.         main();
  120.      }
  121.   }while ((sn!="S")||(sn!="s")||(sn!="N")||(sn!="n"));
  122. }
  123.  

Muchas gracias....Espero que me puedan entender.

PD: Quiero hacerlo sin punteros,  clases o vectores... Luego la pienso hacer de esa manera, por ahora solo con estructuras.
Páginas: 1 2 [3] 4 5 6
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines