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

 

 


Tema destacado: Curso de javascript por TickTack


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  AYUDA con este registro con matrices
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: AYUDA con este registro con matrices  (Leído 2,609 veces)
joseanh

Desconectado Desconectado

Mensajes: 8


Ver Perfil
AYUDA con este registro con matrices
« en: 4 Noviembre 2013, 02:01 am »

El registro me corre, pero no me muestra los datos almacenados en el void mostrar, ayuda por favor. Asi empieza:

#include <iostream>
#include <stdlib.h>

using namespace std;
int ce,cv;

void ingresar (struct carros registro[500][8]);
void consultar(struct carros registro[500][8])  ;
void reporteganancia(struct carros registro[500][8])  ;
void ventas (struct carros registro[500][8]);
void mostrar(struct carros registro[500][8])  ;

struct carros
{
char placa[20];
char mod[20];
char marca[20];
char color[20];
char mes[20];
float precio;
};


int main(){
    struct carros registro[500][8];
int opcion;
do
{
cout<<" Menu Principal "<<endl;  
     cout<<"1 ingresar"<<endl;    
     cout<<"2 consultar"<<endl;    
     cout<<"3 reporteganancia"<<endl;    
     cout<<"4 ventas"<<endl;  
     cout<<"5 mostrar"<<endl;    
     cout<<"6 salir"<<endl;
cout<<"indique la opcion"<<endl;
cin>>opcion;
    
switch (opcion){  
  case 1:
     system("cls");
     ingresar (registro);
       break;      
  case 2:
     system("cls");
     consultar (registro);
       break;
  case 3:  
     system("cls");
     reporteganancia (registro);
       break;
   case 4:  
    system("cls");
     ventas (registro);
       break;
    
      case 5:  
       system("cls");
        mostrar (registro);
       break;
      
      }
}while (opcion <= 6);              
}

void ingresar (struct carros registro[500][8]){  
  char placa[20],mod[20],marca[20],color[20],mes[20];
  double precio;
  int x;
  
   cout<<"catidad de carro de entrada "<<endl;
   cin>>ce;
  
      for (int x=0; x<ce ; x++){  
    
          cout<<"registro "<<x+1<<endl;
          cout<<"ingrese placa"<<endl;
          cin>>placa;
          registro
  • [1].placa;

          cout<<"ingrese modelo"<<endl;
          cin>>mod;
          registro
  • [2].mod;

          cout<<"ingrese marca"<<endl;
          cin>>marca;
          registro
  • [3].marca;

          cout<<"ingrese color"<<endl;
          cin>>color;
          registro
  • [4].color;
         
          cout<<"ingrese mes"<<endl;
          cin>>mes;
          registro
  • [5].mes;
         
          cout<<"ingrese precio"<<endl;
          cin>>precio;
          registro
  • [6].precio;
     system("cls");    
}
}
void consultar(struct carros registro[500][8]){
int x,encon,posi,opc;
char placab;
 
 do{
encon=0;
posi=1;
cout<<"consultar placa"<<endl;

for (int x=0; x<ce ; x++){

if (placab= registro
  • [1].placa
  • )
{
            
encon=1;
posi=x;
}
}
if (encon=0){
 cout<<"no encontro placa en posicion  "<<posi<<endl;
}
else
{
cout<<"  encontro placa en posicion   "<<posi<<endl;
cout<<"  desea buscar otra placa  "<<endl;
cin>>opc;
}
}while (opc=0);
}
void reporteganancia(struct carros registro[500][8]){
 int cv,pv,gananciasalida,gananciatotal;    
 int ce,pe,gananciaentrada;    
    
     cout<<"cuantos carros entraron"<<endl;
     cin>>ce;
     cout<<"cuanto costo el carro de entrada"<<endl;
     cin>>pe;
     gananciaentrada=(ce*pe);
     cout<<" la ganancia de entrada es: "<<gananciaentrada<<endl;
      
     cout<<endl;
    
     cout<<"cuantos carros se vendieron"<<endl;
     cin>>cv;
     cout<<"en cuanto se vendio"<<endl;
     cin>>pv;
     gananciasalida=(cv*pv);
     cout<<"la ganancia de salida es: "<<gananciasalida<<endl;
  
    gananciatotal=(gananciasalida-gananciaentrada);
    cout<<endl;
    cout<<"ganancia total es: "<<gananciatotal;
    cin>>gananciatotal;
    }  
    
    
void ventas (struct carros registro[500][8]){
}

void mostrar(struct carros registro[500][8]){
int x;
   for (int x=1; x<ce; x++){
        
         cout<<"placa:  "<<registro
  • [1].placa<<endl;
        cout<<"modelo: "<<registro
  • [2].mod<<endl;
        cout<<"marca:  "<<registro
  • [3].marca<<endl;
        cout<<"color:  "<<registro
  • [4].color<<endl;
        cout<<"mes:    "<<registro
  • [5].mes<<endl;
        cout<<"precio: "<<registro
  • [6].precio<<endl;
}
system("pause");
}


« Última modificación: 4 Noviembre 2013, 15:08 pm por joseanh » En línea

rir3760


Desconectado Desconectado

Mensajes: 1.639


Ver Perfil
Re: AYUDA con este registro con matrices
« Respuesta #1 en: 4 Noviembre 2013, 16:10 pm »

Cuando publiques el código fuente de un programa por favor utiliza las etiquetas GeSHi: en la pagina de composición de mensajes hay un cuadro desplegable con ese nombre y ahí puedes seleccionar el lenguaje adecuado (C o C++).

Problemas con el programa hay bastantes.

* No necesitas de un array de arrays, por sencillez deberías utilizar un array y con un numero de elementos pequeño. Por ejemplo:
Código
  1. struct carros registro[8];

* Al pedir la entrada en la función "ingresar" tienes bloques como este:
Código
  1. cout << "registro " << x + 1 << endl;
  2. cout << "ingrese placa" << endl;
  3. cin >> placa;
  4. registro[x][1].placa;
Ellos no tienen efecto y se deberían cambiar a:
Código
  1. cout << "registro " << x + 1 << endl;
  2. cout << "ingrese placa" << endl;
  3. cin >> registro[x][1].placa;
Y si se utiliza un array de ocho elementos seria mas o menos así:
Código
  1. cout << "registro " << x + 1 << endl;
  2. cout << "ingrese placa" << endl;
  3. cin >> registro[x].placa;

* En la función "mostrar" la variable "x" controla la ejecución del bucle con un valor inicial de 1 cuando debería ser 0 (como en la función ingresar).

* En la función "main" en la sentencia de selección "switch" todos los casos inician con:
Código
  1. system("cls");
Hay que eliminar esa sentencia de todos los casos, en su lugar basta con llamar a system justo antes del "switch".

Un saludo


En línea

C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language
joseanh

Desconectado Desconectado

Mensajes: 8


Ver Perfil
Re: AYUDA con este registro con matrices
« Respuesta #2 en: 5 Noviembre 2013, 16:49 pm »

Muchas gracias Amigo, lo probare y veré si funciona.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda Con este registro
Programación Visual Basic
shadow.darknesses 0 986 Último mensaje 17 Diciembre 2006, 14:07 pm
por shadow.darknesses
Ayuda con matrices
Java
fileto 2 3,082 Último mensaje 13 Febrero 2009, 06:13 am
por fileto
hola a todos necesito ayuda con este programa de matrices
Programación General
kily999 2 2,975 Último mensaje 9 Marzo 2011, 22:58 pm
por Littlehorse
Ayuda con este problema de matrices. « 1 2 »
Java
robertoht 13 6,201 Último mensaje 4 Julio 2015, 01:11 am
por robertoht
ayuda con este ejercicio visual c# matrices
.NET (C#, VB.NET, ASP)
xandyx2008 1 1,853 Último mensaje 2 Diciembre 2016, 08:30 am
por Eleкtro
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines