Glaas2

Estacionamiento

Sep 12th, 2012
196
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 3.33 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4. #define ch 14
  5. #define gr 10
  6.  
  7. void estacionar(char , int *, int *);
  8. void retirar(int tam, int num, int *G, int *C);
  9. void mostrar(int *, int*);
  10.  
  11. int main(int argc, char *argv[])
  12. {
  13.   int fin = 0, opcion, i=0, num;
  14.   char tam;
  15.   int G[gr], C[ch];
  16.   for(i=0; i<ch; i++)
  17.    C[i]=0;
  18.   for(i=0; i<gr; i++)
  19.    G[i]=0;
  20.        
  21.         while (fin == 0)
  22.                 {
  23.                 system("cls");
  24.                 printf("Menú Estacionamiento\n\n");
  25.        
  26.                 printf("   1] Estacionar Coche.\n");
  27.                 printf("   2] Retirar Coche.\n");
  28.                 printf("   3] Ver Situacion.\n");
  29.                 printf("   4] Salir.\n");
  30.                 printf("\n\nOpcion: ");
  31.                 scanf("%i", &opcion);
  32.                        
  33.                 switch(opcion)
  34.                         {
  35.                                 case 1:
  36.                                         system("cls");
  37.                                         printf("ESTACIONAR COCHE\n\n");
  38.                                         printf("Ingrese el tamaño del coche (C/G): ");
  39.                                         fflush(stdin);
  40.                                         scanf("%c", &tam);
  41.                                         estacionar(tam, C, G);
  42.                                         getch();
  43.                                         break;
  44.                                 case 2:
  45.                                         system("cls");
  46.                                         printf("RETIRAR COCHE\n\n");    
  47.                                         printf("Ingrese el espacio a vaciar (Ej. G 3): ");
  48.                                         fflush(stdin);
  49.                                         scanf("%c %d", &tam, &num);  
  50.                                         retirar(tam, num, C, G);  
  51.                                         getch();                            
  52.                                         break;
  53.                                 case 3:
  54.                                         system("cls");
  55.                                         printf("SITUACION DEL ESTACIONAMIENTO\n\n");
  56.                                         mostrar(C, G);
  57.                                         getch();
  58.                                         break;
  59.                                 case 4:
  60.                                         fin = 1;
  61.                                         break;
  62.                                 default:
  63.                                         fin = 0;
  64.                                         break;
  65.                         }
  66.                        
  67.                 }
  68.        
  69.   system("PAUSE"); 
  70.   return 0;
  71. }
  72.  
  73.  
  74. void estacionar(char tam, int *C, int *G)
  75. {
  76.  int i, num;
  77.  char tama;
  78.  if(tam == 'c' || tam == 'C')
  79.    for(i=0; i<ch; i++)
  80.     if(C[i]==0)
  81.      {
  82.       C[i]=1;
  83.       num=i;
  84.       tama='C';
  85.       break;
  86.      }
  87.  if(tam == 'c' && i==ch || tam == 'C' && i==ch || tam == 'g' || tam == 'G')
  88.   for(i=0; i<gr; i++)
  89.     if(G[i]==0)
  90.      {
  91.       G[i]=1;
  92.       num=i;
  93.       break;
  94.       tama='G';
  95.      }
  96.  printf("\nEstacionado en %c %d", tama, num);  
  97. }
  98.  
  99. void retirar(int tam, int num, int *C, int *G)
  100. {
  101.  int i;
  102.  if(tam == 'c' || tam == 'C')
  103.   C[num]=0;
  104.  
  105.  if(tam == 'g' || tam == 'G')    
  106.   G[num]=0;
  107.  
  108.  printf("\n Espacio %c %d liberado", tam, num);
  109. }
  110.  
  111. void mostrar(int *C, int *G)
  112. {
  113.  int i;  
  114.  for(i=0; i<ch; i++)
  115.   printf("%d    ", i);
  116.  
  117.   printf("\n\n", i);
  118.    
  119.  for(i=0; i<gr; i++)
  120.    printf("G    ");
  121.  printf("\n");
  122.  for(i=0; i<gr; i++)
  123.    printf("%d    ", G[i]);
  124.  
  125.  printf("\n\n");
  126.    
  127.  for(i=0; i<ch; i++)
  128.    printf("C    ");
  129.  printf("\n");
  130.  for(i=0; i<ch; i++)
  131.    printf("%d    ", C[i]);   
  132. }
Advertisement
Add Comment
Please, Sign In to add comment