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

 

 


Tema destacado: AIO elhacker.NET 2021 Compilación herramientas análisis y desinfección malware


  Mostrar Mensajes
Páginas: [1]
1  Programación / Programación C/C++ / Re: ayuda con colas en c/c++ en: 29 Mayo 2011, 23:55 pm
ia lo ise amigo y m imprime lo ultimo q ingrese namas q imprime el numero de veces del ciclo
2  Programación / Programación C/C++ / Re: ayuda con colas en c/c++ en: 29 Mayo 2011, 23:06 pm
amigo ia lo ise asi como m dijiste y m salen errores m dice q no sta validado produ, prod, preci en mostrar_producto
3  Programación / Programación C/C++ / ayuda con colas en c/c++ en: 29 Mayo 2011, 22:23 pm
miren este es el codigo lo q no logro es q a la hora d imprimir los productos no salen todos nama sale el ultimo q ingrese segun yo es en ciclo for
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <string.h>
struct nodo
{
 char nome[30];
 char empleado[30];
 char empresa[30];
 char prov[30];
 char empprov[30];
 char rfcpr[20];
 char rfc[20];
 char produ[30];
 char dian[20];
 int preci;
 long int clave;
 int prod;
 long int debo;
 int long inven;
 struct nodo *siguiente;
};

typedef struct nodo NODO;
typedef NODO*NODOSIG;

void altemple(NODOSIG*,char[30],long int);
void mostrar_alta(NODOSIG*);
void empresa(NODOSIG*,char[30],int);
void mostrar_empresa(NODOSIG*);
void factura(NODOSIG*,char[30],char[20],char[20]);
void mostrar_factura(NODOSIG*);
void proveedor(NODOSIG*,char[30],char[30],char[20]);
void mostrar_provedor(NODOSIG*);
void producto(NODOSIG*,char[30],int,int,int);
void mostrar_producto(NODOSIG*,int);
void invetario(NODOSIG*);
void devol(NODOSIG*);

int main ()
{
    char nom[30],nomemp[30],RFC[20],dia[20];
    char nompr[30],emppr[30],RFCp[20],nomprd[30];
    long int clav,clav2;
    int op,arti,i,np,precio;
    NODOSIG cola=NULL;
    system("cls");
    printf("\n\t introduzca el nombre de la empresa: ");
    _flushall();
    gets(nomemp);
    printf("\n\t introduzca el rfc de la empresa: ");
    _flushall();
    gets(RFC);
    printf("\n\t introduzca el dia: ");
    _flushall();
    gets(dia);
    system("cls");
    factura(&cola,nomemp,RFC,dia);
    mostrar_factura(&cola);
    getch ();
    do
    {
      system("cls");
      printf("\n\t eliga una opccion del menu");
      printf("\n\t\t 1.-proveedor\n\t\t 2.-empleado\n\t\t 3.-inventario\n\t\t 4.-devoluciones");
      printf("\n\t que opcion desea:");
      scanf("%d",&op);
      switch(op)
       {
         case 1:
                   system("cls");
                   _flushall();
                   printf("\n\t proveedor");
                   printf("\n\t nombre del proveedor: ");
                    _flushall();
                   gets(nompr);
                   printf("\n\t nombre de la empresa del proveedor: ");
                   _flushall();
                   gets(emppr);
                   printf("\n\t rfc de la empresa del proveedor: ");
                   _flushall();
                   gets(RFCp);
                   proveedor(&cola,nompr,emppr,RFCp);
                   mostrar_provedor(&cola);
                   printf("\n\t cuantos atriculos se van a registrar: ");
                   scanf("%d",&arti);
                   for(i=0;i<arti;i++)
                    {
                       
                       system("cls");                 
                       printf("\n\t nombre del producto %d: ",i+1);
                       _flushall();
                       gets(nomprd);
                       printf("\n\t cantidad de producto %d: ",i+1);
                       scanf("%d",&np);
                       printf("\n\t precio del producto %d: ",i+1);
                       scanf("%d",&precio);
                       producto(&cola,nomprd,np,precio,arti);
                    }
                   mostrar_producto(&cola,arti);
                  getch();
         break;
         
         case 2:
                 system("cls");
                 printf("\n introduzca su nombre: ");
                 _flushall();
                 gets(nom);
                 printf("\n introduzca una clave: ");
                 scanf("\n%ld",&clav);
                 altemple(&cola, nom , clav);
                 mostrar_alta(&cola);
                 getch ();         
         break;
             
         case 3:
                 printf("\n\t para acceder al inventario necesita estar dado de alta");
                 printf("\n\t introduzca su clave: ");
                 scanf("%ld",clav2);
                 if (clav == clav2)
                   {
                     mostrar_producto(&cola,arti);
                     getch ();
                   }
                 else
                 {
                   printf("\n\t clave incorrecta presione cualquier tecla para volver al menu de inicio"); 
                   getch ();
                  } 
         break;         
                 }
         }while (op != 4);
         getch ();
            return 0;         
}   

