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

 

 


Tema destacado: AIO elhacker.NET 2021 Compilación herramientas análisis y desinfección malware


  Mostrar Mensajes
Páginas: 1 ... 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 [29] 30 31 32
281  Programación / Programación C/C++ / Re: El for no me hace su funcion? en: 5 Febrero 2014, 02:31 am
Hola yoel_alejandro gracias por contestar ahora lo leeo
282  Programación / Programación C/C++ / El for no me hace su funcion? (Solucionado) en: 4 Febrero 2014, 21:57 pm
Hola.

Espero que me pueda ayudar con mi duda estoy tratando de hacer métodos de administración, pero al momento de mostrar datos en pantalla no sé qué estoy haciendo mal.

No es un error de sintaxis creo que es mas de lógica pero no entiendo que parte es la que trabaja mal.

El problema que detecto es en el archivo de implementación de Camion.cpp en la función Camion::flistaDeCamiones() en el for cuando intento acceder a la a listaDeCamiones->imprimir(); el primer registro si lo introduce bien pero cuando le agrego otro, el programa se cierra y parece, que borrara el primer registro.

Y eso no me deja seguir con los demás métodos.

he sacado la funcion imprimir fuera del for por solo me registra una ves los datos, y no una secuencia, si lo pongo antes de empezar el for me hace la secuencia pero me repite los ultimos datos las veces que haya registrado un camion.

Lamento preguntar tanto.

//Camion.cpp
Código
  1. #include "Camion.h"
  2. #include <iostream>
  3. #include <iomanip>
  4. #include <string>
  5.  
  6. using namespace std;
  7.  
  8. Camion::Camion (int idCam, int cilindrajeCam, int puertasCam, int anioCam,
  9.                double precioCam, string marcaCam, string modeloCam,
  10.                string colorCam)
  11.                {
  12.                   idCamion = idCam;
  13.                   cilindrajeCamion = cilindrajeCam;
  14.                   nPuertasCamion = puertasCam;
  15.                   anioCamion = anioCam;
  16.                   precioCamion = precioCam;
  17.                   marcaCamion = marcaCam;
  18.                   modeloCamion = modeloCam;
  19.                   colorCamion = colorCam;
  20.  
  21.                   Maximo =100;
  22.                   cantidadDeCamiones =0;
  23.                }
  24. //Funciones set
  25. void Camion::setIdCamion(int idCam)
  26. {
  27.     idCamion = idCam;
  28. }
  29.  
  30. void Camion::setCilindrajeCamion(int cilindrajeCam)
  31. {
  32.     cilindrajeCamion = cilindrajeCam;
  33. }
  34.  
  35. void Camion::setNPuertasCamion(int puertasCam)
  36. {
  37.     nPuertasCamion = puertasCam;
  38. }
  39.  
  40. void Camion::setanioCamion(int anioCam)
  41. {
  42.     anioCamion = anioCam;
  43. }
  44.  
  45. void Camion::setPrecioCamion(double precioCam)
  46. {
  47.     precioCamion = precioCam;
  48. }
  49.  
  50. void Camion::setMarcaCamion(string marcaCam)
  51. {
  52.     marcaCamion = marcaCam;
  53. }
  54.  
  55. void Camion::setModeloCamion(string modeloCam)
  56. {
  57.     modeloCamion = modeloCam;
  58. }
  59.  
  60. void Camion::setColorCamion(string colorCam)
  61. {
  62.     colorCamion = colorCam;
  63. }
  64.  
  65. //Funciones get
  66. int Camion::getIdCamion() const
  67. {
  68.    return idCamion;
  69. }
  70.  
  71. int Camion::getCilindrajeCamion() const
  72. {
  73.    return cilindrajeCamion;
  74. }
  75.  
  76. int Camion::getnPuertasCamion() const
  77. {
  78.    return nPuertasCamion;
  79. }
  80.  
  81. int Camion::getanioCamion()const
  82. {
  83.    return anioCamion;
  84. }
  85.  
  86. double Camion::getPrecioCamion() const
  87. {
  88.       return precioCamion;
  89. }
  90.  
  91. string Camion::getMarcaCamion() const
  92. {
  93.       return marcaCamion;
  94. }
  95.  
  96. string Camion::getModeloCamion() const
  97. {
  98.       return modeloCamion;
  99. }
  100.  
  101. string Camion::getColorCamion() const
  102. {
  103.       return colorCamion;
  104. }
  105.  
  106. //Ingresa un nuevo camion
  107.  
  108. void Camion::ingresarCamion()
  109. {
  110.   listaDeCamiones = new Camion*[Maximo];// arreglo de 100
  111.  
  112.   if (cantidadDeCamiones < Maximo)
  113.   {
  114.     system("cls");
  115.     cout << "Ingrese los datos del camion\n";
  116.     cout << "Ingrese el ID del camion: ";
  117.     cin  >> idCamion;
  118.  
  119.     cout << "Ingrese la Marca del Camion: ";
  120.     cin  >> marcaCamion;
  121.  
  122.     cout << "Ingrese el Modelo del camion: ";
  123.     cin  >> modeloCamion;
  124.  
  125.     cout << "Ingrese el año del Camion: ";
  126.     cin  >> anioCamion;
  127.  
  128.     cout << "Ingrese el cilindraje del camion: ";
  129.     cin  >> cilindrajeCamion;
  130.  
  131.     cout << "Ingrese el numero de puertas: ";
  132.     cin  >>  nPuertasCamion;
  133.  
  134.     cout << "Ingrese el color del camion: ";
  135.     cin  >> colorCamion;
  136.  
  137.     cout << "Ingrese el presio del camion: ";
  138.     cin  >> precioCamion;
  139.  
  140.     listaDeCamiones[cantidadDeCamiones] =
  141.     new Camion(idCamion, cilindrajeCamion,
  142.         nPuertasCamion, anioCamion,
  143.         precioCamion, marcaCamion,
  144.         modeloCamion,colorCamion);
  145.  
  146.     cantidadDeCamiones++;
  147.  
  148.     cout << endl <<"Los datos del camion fueron ingresados correctamente\n";
  149.   }
  150.   else
  151.   {
  152.       system("cls");
  153.       cout << "Ya no hay espacio disponible para mas camiones\n";
  154.   }
  155. }
  156.  
  157. //Muestra los datos del camion
  158. void Camion::flistaDeCamiones()
  159. {
  160.     if (cantidadDeCamiones==0)
  161.     {
  162.       system("cls");
  163.       cout<<"No se a registrado ninguna Camion todavía"<<endl;
  164.     }
  165.       else
  166.       {
  167.           cout<<"..:::Lista de Camiones:::.."<<endl<<endl;
  168.           cout << setw(10)<<"Id Camion"<<setw(15)<<"Modelo"<<setw(15)<<"marca"<<endl;
  169.           cout<<"================================================="<<endl;
  170.  
  171.           //Imprimmir todos los camiones almacenadas en el arreglo
  172.           for (int i=0; i<cantidadDeCamiones; i++)
  173.           {
  174.             listaDeCamiones[i]->imprimir(); //PROBLEMA Y NO LO IDENTIFICO
  175.           }
  176.           cout<<endl<<"*******Fin de la lista **********"<<endl<<endl;
  177.       }
  178. }
  179. //Busca ese camion
  180. int Camion::buscarCamion(int codigo)
  181. {
  182.    for (int i=0; i < cantidadDeCamiones; i++)
  183.    {
  184.        if(listaDeCamiones[i]->getIdCamion() == codigo)
  185.        {
  186.          return i;
  187.        }
  188.    }
  189.    return -1;
  190. }
  191.  
  192. //Modifica ese Camion.
  193. void Camion::modificarCamion()
  194. {
  195.     if (cantidadDeCamiones == 0)
  196.     {
  197.       system("cls");
  198.       cout << "No se ha registrado ningun camion tadavia\n";
  199.     }
  200.     else
  201.     {
  202.         cout << "Modificar Camion\n\n";
  203.         int codigoCamion;
  204.         cout << "Ingrese el codigo del camion: ";
  205.         cin >> codigoCamion;
  206.  
  207.         int ubicacion = buscarCamion(codigoCamion);
  208.         if (ubicacion == -1)
  209.         {
  210.           cout << "Lo sentimos ese codigo del camion no existe\n";
  211.         }
  212.         else
  213.         {
  214.             cout << "El codigo se encontro\n\n";
  215.             cout << setw(10)<<"Id"<<setw(15)<<"Modelo"<<setw(15)<<"marca"<<endl;
  216.             cout<<"================================================="<<endl;
  217.  
  218.             listaDeCamiones[ubicacion]->imprimir();
  219.             cout << "\n\n";
  220.             cout  << "Ingrese los nuevos datos del Camion\n\n";
  221.  
  222.             cout <<  "Marca";
  223.             cin  >> marcaCamion;
  224.  
  225.             cout << "Modelo del camion: ";
  226.             cin  >> modeloCamion;
  227.  
  228.             cout << "Año del Camion: ";
  229.             cin  >> anioCamion;
  230.  
  231.             cout << "Cilindraje del camion: ";
  232.             cin  >> cilindrajeCamion;
  233.  
  234.             cout << "numero de puertas: ";
  235.             cin  >>  nPuertasCamion;
  236.  
  237.             cout << "Color del camion: ";
  238.             cin  >> colorCamion;
  239.  
  240.             cout << "Presio del camion: ";
  241.             cin  >> precioCamion;
  242.  
  243.             listaDeCamiones[ubicacion]->setMarcaCamion(marcaCamion);
  244.             listaDeCamiones[ubicacion]->setModeloCamion(modeloCamion);
  245.             listaDeCamiones[ubicacion]->setanioCamion(anioCamion);
  246.             listaDeCamiones[ubicacion]->setCilindrajeCamion(cilindrajeCamion);
  247.             listaDeCamiones[ubicacion]->setNPuertasCamion(nPuertasCamion);
  248.             listaDeCamiones[ubicacion]->setColorCamion(colorCamion);
  249.             listaDeCamiones[ubicacion]->setPrecioCamion(precioCamion);
  250.  
  251.             cout << "El camion fue modificado Exitosamente.\n";
  252.         }
  253.     }
  254. }
  255.  
  256. void Camion::eliminarCamion()
  257. {
  258.     if (cantidadDeCamiones == 0)
  259.     {
  260.       system("cls");
  261.       cout << "No se ha registrado ningun camion tadavia\n";
  262.     }
  263.     else
  264.     {
  265.         cout << "Eliminar Camion\n\n";
  266.         int codigoCamion;
  267.         cout << "Ingrese el codigo a eliminar: ";
  268.         cin >> codigoCamion;
  269.  
  270.         int ubicacion = buscarCamion(codigoCamion);
  271.         if (ubicacion == -1)
  272.         {
  273.           cout << "Lo sentimos ese codigo del camion no existe\n";
  274.         }
  275.         else
  276.         {
  277.             cout << "El codigo se encontro\n\n";
  278.             cout << setw(10)<<"Id"<<setw(15)<<"Modelo"<<setw(15)<<"marca"<<endl;
  279.             cout<<"================================================="<<endl;
  280.  
  281.             listaDeCamiones[ubicacion]->imprimir();
  282.             cout << "\n\n";
  283.  
  284.             cout << "Presione enter para eliminar ese camion\n\n";
  285.             system("pause");
  286.  
  287.             //Pasa a eliminar usando una copia del arreglo
  288.             Camion**temporalListaDeCamiones = new Camion*[Maximo];
  289.             int temporalCantidadDeCamiones = 0;
  290.  
  291.             //Se copia el arreglo en otro arreglo exepto el que se quiere eliminar
  292.             for(int i =0; i < cantidadDeCamiones; i++)
  293.             {
  294.               if(i!=ubicacion)
  295.               {
  296.                 temporalListaDeCamiones[temporalCantidadDeCamiones] = new Camion(listaDeCamiones[i]->getIdCamion(),
  297.                                                                                  listaDeCamiones[i]->getCilindrajeCamion(),
  298.                                                                                  listaDeCamiones[i]->getnPuertasCamion(),
  299.                                                                                  listaDeCamiones[i]->getanioCamion(),
  300.                                                                                  listaDeCamiones[i]->getPrecioCamion(),
  301.                                                                                  listaDeCamiones[i]->getMarcaCamion(),
  302.                                                                                  listaDeCamiones[i]->getModeloCamion(),
  303.                                                                                  listaDeCamiones[i]->getColorCamion());
  304.                 temporalCantidadDeCamiones++;
  305.               }//Fin if
  306.             }//Fin for
  307.  
  308.             //Limpio la memoria usada por el arreglo principal de camiones
  309.             for(int i=0; i<cantidadDeCamiones; i++)
  310.             {
  311.               listaDeCamiones[i]->~Camion();
  312.             }
  313.  
  314.             //copia el arreglo temporal al principio
  315.             cantidadDeCamiones = 0;
  316.             for(int i =0; i<temporalCantidadDeCamiones; i++)
  317.             {
  318.                listaDeCamiones[cantidadDeCamiones] = new Camion(temporalListaDeCamiones[i]->getIdCamion(),
  319.                                                                 temporalListaDeCamiones[i]->getCilindrajeCamion(),
  320.                                                                 temporalListaDeCamiones[i]->getnPuertasCamion(),
  321.                                                                 temporalListaDeCamiones[i]->getanioCamion(),
  322.                                                                 temporalListaDeCamiones[i]->getPrecioCamion(),
  323.                                                                 temporalListaDeCamiones[i]->getMarcaCamion(),
  324.                                                                 temporalListaDeCamiones[i]->getModeloCamion(),
  325.                                                                 temporalListaDeCamiones[i]->getColorCamion());
  326.                cantidadDeCamiones++;
  327.             }//Fin for
  328.             cout << "El camion fue eliminado exitosamente\n\n";
  329.         }//fin else
  330.     }
  331.  
  332. }
  333.  
  334. //Imprime los datos del Camion
  335. void Camion::imprimir()
  336. {
  337.     cout<<setw(10)<<idCamion<<setw(15)<<modeloCamion<<setw(15)<<marcaCamion<<endl;
  338. }

//.h
Código
  1. #ifndef CAMION_H
  2. #define CAMION_H
  3. #include <iostream>
  4. using namespace std;
  5. // Variables globales
  6. class Camion
  7. {
  8.      private:
  9.      int idCamion;
  10.      int cilindrajeCamion;
  11.      int nPuertasCamion;
  12.      int anioCamion;
  13.      double precioCamion;
  14.      string marcaCamion, modeloCamion, colorCamion;
  15.  
  16.      public:
  17.      Camion(int =0, int=0, int=0, int=0, double = 0.0, string = "", string = "", string = "");
  18.  
  19.      void setIdCamion(int);
  20.      void setCilindrajeCamion(int);
  21.      void setNPuertasCamion(int);
  22.      void setanioCamion(int);
  23.      void setPrecioCamion(double);
  24.      void setMarcaCamion(string);
  25.      void setModeloCamion(string);
  26.      void setColorCamion(string);
  27.  
  28.      int getIdCamion() const;
  29.      int getCilindrajeCamion() const;
  30.      int getnPuertasCamion() const;
  31.      int getanioCamion() const;
  32.      string getMarcaCamion() const;
  33.      string getModeloCamion() const;
  34.      string getColorCamion() const;
  35.      double getPrecioCamion() const;
  36.  
  37.      //Otros Metodos
  38.      void ingresarCamion();
  39.      void flistaDeCamiones();
  40.      void imprimir();
  41.      int buscarCamion(int);
  42.      void modificarCamion();
  43.      void eliminarCamion();
  44.  
  45.      private:
  46.      Camion**listaDeCamiones;
  47.      int Maximo;
  48.      int cantidadDeCamiones;
  49.  
  50. };
  51. #endif

//principal
Código
  1. #include <cstdlib>
  2. #include <iostream>
  3. #include "Camion.h"
  4.  
  5. using namespace std;
  6.  
  7. void menuCamiones();
  8.  
  9. int main(int argc, char *argv[])
  10. {    
  11.     menuCamiones();
  12.    system("PAUSE");
  13.    return EXIT_SUCCESS;
  14. }
  15.  
  16. void menuCamiones()
  17. {
  18.     Camion camionOb;
  19.     int opcion;
  20.     do
  21.     {
  22.         system("cls");
  23.         cout << "Menu\n"
  24.              << "1.Desea ingresar un nuevo camion a la empresa\n"
  25.              << "2. mostrar lista de Camiones\n";
  26.         cout << "Elija una opcion: ";
  27.         cin >> opcion;
  28.  
  29.         switch(opcion)
  30.         {
  31.         case 1:
  32.              system("cls");
  33.              camionOb.ingresarCamion();
  34.              system("pause");
  35.              break;
  36.  
  37.          case 2:
  38.               system("cls");
  39.               camionOb.flistaDeCamiones();
  40.               system("pause");
  41.          break;        
  42.  
  43.          case 3:
  44.          break;
  45.  
  46.          default:
  47.                  cout << "Esa opcion no existe.\n\n";
  48.                  break;
  49.         }
  50.  
  51.  
  52.     }while(opcion != 3);
  53. }

Gracias.
283  Programación / Programación C/C++ / Re: Que estoy haciendo mal arreglo? (Solucionado) en: 4 Febrero 2014, 04:41 am
Te comparto una imagenes de como va quedando despues lo arreglare mejor

el array asignarle memoria al
momento de usarlo ( recorda liberarlo ) aunque hubiera sido bueno incializarlo en el contructor así en el destructor se libera la memoria
eso depende de como diseñes tu programa.

claro lo hare para liberar la memoria. gracias de nuevo.
284  Programación / Programación C/C++ / Re: Que estoy haciendo mal arreglo? en: 4 Febrero 2014, 04:15 am
Ya está, te gradezco mucho por la ayuda y más por el tiempo que te tomaste créeme sea gradece mucho cuando estas trabado y alguien te ayuda. Saludos y mil gracias por la ayuda. y ahora entiendo lo que tratabas de decirme leeré sobre el extern y memoria dinámica para no tener este tipo de problemas. saludos y gracias.
285  Programación / Programación C/C++ / Re: Que estoy haciendo mal arreglo? en: 4 Febrero 2014, 03:42 am
Aca esta la .h he estado trando de hacer lo que me dices como puedes ver.
Código
  1. #ifndef CAMION_H
  2. #define CAMION_H
  3. #include <iostream>
  4. using namespace std;
  5.  
  6. extern Camion**listaDeCamiones;
  7.  
  8. // Variables globales
  9. class Camion
  10. {
  11.      private:
  12.      int idCamion;
  13.      int cilindrajeCamion;
  14.      int nPuertasCamion;
  15.      int anioCamion;
  16.      double precioCamion;
  17.      string marcaCamion, modeloCamion, colorCamion;
  18.  
  19.      public:
  20.      Camion(int =0, int=0, int=0, int=0, double = 0.0, string = "", string = "", string = "");
  21.  
  22.      void setIdCamion(int);
  23.      void setCilindrajeCamion(int);
  24.      void setNPuertasCamion(int);
  25.      void setanioCamion(int);
  26.      void setPrecioCamion(double);
  27.      void setMarcaCamion(string);
  28.      void setModeloCamion(string);
  29.      void setColorCamion(string);
  30.  
  31.      int getIdCamion() const;
  32.      int getCilindrajeCamion() const;
  33.      int getnPuertasCamion() const;
  34.      int getanioCamion() const;
  35.      string getMarcaCamion() const;
  36.      string getModeloCamion() const;
  37.      string getColorCamion() const;
  38.      double getPrecioCamion() const;
  39.  
  40.      //Otros Metodos
  41.      void ingresarCamion();
  42.      void listaDeCamiones();
  43.      void imprmir();
  44.  
  45. };
  46. #endif

y aca la cpp

