Consulta en Dev-C++

154 views
Skip to first unread message

claudio rodriguez

unread,
May 15, 2012, 10:54:23 PM5/15/12
to cp...@googlegroups.com
buenas noches! tengo la necesidad de su ayuda debido a que estoy realizando un trabajo en c++ para la facultad en la cual no se como sacar lo siguiente "Que mozo atendió mas personas en total". Les dejo también el enunciado junto con lo que llevo programado. Desde ya muchas gracias. Espero respuesta.

Enunciado:

Un Restaurant tiene 6 mozos y 12 mesas, cada vez que cobran una mesa se anotan los siguientes datos, que terminan con numero de factura =0

-numero de factura
-numero de mozo
-numero de mesa
-cantidad de personas que comieron
-monto de la cuenta

se desea saber:

A. cantidad de personas atendida por cada mozo
B. cantidad de facturas realizadas
C. caja diaria realizada
D. monto facturado por cada mesa en total
E. porcentual facturado por cada mozo sobre el total
F, si cada mozo se le da el 5% de su venta cuanto le corresponde a cada uno
G. cual mozo atendió mas personas en total
H cuantas facturas superaron 45
I mesa a la que se facturo mas veces, o sea que mas recambio de clientes tuvo.

los puntos que me es difícil son los puntos F y G.

Lenjuage C:

#include<stdio.h>
#include<conio.h>

int main()
{
int cpm1,cpm2,cpm3,cpm4,cpm5,cpm6,aux,max,mmf,canper;
int facmo1,facmo2,facmo3,facmo4,facmo5,facmo6;
int facm1,facm2,facm3,facm4,facm5,facm6,facm7,facm8,facm9,facm10,facm11,facm12;
int cantfac,mozo;
int fac,personas,mesa,cuenta,totcaja;
float totca,pm1,pm2,pm3,pm4,pm5,pm6;
canper=0;
cpm1=0;
cpm2=0;
cpm3=0;
cpm4=0;
cpm5=0;
cpm6=0;
cuenta=0;
cantfac=0;
totca=0;
pm1=0;
pm2=0;
pm3=0;
pm4=0;
pm5=0;
pm6=0;
facm1=0;
facm2=0;
facm3=0;
facm4=0;
facm5=0;
facm6=0;
facm7=0;
facm8=0;
facm9=0;
facm10=0;
facm11=0;
facm12=0;
facmo1=0;
facmo2=0;
facmo3=0;
facmo4=0;
facmo5=0;
facmo6=0;
mozo=0;
aux=0;
max=0;
mesa=0;
totcaja=0;
mmf=0;
printf("ingresar numero de factura");
scanf("%d",& fac);
while(fac!=0)
{

             printf("ingresar mozo");
             scanf("%d",& mozo);
             printf("ingresar mesa");
             scanf("%d",& mesa);
              printf("ingresar monto de cuenta");
             scanf("%d",& cuenta);
             totcaja=totcaja+cuenta;
             totca=totcaja/7;
              printf("ingresar cantidad de personas");
             scanf("%d",& personas);
             canper=canper+personas;
             switch(mozo)
             {
                         case 1: facmo1=facmo1+cuenta;
                         break;
                         case 2: facmo2=facmo2+cuenta;
                         break;
                         case 3: facmo3=facmo3+cuenta;
                         break;
                         case 4: facmo4=facmo4+cuenta;
                         break;
                         case 5: facmo5=facmo5+cuenta;
                         break;
                         case 6: facmo6=facmo6+cuenta;
                         break;
                         }
                         switch(mesa)
                         {
                                     case 1: facm1=facm1+cuenta;
                                     break;
                                     case 2: facm2=facm2+cuenta;
                                     break;
                                     case 3: facm3=facm3+cuenta;
                                     break;
                                     case 4: facm4=facm4+cuenta;
                                     break;
                                     case 5: facm5=facm5+cuenta;
                                     break;
                                     case 6: facm6=facm6+cuenta;
                                     break;
                                     case 7: facm6=facm6+cuenta;
                                     break;
                                     case 8: facm8=facm8+cuenta;
                                     break;
                                     case 9: facm9=facm9+cuenta;
                                     break;
                                     case 10: facm10=facm10+cuenta;
                                     break;
                                     case 11: facm11=facm11+cuenta;
                                     break;
                                     case 12: facm12=facm12+cuenta;
                                     break;
                                     }
             switch(mozo)
             {
                             case 1: cpm1=cpm1+personas;
                             break;
                             case 2: cpm2=cpm2+personas;
                             break;
                             case 3: cpm3=cpm3+personas;
                             break;
                             case 4: cpm4=cpm4+personas;
                             break;
                             case 5: cpm5=cpm5+personas;
                             break;
                             case 6: cpm6=cpm6+personas;
                             break;
                             }
             printf("ingresar numero de factura ");
             scanf("%d",& fac);
             if(cuenta>=45)
             {
             cantfac=cantfac+1;
             }
             }
             if(mozo=cpm1)
             {
                       aux=mozo;
                       max=cpm1;
                       }
                                     if(mesa==mesa)
                                     {
                                                  mmf=mesa;
                                                  }
                                                  else
                                                  if(mesa!=mesa)
                                                  {
                                                                mmf==0;
                                                                }                                   
             pm1=(facm1/totcaja);
             pm2=(facm2/totcaja);
             pm3=(facm3/totcaja);
             pm4=(facm4/totcaja);
             pm5=(facm5/totcaja);
             pm6=(facm6/totcaja);
             printf("cantidad facturado por mesa 1 %d \n ",facm1);
             printf("cantidad facturado por mesa 2 %d \n ",facm2);
             printf("cantidad facturado por mesa 3 %d \n ",facm3);
             printf("cantidad facturado por mesa 4 %d \n ",facm4);
             printf("cantidad facturado por mesa 5 %d \n ",facm5);
             printf("cantidad facturado por mesa 6 %d \n ",facm6);
             printf("cantidad facturado por mesa 7 %d \n ",facm7);
             printf("cantidad facturado por mesa 8 %d \n ",facm8);
             printf("cantidad facturado por mesa 9 %d \n ",facm9);
             printf("cantidad facturado por mesa 10 %d \n ",facm10);
             printf("cantidad facturado por mesa 11 %d \n ",facm11);
             printf("cantidad facturado por mesa 12 %d \n ",facm12);
             printf("cantidad de personas por mozo 1 %d \n", cpm1);
             printf("cantidad de personas por mozo 2 %d \n", cpm2);
             printf("cantidad de personas por mozo 3 %d \n", cpm3);
             printf("cantidad de personas por mozo 4 %d \n", cpm4);
             printf("cantidad de personas por mozo 5 %d \n", cpm5);
             printf("cantidad de personas por mozo 6 %d \n", cpm6);
             printf("mostrar cantidad de facturas %d \n", cantfac);
             printf("Cantidad facturado por mozo 1 %d \n", facmo1);
             printf("Cantidad facturado por mozo 2 %d \n", facmo2);
             printf("Cantidad facturado por mozo 3 %d \n", facmo3);
             printf("Cantidad facturado por mozo 4 %d \n", facmo4);
             printf("Cantidad facturado por mozo 5 %d \n", facmo5);
             printf("Cantidad facturado por mozo 6 %d \n", facmo6);
             printf("Monto recaudado por dia %f \n",totca);
             printf("Facturas superiores a $45 %d \n", cantfac);
             printf("El porcentaje del mozo 1  %f \n", pm1);
             printf("el porcentaje del mozo 2 %f \n", pm2);
             printf("el porcentaje del mozo 3 %f \n", pm3);
             printf("el porcentaje del mozo 4 %f \n", pm4);
             printf("el porcentaje del mozo 5 %f \n", pm5);
             printf("el porcentaje del mozo 6 %f \n", pm6);
             printf("la mesa mas facturada es %d \n",mmf);
             getche();
             return 0;
             
}


Daniel Gutson

unread,
May 16, 2012, 9:23:40 AM5/16/12
to cp...@googlegroups.com
Claudio,


   si bien no vamos a hacer el ejercicio por vos, yo por lo menos te voy a dar una mano para que antes de resolverlo, el programa quede decente (es un desastre).

0) el programa está hecho en C disfrazado de C++ (ni siquiera, compilado con C++)
1) usá estructuras, tenés mil variables sueltas. Agrupalas para poder luego operar esa estructura. Por ejemplo: estructura factura. 
2) luego definí operaciones sobre esa estructura
3) definí un contenedor de esa estructura, decidí conscienzudamente si va a ser una lista, un vector, una cola, etc. La STL te provee todo eso. Pero justificálo.
4) no postees código así q no se lee, usá pastebin.com
5) usá por lo menos cout en vez de printf.

Esto va a llevar varias iteraciones, depende de vos cómo quedará o cuánta pila le pongas para que quede rápido.
Pero te advierto: yo voy a poner menor o igual energía que la que le pongas vos. Si le ponés mucha, me comprometo a ponerle mucha para ayudarte.

  Daniel.

2012/5/15 claudio rodriguez <r.claud...@gmail.com>


--
¿Eres miembro de "CyC++ Buenos Aires" verdad? Si no lo eres, has recibido este mesaje por error.
En caso de duda visita "http://groups.google.com/group/cppba"



--
Who’s got the sweetest disposition?
One guess, that’s who?
Who’d never, ever start an argument?
Who never shows a bit of temperament?
Who's never wrong but always right?
Who'd never dream of starting a fight?
Who get stuck with all the bad luck?

sole

unread,
May 16, 2012, 9:43:03 AM5/16/12
to cp...@googlegroups.com
Hola Claudio, 
preguntita, a que facu y en que año de la facu estas?
Bienvenido!
Sole

2012/5/16 Daniel Gutson <daniel...@gmail.com>
Reply all
Reply to author
Forward
0 new messages