• Miércoles 20 de Noviembre de 2024, 18:24

Autor Tema:  necesito apoyo en c  (Leído 1241 veces)

tazz1987

  • Nuevo Miembro
  • *
  • Mensajes: 19
    • Ver Perfil
necesito apoyo en c
« en: Jueves 21 de Agosto de 2008, 20:58 »
0
bueno mi problema tiene que realizar un tipo biblioteca en donde hay que registrar libros, asi como prestamo y devolucion de ellos y ademas mostrar una fecha de devolucion y una opcion para renovarlo una sola vez y otra para mostrar las personas que su perido ya vencio y aplicarle una multa de dinero

bueno les mando mi programa que hasta ahora he realizado me falta que cuando el libro esta prestado al momento de buscarlo lo diga, la fecha devolucion y la opcion de renovarlo, y lo que se refiere a la multa
espero me puedan ayudar
gracias   les mando lo que llevo del problema es con funciones

Código: Text
  1.  
  2. #include <stdio.h>
  3. #include <stdlib.h>
  4. #include <string.h>
  5. #include <conio.h>
  6. #include <ctype.h>
  7.  
  8. #define maxarticulos 5
  9. #define longmax 50
  10.  
  11. void menu();
  12. int opcion();
  13. void agregar();
  14. void submenu();
  15. void prestar();
  16. void buscar();
  17. void Consultas();
  18. void Consultas1();
  19. void devolver();
  20.  
  21. char titulo[maxarticulos][longmax],genero[maxarticulos][longmax],autor[maxarticulos][longmax],
  22.      tema[maxarticulos][longmax], edicion[maxarticulos][longmax] ;
  23. int opc=0,p_disp=0,op=0;
  24. main()
  25.  {
  26.     do
  27.     {
  28.     menu();
  29.     opcion();
  30.      if(opc>0&&opc<7)
  31.      {
  32.      if(opc==1)
  33.      {
  34.      agregar();
  35.      }
  36.      if(opc==2)
  37.      {
  38.         prestar();      
  39.      }
  40.      if(opc==3)
  41.      {
  42.      devolver();
  43.      }          
  44.      if(opc==4)
  45.        {
  46.         do
  47.          {
  48.           submenu();
  49.           opcion();
  50.            if(opc>0&&opc<5)
  51.            {
  52.            if(opc==1)
  53.             {
  54.              buscar();        
  55.             }
  56.           if(opc==2)
  57.            {
  58.             Consultas();
  59.            }
  60.           if(opc==3)
  61.            {
  62.             Consultas1();
  63.            }
  64.            }
  65.            else
  66.              printf("opcion no validan");
  67.         }while(opc!=4);
  68.        printf("tregreso al menunnn");
  69.      }
  70.    if(opc==5);
  71.    {
  72.              
  73.    }
  74.  }
  75.  else
  76.   printf("opcion no validan");
  77.    }while(opc!=6);
  78.     printf("nPrograma terminon");
  79.   system("pause");
  80.  }
  81.  
  82.  
  83.   void menu()
  84.   {
  85.     printf("t    TRABAJAR CON LIBROSnnn ");  
  86.     printf("tt  MENUnn");  
  87.     printf("tt1.AÑADIRn ");  
  88.     printf("tt2.PRESTARn");  
  89.     printf("tt3.DEVOLVERn ");  
  90.     printf("tt4.BUSCARn");
  91.     printf("tt5.LIBROS PERIODO VENCIDOn");
  92.     printf("tt6.TERMINAR n");  
  93.   }
  94.  
  95.   int opcion()
  96.   {
  97.       printf("nIngrese su opcion");
  98.       fflush(stdin);
  99.       scanf ("%d", &opc);
  100.       return(opc);
  101.     }
  102.  
  103.    void agregar()
  104.    {
  105.      int b_ter=0;
  106.      do
  107.      {
  108.          if(p_disp<maxarticulos)
  109.          {
  110.            printf("proporcione titulo o (/'fin'/ para terminar)n");
  111.            scanf("%s", titulo[p_disp]);
  112.               if(strcmp(titulo[p_disp],"fin")==0)
  113.                {
  114.                 printf("termino registron");
  115.                 b_ter=1;                                
  116.                }
  117.               else
  118.               {
  119.                printf("generon");
  120.                scanf("%s", genero[p_disp]);
  121.                printf("autorn");
  122.                scanf("%s", autor[p_disp]);
  123.                printf("teman");
  124.                scanf("%s", tema[p_disp]);
  125.                printf("edicionn");
  126.                scanf("%s",edicion[p_disp]);
  127.                
  128.                p_disp=p_disp+1;
  129.                }
  130.            }
  131.          else
  132.           {
  133.             printf("nel espacio se agoton");
  134.             b_ter=1;
  135.             }
  136.             }while(b_ter!=1);
  137.            return;
  138.   }
  139.  
  140.   void buscar()
  141.   {
  142.    int p;
  143.     for(p=0;p<p_disp;p++)
  144.       printf("%d titulo: %sn  genero:  %sn  autor:  %sn  tema:  %sn  edicion:  %sn",p+1,
  145.               titulo[p], genero[p],autor[p],tema[p],edicion[p]);
  146.       printf("existen %d entradasn",p);
  147.     return;
  148.    }
  149.      
  150.  void Consultas()
  151. {
  152.     char resp[20];
  153.     int d,i;
  154.    
  155.        printf("nConsultas titulosn");
  156.        printf("Titulo: ");
  157.        fflush(stdin);
  158.       scanf("%s",resp);
  159.        
  160.        for(i=0;i<maxarticulos;i++)
  161.        {
  162.         d = strcmp(titulo[i],resp);
  163.         if(d==0)
  164.           if (i<maxarticulos)
  165.              {
  166.              printf("titulo: %sn",titulo[i]);
  167.              printf("genero: %sn",genero[i]);
  168.              printf("autor: %sn",autor[i]);
  169.              printf("tema: %sn",tema[i]);
  170.              printf("edicion: %sn",edicion[i]);
  171.             }
  172.        else
  173.          printf("no hayn");
  174.       }
  175.       return;
  176. }
  177.      
  178.       void Consultas1()
  179. {
  180.     char resp[20];
  181.     int d,i;
  182.    
  183.        printf("nConsultas titulosn");
  184.        printf("tema: ");
  185.        fflush(stdin);
  186.       scanf("%s",resp);
  187.        
  188.        for(i=0;i<maxarticulos;i++)
  189.        {
  190.         d = strcmp(tema[i],resp);
  191.         if(d==0)
  192.           if (i<maxarticulos)
  193.              {
  194.              printf("titulo: %sn",titulo[i]);
  195.              printf("genero: %sn",genero[i]);
  196.              printf("autor: %sn",autor[i]);
  197.              printf("tema: %sn",tema[i]);
  198.              printf("edicion: %sn",edicion[i]);
  199.             }
  200.        else
  201.          printf("no hayn");
  202.       }
  203.       return;
  204. }
  205.     void submenu()
  206.   {
  207.    
  208.     printf("tt  SUBMENUnn");  
  209.     printf("tt1.catalogo completon ");  
  210.     printf("tt2.por titulon");  
  211.     printf("tt3.por teman ");  
  212.     printf("tt4.salirn ");
  213.   }  
  214.  
  215. void prestar()
  216. {
  217.    
  218.     char resp[20],cad;
  219.     int d,i,f;
  220.    
  221.        printf("nConsultas titulosn");
  222.        printf("Titulo: ");
  223.        fflush(stdin);
  224.       scanf("%s",resp);
  225.        
  226.        for(i=0;i<maxarticulos;i++)
  227.        {
  228.         d = strcmp(titulo[i],resp);
  229.         if(d==0)
  230.           if (i<maxarticulos)
  231.              {
  232.              printf("titulo: %sn",titulo[i]);
  233.              printf("genero: %sn",genero[i]);
  234.              printf("autor: %sn",autor[i]);
  235.              printf("tema: %sn",tema[i]);
  236.              printf("edicion: %sn",edicion[i]);
  237.             }
  238.        else
  239.          printf("no hayn");
  240.      
  241.       }
  242.       printf("desea formalizar prestamon");
  243.       printf("npresione (1/0) ");
  244.       scanf("%d",&f);
  245.       if(f==1)
  246.        {
  247.        printf("libro prestadon");
  248.        }
  249.       else
  250.       printf("libro disponiblen");
  251.       return;
  252. }
  253.  
  254. void devolver()
  255. {
  256.   char resp[20],cad;
  257.     int d,i,f;
  258.    
  259.        printf("nConsultas titulosn");
  260.        printf("Titulo: ");
  261.        fflush(stdin);
  262.       scanf("%s",resp);
  263.        
  264.        for(i=0;i<maxarticulos;i++)
  265.        {
  266.         d = strcmp(titulo[i],resp);
  267.         if(d==0)
  268.           if (i<maxarticulos)
  269.              {
  270.              printf("titulo: %sn",titulo[i]);
  271.              printf("genero: %sn",genero[i]);
  272.              printf("autor: %sn",autor[i]);
  273.              printf("tema: %sn",tema[i]);
  274.              printf("edicion: %sn",edicion[i]);
  275.             }
  276.        else
  277.          printf("no hayn");
  278.      
  279.       }
  280.       printf("desea formalizar prestamon");
  281.       printf("npresione (1/0) ");
  282.       scanf("%d",&f);
  283.       if(f==0)
  284.        {
  285.        printf("libro devuelton");
  286.        }
  287.       else
  288.       printf("libro no devuelton");
  289.       return;
  290. }
  291.  
  292.  

m0skit0

  • Miembro de PLATA
  • *****
  • Mensajes: 2337
  • Nacionalidad: ma
    • Ver Perfil
    • http://fr33kk0mpu73r.blogspot.com/
Re: necesito apoyo en c
« Respuesta #1 en: Viernes 22 de Agosto de 2008, 12:28 »
0
Bueno, visto tu código hay bastantes cosas que mejorar, pero vayamos a lo que te interesa. Para saber si un libro está prestado o no, tal y como tienes estructurado el programa, tendrías que incluír dicha información en cada libro, junto con autor, género, etc... Como también quieres tener en cuenta la fecha y demás, yo que tú crearía una estructura de datos por cada libro que tuviera dicha información, a saber: si el libro está prestado o disponible y la fecha en que se prestó. La fecha de devolución y la sanción se pueden calcular cuando se requieran a partir de la fecha de préstamo.

tazz1987

  • Nuevo Miembro
  • *
  • Mensajes: 19
    • Ver Perfil
respuesta
« Respuesta #2 en: Viernes 22 de Agosto de 2008, 15:19 »
0
no puedo usar estructuras debe ser con funciones asi como esta espero me ayuden

m0skit0

  • Miembro de PLATA
  • *****
  • Mensajes: 2337
  • Nacionalidad: ma
    • Ver Perfil
    • http://fr33kk0mpu73r.blogspot.com/
Re: necesito apoyo en c
« Respuesta #3 en: Viernes 22 de Agosto de 2008, 15:30 »
0
Hombre con funciones no puede ser. En algún lugar tienes que guardar la información de si un libro está prestado o no. Y las funciones no hacen eso.