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

 

 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el Twitter! de elhacker.NET


  Mostrar Mensajes
Páginas: [1]
1  Programación / Programación C/C++ / Re: Ayuda ejercicio en C. en: 17 Mayo 2012, 23:26 pm
Pd: Entre el case y el numero deja un espacio  :D
2  Programación / Programación C/C++ / Re: Ayuda ejercicio en C. en: 17 Mayo 2012, 23:24 pm
#include <stdio.h>
#include <conio.h>

int main ()
{
    int tick,nrem,nrubro,cant=1,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=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);
          }




          //Punto 1
          vtick=cant*vunitario;
          fact=fact+vtick;

          //Punto 2
          contt++;
          promtick=fact/contt;

          //Punto 3 y 4
          switch (nvend)
          {
                 case 1:
                {rec1=rec1+vtick;
                 com1=rec1*0.2;
                 totfarm=com1+fact*0.3;  //Para el punto 4


                }
                 break;
                 case 2:
                {
                    rec2=rec2+vtick;
                 com2=rec2*0.2;
                }


                 break;

                 case 3:
                 {rec3=rec3+vtick;
                 com3=rec3*0.2;}
                 break;

                 case 4:
                 {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)
          {
                 case 5:
                 totrubro1=totrubro1+cant;
                 aux3=nrubro;
                 break;

                 case 6:
                 totrubro2=totrubro2+cant;
                 aux3=nrubro;
                 break;

                 }

 printf("\nIngrese numero de ticket ");
          scanf("%d",&tick);
    }
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;
}




Proba usando este codigo es el tuyo pero modificado.. cuando uses flotantes para multiplicar en C van con "." no con la "," SALUDOS espero haberte ayudado :)
3  Programación / Programación C/C++ / cargar struct dentro de una matriz en: 17 Mayo 2012, 22:43 pm
Hola, quería saber si alguien me podría ayudar con esto...
Tengo q hacer un estructura q contenga 3 datos y esta misma por una función cargarla dentro de una matriz. esa matriz después me va a servir para actualizar un archivo, q solo se actualiza si el tipo es distinto de 99 y la producción distinta de 0




#include <conio.h>
#include <stdio.h>
#define TAM 3
typedef struct
{
   int tipo;
   float produccion;
   float valor;
}t_parcela;
void ver_archivo(FILE*);
void cargar_matriz(t_parcela*[][TAM]);
void main()
{
   int i,j;
   FILE*pf;
   t_parcela parcela[TAM][TAM];
   cargar_matriz(parcela);
   pf=fopen("campo.dat","w+b");
   {
      for(i=0;i<TAM;i++)
         for(j=0;j<TAM;j++)
         {
            if(parcela[j].produccion!=0 && parcela[j].tipo!=99)
            {
               fseek(pf,((i*TAM)+j+1)*sizeof(t_parcela),0);
               fwrite(&parcela[j].tipo,sizeof(int),1,pf);
               fwrite(&parcela[j].produccion,sizeof(float),1,pf);
               fwrite(&parcela[j].valor,sizeof(float),1,pf);
               fseek(pf,(-1L)*sizeof(t_parcela),1);
               fseek(pf,0,1);
            }
         }
   }
   fclose(pf);
   ver_archivo(pf);
   getch();
}
void cargar_matriz(t_parcela *p[TAM][TAM])
{
   int i,j;
   for(i=0;i<TAM;i++)
      for(j=0;j<TAM;j++)
         {
              puts("Escriba el tipo de grano(entero de 1 a 5)");
             scanf("%d",&p[j]->tipo);
             puts("Escriba la produccion obtenida");
             scanf("%f",&p[j]->produccion);
             puts("Escriba el valor de la produccion");
             scanf("%f",&p[j]->valor);
         }
}
void ver_archivo(FILE*pf)
{
   t_parcela parcela;
         pf=fopen("campo.dat","rb");
         fread(&parcela,sizeof(t_parcela),1,pf);
         while(!feof(pf))
         {
            printf("%d",parcela.tipo);
            printf("%f",parcela.produccion);
            printf("%f",parcela.valor);
            fread(&parcela,sizeof(t_parcela),1,pf);
         }
         fclose(pf);
}


el programa sin querer cargar la matriz anda barbaro pero quiero cargarle un par de datos y despues ver el archivo para ver si al grabar quedo bien,,,
Desde ya Graciaaaas..!
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines