Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - Don Lucky

#1
Programación C/C++ / Ayuda ejercicio en C.
16 Mayo 2012, 03:16 AM
Ejercicio resumido:
Datos a Ingresar:
N° de Ticket
N° de remedio (1...8)
N° de rubro ( 1 o 2)
Cantidad
Valor unitario
N° de vendedor (1 ...4) 1= farmaceutico.

Mi problema: No se como cuanto gano cada empleado. Cada uno gana un 2% de comision y el farmaceutico ademas de eso cobra otro 3%..Nose porque me aparecen todos los valores en 0. Dejo el codigo.

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

int main ()
{
   int tick,nrem,nrubro,cant,nvend,contt,aux,aux2,totrubro1,totrubro2,aux3;  //Variables enteras
   float vunitario,vtick,fact,promtick,rec1,rec2,rec3,rec4,com1,com2,com3,com4,totfarm,tickmax;
   contt=tick=nrem=nrubro=cant=nvend=totrubro1=totrubro2=0;
   vunitario=vtick=fact=rec1=rec2=rec3=rec4=com1=com2=com3=com4=totfarm=tickmax=0;
   printf("Ingrese numero de ticket ");
   scanf("%d",&tick);
   
   while (tick !=0) //Comienzo de ciclo
   {
         printf("\nCantidad de remedios disponibles 8 en nuestros 2 rubros");
         printf("\nIngrese numero de remedio ");
         scanf("%d",&nrem);
   
         //Verificar numero de remedio
         if (nrem>=9)
         {
                    printf("\nNumero de remedio INCORRECTO\n");
                    printf("\nIngrese un numero de remedio correcto ");
                    scanf("%d",&nrem);
         }
         
         printf("\nIngrese numero de rubro ");
         scanf("%d",&nrubro);
         
         //Verificar Numero de rubro
         if (nrubro>=3)
         {
                      printf("\nNumero de rubro INCORRECTO\n");
                      printf("\nPor favor ingrese un numero de rubro correcto ");
                      scanf("%d",&nrubro);
         }
                     
         printf("\nIngrese la cantidad que desea comprar ");
         scanf("%d",&cant);
         printf("\nIngrese el valor unitario del producto ");
         scanf("%f",&vunitario);
         printf("\nVendendores disponibles \n1.Farmaceutico \n2.Empleado 1 \n3.Empleado 2 \n4.Empleado 3");
         printf("\nIngrese numero de vendedor ");
         scanf("%d",&nvend);    
         
         //Verificar Numero de Empleado
         if (nvend>=5)
         {
                      printf("\nNumero de empleado INCORRECTO\n");
                      printf("\nPor favor ingrese numero un de vendedor correcto ");
                      scanf("%d",&nvend);
         }
                     
         printf("\nIngrese numero de ticket ");
         scanf("%d",&tick);
         
         
         //Punto 1
         vtick=cant*vunitario;
         fact=fact+vtick;
         
         //Punto 2
         contt=contt+1;
         promtick=fact/contt;
         
         //Punto 3 y 4
         switch (nvend)
         {
                case1:rec1=rec1+vtick;
                com1=rec1*0,2;
                totfarm=com1+fact*0,3;  //Para el punto 4
                break;
               
                case2:rec2=rec2+vtick;
                com2=rec2*0,2;
                break;
               
                case3:rec3=rec3+vtick;
                com3=rec3*0,2;
                break;
               
                case4:rec4=rec4+vtick;
                com4=rec4*0,2;
                break;
         }
         //Punto 5
         if (contt==1)
         {
                      tickmax=vtick;
                      aux=tick;
                      aux2=nvend;
         }
         
         if (vtick>=tickmax)
         {
                            tickmax=vtick;
                            aux=tick;
                            aux2=nvend;
         }
         
         switch (nrubro)
         {
                case5:totrubro1=totrubro1+cant;
                aux3=nrubro;
                break;
       
                case6:totrubro2=totrubro2+cant;
                aux3=nrubro;
                break;
       
                }
       
         
   }
printf("\nLa facturacion total de la empresa es %5.2f\n",fact);
printf("\nEl valor promedio de los tickets es %5.2f\n",promtick);
printf("\nLa comision a cobrar por cada empleado es:\n");
printf("\nFarmaceutico: %5.2f\n",totfarm);
printf("\nEmpleado 1: %5.2f\n",com2);
printf("\nEmpleado 2: %5.2f\n",com3);
printf("\nEmpleado 3: %5.2f\n",com4);
printf("\nEl numero de ticket de mayor valor fue el ticket numero %d con un valor de %5.2f y lo vendio el empleado %d\n",aux,tickmax,aux2);


         //Punto 6
         if (totrubro1>=totrubro2)
         {
                                 printf("\nSe vendieron mas articulos en el rubro numero %d\n",aux3);
         }
         else if (totrubro2>=totrubro1)
         {
                                 printf("\nSe vendieron mas articulos en el rubro numero %d\n",aux3);
         }
         else if (totrubro1==totrubro2)
         {
                                  printf("\nLos dos rubros vendieron la misma cantidad\n");
         }




   getch();
   return 0;
}
#2
Hola, tengo que hacer un trabajo práctico para la facultad y todavía no entiendo mucho como hacerlo. Primero tengo los datos, dps Diagramación Jackson y luego el codigo.
Les dejo el ejercicio con la resolución que yo pense de como hacer cada punto. Nose si esta bien por eso hago el tema.

Ejercicio:

Una cartelera de cine tiene 5 sucursales y vende a un precio de 7 pesos las entradas para sus salas en los 3 turnos, si compran mas de 8 asientos en un solo ticket se le hará un 10% de descuento.
En este momento se estan exhibiendo las siguientes películas

1.   Belleza americana
2.   El informante
3.   La hija del general
4.   Al filo de la muerte

Cada vez que compran, le dan un ticket donde figuran

•   Número de sucursal
•   Número de película
•   Cantidad de asientos comprados
•   Turno


Se desea saber

a.   Cantidad de asientos vendidos en cada turno
b.   Pelicula de mayor recaudación
c.   Sucursal que vendió menos en total en pesos
d.   Si cada sucursal recibe un 20% de lo recaudado, cuánto ganó c/u
e.   Porcentual que representa lo recaudado por pelicula sobre el total
f.   Ticket de menor valor
g.   Cantidad de asientos vendidos para la pelicula 2 en la sucursal 3 y turno Tarde
Cuál fue el promedio de asientos solicitados por cada sucursal.

Yo pense en hacerlo así:

Empeze utilizando las Variables principales
Tick  (Para el Ticket)
Nsuc (Para el numero de la sucursal)
Npel (Para el numero de pelicula)
tur (Para el Turno)
ca (Para la Cantidad de Asientos)

a) totca1=ca+acum1 (Turno Mañana) , totcat2=ca+acum2 (Turno Tarde) , totcat3=ca+acum3 (Turno Noche).

b) Acá realmente no estaba muy seguro, primero pense en un IF de cada recaudación pero tambien nose si se puede hacer un FOR para usar menos codigo  y haciendolo que la recaudación sea = al mayor numero y de ahí mostrarlo.

c)Tengo la misma duda que el punto B.

d) Ni idea.

e) Ni idea.

f) Un FOR mostrando el menor valor.

Los demas no los pense muy bien todavia.