Código
  1. #include "Camion.h"
  2. #include <iostream>
  3. #include <iomanip>
  4. using namespace std;
  5.  
  6.     Camion**listaDeCamiones;
  7.     const int Maximo =100;
  8.     int cantidadDeCamiones =0;
  9.  
  10. Camion::Camion (int idCam, int cilindrajeCam, int puertasCam, int anioCam,
  11.                double precioCam, string marcaCam, string modeloCam,
  12.                string colorCam)
  13.                {
  14.                   idCamion = idCam;
  15.                   cilindrajeCamion = cilindrajeCam;
  16.                   nPuertasCamion = puertasCam;
  17.                   anioCamion = anioCam;
  18.                   precioCamion = precioCam;
  19.                   marcaCamion = marcaCam;
  20.                   modeloCamion = modeloCam;
  21.                   colorCamion = colorCam;
  22.                }
  23. //Funciones set
  24. void Camion::setIdCamion(int idCam)
  25. {
  26.     idCamion = idCam;
  27. }
  28.  
  29. void Camion::setCilindrajeCamion(int cilindrajeCam)
  30. {
  31.     cilindrajeCamion = cilindrajeCam;
  32. }
  33.  
  34. void Camion::setNPuertasCamion(int puertasCam)
  35. {
  36.     nPuertasCamion = puertasCam;
  37. }
  38.  
  39. void Camion::setanioCamion(int anioCam)
  40. {
  41.     anioCamion = anioCam;
  42. }
  43.  
  44. void Camion::setPrecioCamion(double precioCam)
  45. {
  46.     precioCamion = precioCam;
  47. }
  48.  
  49. void Camion::setMarcaCamion(string marcaCam)
  50. {
  51.     marcaCamion = marcaCam;
  52. }
  53.  
  54. void Camion::setModeloCamion(string modeloCam)
  55. {
  56.     modeloCamion = modeloCam;
  57. }
  58.  
  59. void Camion::setColorCamion(string colorCam)
  60. {
  61.     colorCamion = colorCam;
  62. }
  63.  
  64. //Funciones get
  65. int Camion::getIdCamion() const
  66. {
  67.    return idCamion;
  68. }
  69.  
  70. int Camion::getCilindrajeCamion() const
  71. {
  72.    return cilindrajeCamion;
  73. }
  74.  
  75. int Camion::getnPuertasCamion() const
  76. {
  77.    return nPuertasCamion;
  78. }
  79.  
  80. int Camion::getanioCamion()const
  81. {
  82.    return anioCamion;
  83. }
  84.  
  85. double Camion::getPrecioCamion() const
  86. {
  87.       return precioCamion;
  88. }
  89.  
  90. string Camion::getMarcaCamion() const
  91. {
  92.       return marcaCamion;
  93. }
  94.  
  95. string Camion::getModeloCamion() const
  96. {
  97.       return modeloCamion;
  98. }
  99.  
  100. string Camion::getColorCamion() const
  101. {
  102.       return colorCamion;
  103. }
  104.  
  105. void Camion::ingresarCamion()
  106. {
  107.   Camion**listaDeCamiones = new Camion*[Maximo];// arreglo de 100
  108.   if (cantidadDeCamiones < Maximo)
  109.   {
  110.  
  111.     system("cls");
  112.     cout << "Ingrese los datos del camion\n";
  113.     cout << "Ingrese el ID del camion: ";
  114.     cin  >> idCamion;
  115.  
  116.     cout << "Ingrese la Marca del Camion: ";
  117.     cin  >> marcaCamion;
  118.  
  119.     cout << "Ingrese el Modelo del camion: ";
  120.     cin  >> modeloCamion;
  121.  
  122.     cout << "Ingrese el año del Camion: ";
  123.     cin  >> anioCamion;
  124.  
  125.     cout << "Ingrese el cilindraje del camion: ";
  126.     cin  >> cilindrajeCamion;
  127.  
  128.     cout << "Ingrese el numero de puertas: ";
  129.     cin  >>  nPuertasCamion;
  130.  
  131.     cout << "Ingrese el color del camion: ";
  132.     cin  >> colorCamion;
  133.  
  134.     cout << "Ingrese el presio del camion: ";
  135.     cin  >> precioCamion;
  136.  
  137.     listaDeCamiones[cantidadDeCamiones] = new Camion(idCamion, cilindrajeCamion,
  138.                                                      nPuertasCamion, anioCamion,
  139.                                                      precioCamion, marcaCamion,
  140.                                                      modeloCamion,colorCamion);
  141.     cantidadDeCamiones++;
  142.  
  143.     cout << "Los datos del camion fueron ingresados correctamente\n\n";
  144.   }
  145.   else
  146.   {
  147.       system("cls");
  148.       cout << "Ya no hay espacio disponible para mas camiones\n\n";
  149.   }
  150. }
  151.  
  152. void Camion::listaDeCamiones()
  153. {
  154.     if (cantidadDeCamiones==0)
  155.     {
  156.       system("cls");
  157.       cout<<"No se a registrado ninguna Camion todavía"<<endl;
  158.       }
  159.       else
  160.       {
  161.           cout<<"..:::Lista de Camiones:::.."<<endl<<endl;
  162.           cout << setw(10)<<"Id Camion"<<setw(15)<<"Modelo"<<setw(15)<<"marca"<<endl;
  163.           cout<<"================================================="<<endl;
  164.  
  165.           //Imprimmir todas las personas almacenadas en el arreglo de personas
  166.           for (int i=0; i<cantidadDeCamiones;i++)
  167.           {
  168.            listaDeCamiones[i]->imprmir();
  169.           }
  170.           cout<<endl<<"*******Fin de la lista **********"<<endl<<endl;
  171.           }
  172. }
  173. /*
  174. void imprmir()
  175. {
  176.      cout<<setw(10)<<idCamion<<setw(15)<<modeloCamion<<setw(15)<<marcaCamion<<endl;
  177. }*/
286  Programación / Programación C/C++ / Re: Que estoy haciendo mal arreglo? en: 4 Febrero 2014, 03:04 am
//entonce quedaria asi la camion.cpp

Código
  1. #include "Camion.h"
  2. #include <iostream>
  3. using namespace std;
  4.  
  5.     extern const int Maximo =100;
  6.     extern Camion**listaDeCamiones = new Camion*[Maximo];// arreglo de 100
  7.     extern int cantidadDeCamiones =0;// controla la cantidad de camiones

y en la .h
Código
  1. #ifndef CAMION_H
  2. #define CAMION_H
  3. #include <iostream>
  4. using namespace std;
  5.  
  6. int Maximo;
  7. Camion**listaDeCamiones = new Camion*[Maximo];
  8. int cantidadDeCamiones;
287  Programación / Programación C/C++ / Re: Que estoy haciendo mal arreglo? en: 4 Febrero 2014, 02:48 am
Declaralas globales y las inicializas/creas memoria dinamica en alguna funcion.

Me Disculpo no soy muy bueno pero las declaro en la de encabezado o en la de implementación? y cuales variables debo de inicializar y como. No pido código para nada solo una idea. Gracias de antemano.
288  Programación / Programación C/C++ / Re: Que estoy haciendo mal arreglo? en: 4 Febrero 2014, 02:30 am
si tienes razon ya ratos me di cuenta de que si lo hacia dentro de la funcion no da error
tienes toda la razon

pero al crear otra funcion que me muestre los datos del camion; que se guardaron en memoria como los saco para mostrarlos en otra funcion.

Código
  1. void Camion::ingresarCamion()
  2.    {
  3.       const int Maximo = 100;
  4.       Camion**listaDeCamiones = new Camion*[Maximo];// arreglo de 100
  5.       int cantidadDeCamiones=0;// controla la cantidad de camiones
  6.  
  7.      if (cantidadDeCamiones < Maximo)
  8.      {
  9.        //Código de las entradas por teclado que capturaran lista de camiones
  10.        cout << "Ingrese los datos del camion\n";
  11.        cout << "Ingrese el ID del camion: ";
  12.        cin  >> idCamion;
  13.  
  14.        cout << "Ingrese la Marca del Camion: ";
  15.        cin  >> marcaCamion;
  16.  
  17.    listaDeCamiones[cantidadDeCamiones] = new Camion(idCamion, cilindrajeCamion,
  18.                                                         nPuertasCamion, anioCamion,
  19.                                                         precioCamion, marcaCamion,
  20.                                                         modeloCamion,colorCamion);
  21.        cantidadDeCamiones++;
  22.  
  23.        cout << "Los datos del camion fueron ingresados correctamente\n\n";
  24.      }
  25.      else
  26.      {
  27.          system("cls");
  28.          cout << "Ya no hay espacio disponible para mas camiones\n\n";
  29.      }


ya que cantidadDeCamiones quedara en la otra funcion al igual que lista de camiones.

Código
  1. void Camion::listaDeCamiones()
  2. {
  3. if (cantidadDeCamiones==0)
  4.              {
  5.                system("cls");
  6.                cout<<"No se a registrado ninguna Camion todavía"<<endl;
  7.              }
  8.              else
  9.              {
  10.                  cout<<"..:::Lista de Camiones:::.."<<endl<<endl;
  11.                  cout<<setw(10)<<"idCamion"<<endl;
  12.                  cout<<"================================================="<<endl;
  13.  
  14.                  //Imprimmir todas los camiones almacenadas en el arreglo de camiones
  15.                  for (int i=0; i<cantidadDeCamiones;i++)
  16.                  {
  17.                      listaDeCamiones[i]->print();
  18.                  }
  19.                  cout<<endl<<"*******Fin de la lista **********"<<endl<<endl;
  20.              }
  21.  
  22. }

esas variables serian declaradas dentro de la funcion
289  Programación / Programación C/C++ / Re: Que estoy haciendo mal arreglo? en: 4 Febrero 2014, 02:13 am
¿Son esas sentencias escritas dentro de alguna funcion?

ya te entendi si exactamente.
290  Programación / Programación C/C++ / Re: Que estoy haciendo mal arreglo? en: 4 Febrero 2014, 02:11 am
No son variables dentro del archivo de encabezado (.h) las cuales según yo pretendo llamar en camion.cpp ya que las declaro como globales
Páginas: 1 ... 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 [29] 30 31 32
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines