• Jueves 16 de Mayo de 2024, 22:21

Autor Tema:  estructura en c++ una orientacion  (Leído 923 veces)

viktor479

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
estructura en c++ una orientacion
« en: Viernes 13 de Noviembre de 2009, 17:15 »
0
Buen dia para todos
recien empiezo a elaborar mis primeros programas y de tarea tengo el siguiente programa.

El dueño de una cadena de tiendas deportivas desea controlar sus ventas por medio de una computadora.los datos de entrada son:

a).El numero de la tienda de 1 a50
b).un numero que indica el deporte del articulo de 1 a20
c).el costo del articulo-

al final del dia el programa imprime lo siguiente:

1.Las ventas totales en el dia para cada tienda
2.las ventas totales para cada uno de los deportes.
3.las ventas totales de todas las tiendas.

Ya tengo definida la estructura para ingresar los datos de las tiendas parar cada venta y tambien ya hice la funcion para que me de el total de las ventas de todas las tiendas,lo que me hace falta y no encuentro la forma de hacer es lo siguiente.
-las ventas totales en el dia para cada tienda- y
-las ventas totales para cada uno de los deportes

de antemano les agradezco su orientacion y ayuda. aca les dejo lo que hecho hasta ahora.
muchas gracias.

estoy utilizando el turboc++

Código:
# include <stdio.h>

void main (){


int max=0;

printf ("digite el nuemro maximo de ventas a ingresar");
scanf ("%d",& max);

struct trabajador{
   int numtienda;
   int numdepart ;
   int numcosart;


}venta[50];

       int sumatienda=0;
       int sumadepart=0;
       int sumacosart=0;
           
       for (int i=0; i<max; i++){


   printf("digite el Numero de la tienda => %d",i);
   scanf("%d",&venta.numtienda);

   printf("digite el numero que del deporte que identifica el articulo %d",i);
   scanf("%d",&venta.numdepart);

   printf("digite el costo del articulo %d",i);
   scanf("%d",&venta.numcosart);

        }
   printf ("los datos alamacnedos en la estructura son n");

     for (i=0; i<max; i++){

         
   printf ("n Numero de la tienda: %d",venta.numtienda);
   printf ("n Numero del deporte del articulo: %d",venta.numdepart);
   printf ("n Costo del articulo: %d",venta.numcosart);
   printf  ("nn");
                   }
   printf ("nnel resultado del dia es=>");


   for (i=0; i<max; i++){

    //aca es donde necesito su orientacion para definir las dos funciones que me hacen falta para lo que necesito.
   sumacosart=sumacosart+venta.numcosart;

        }

   printf ("n las ventas totales en eldia para cada tienda son: %d",sumatienda);
   printf ("n las ventas totales para cada uno de los deprtes fueron: %d",sumadepart);
   printf ("n Las ventas totales de todas las tiendas fueron=>: %d",sumacosart);
   printf  ("nn");

  }

Amilius

  • Miembro HIPER activo
  • ****
  • Mensajes: 665
    • Ver Perfil
Re: estructura en c++ una orientacion
« Respuesta #1 en: Viernes 13 de Noviembre de 2009, 21:01 »
0
Para:
-las ventas totales en el dia para cada tienda

Podrias usar un arreglo de 50 elementos, un elemento por tienda. Inicializas los valores en cero y en el ciclo que revisa todas las ventas ir sumando las ventas a la tienda que corresponde.

-las ventas totales para cada uno de los deportes

Lo mismo, pero con arreglo de 20 elementos (uno por deporte)

Código: C++
  1.  
  2. int totalTienda[50];
  3. int totalDeporte[20];
  4.  
  5. for (i=0; i<max; i++){
  6.  
  7. //aca es donde necesito su orientacion para definir las dos funciones que me hacen falta para lo que necesito.
  8. sumacosart=sumacosart+venta[i].numcosart;
  9. // asumiendo que numtienda y numdepart SIEMPRE estarán en el rango correcto, sino agregar código de protección para evitar indices no válidos
  10. totalTienda[venta[i].numtienda -1]+= venta[i].numcosart;
  11. totalDeporte[venta[i].numdepart-1]+= venta[i].numcosart;
  12.  
  13. }
  14.  
  15.