void altemple(NODOSIG*cola,char nom[30], long int clav)
{
  NODOSIG nuevo,actual,previo;
  actual=*cola;
  nuevo = new(nodo);
  if (nuevo != NULL)
  {
   strcpy(nuevo->nome,nom);
   nuevo->clave = clav;
   nuevo->siguiente = NULL;
   nuevo -> siguiente = *cola;
   *cola = nuevo;
  }
}   


void producto(NODOSIG*cola,char nomprd[30],int np,int precio,int arti)
{   
 NODOSIG nuevo,actual,previo;
 actual=*cola;
 nuevo = new(nodo);
 if (nuevo != NULL)
   {
    strcpy(nuevo->produ,nomprd);
    nuevo->prod = np;
    nuevo->preci = precio;
    nuevo->siguiente = NULL;
    nuevo -> siguiente = *cola;
    *cola = nuevo;
   }
 
}

void proveedor(NODOSIG*cola,char nompr[50],char emppr[50],char RFCp[50])
{
   NODOSIG nuevo,actual,previo;
  actual=*cola;
  nuevo = new(nodo);
  if (nuevo != NULL)
  {
   strcpy(nuevo->prov,nompr);
   strcpy(nuevo->empprov,emppr);
   strcpy(nuevo->rfcpr,RFCp);
   nuevo->siguiente = NULL;
   nuevo -> siguiente = *cola;
   *cola = nuevo;
  }
}   
     

void factura(NODOSIG*cola,char nomemp[30],char RFC[30],char dia[20])
{
  NODOSIG nuevo,actual,previo;
  actual=*cola;
  nuevo = new(nodo);
  if (nuevo != NULL)
  {
   strcpy(nuevo->empresa,nomemp);
   strcpy(nuevo->dian,dia);
   strcpy(nuevo->rfc,RFC);
   nuevo->siguiente = NULL;
   nuevo -> siguiente = *cola;
   *cola = nuevo;
  }
}   

void mostrar_alta(NODOSIG* cola)
{
 NODOSIG actual=*cola;
 printf("\n-nombre: %s\n clave: %ld",actual->nome,actual->clave);
 }

void mostrar_provedor(NODOSIG* cola)
{
 NODOSIG actual=*cola;
 printf("\n\tnombre del proveedor: %s",actual->prov);
 printf("\n\t empresa del proveedor: %s",actual->empprov);
 printf("\n\t RFC del proveedor: %s",actual->rfcpr);
}

void mostrar_producto(NODOSIG* cola,int arti)
{
 int i; 
 for(i=0;i<arti;i++)
 {
  NODOSIG actual=*cola;
  printf("\n\t nombre del producto: %s\n\t cantidad del producto: %d\n\t precio del producto: %d",
               actual->produ,actual->prod,actual->preci);
 }
}


         
void mostrar_factura(NODOSIG* cola)
{
 NODOSIG actual=*cola;
 printf("\n\t dia: %s",actual->dian);
 printf("\n\t nombre de la empresa: %s",actual->empresa);
 printf("\n\t RFC: %s",actual->rfc);
 }
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines