Advertisement
luciana1237

Untitled

Dec 2nd, 2018
137
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 22.77 KB | None | 0 0
  1. #define imprime ArteDecolagem()
  2. #define LIMPAR  printf("\033[H")
  3. #define pt_br setlocale(LC_ALL,"portugues")
  4.  
  5. #ifdef WIN32
  6.    #define color system("color f")
  7.    #endif
  8.  
  9.  
  10.  
  11. #include <stdio.h>
  12. #include <stdlib.h>
  13. #include <string.h>
  14. #include <time.h>
  15. #include <unistd.h>
  16. #include <locale.h>
  17.  
  18.  
  19. struct pista_decolagem
  20. {
  21.     int prateleiras[5],prateleirasf[5];
  22.     unsigned int id,idf[5];
  23.  
  24.    
  25.     union
  26.     {
  27.         struct pista_decolagem *prox;
  28.     };
  29. };
  30.  
  31. typedef struct Fila_d
  32. {
  33.     struct pista_decolagem *dados;
  34.     union
  35.     {
  36.         struct pista_decolagem *fim,*inicio;
  37.     };
  38. }fila_d;
  39.  
  40. struct tempo_t
  41. {
  42.     int Hh,Mm;
  43.    
  44. };
  45.  
  46.  
  47. struct PistaAterrissagem
  48. {
  49.     int prateleiras[5],v[5];
  50.     unsigned int id,idf;
  51.  
  52.     union
  53.     {
  54.         struct PistaAterrissagem *next;
  55.     };
  56. };
  57.  
  58. typedef struct fila_a
  59. {
  60.     struct PistaAterrissagem *dates;
  61.  
  62.     union
  63.     {
  64.         struct PistaAterrissagem *begin,*end;
  65.     };
  66.  
  67. }queue;
  68.  
  69. struct tempo_a
  70. {
  71.     unsigned int Hh,Mm;
  72. };
  73.  
  74. int fall=0,count=0,count1=0,fail=0;
  75.  
  76.  
  77. void ArteDecolagem()
  78. {      
  79.         sleep(2);
  80.     printf("\033[H");
  81.     printf("\n\t      _  _                                                 ");
  82.     printf("\n\t    ( `   )_                                               ");
  83.     printf("\n\t   (    )    `)                                            ");
  84.     printf("\n\t  (_   (_ .  _) _)                                         ");
  85.     printf("\n\t          ______                                           ");
  86.     printf("\n\t         _L _~-L___                                        ");
  87.     printf("\n\t  =  = ==(____AA____D                                      ");
  88.     printf("\n\t            L_____L___________________,-~~~~~~~`-.._       ");
  89.     printf("\n\t  - -        /     o O o o o o O O o o o o o o O o  |L_    ");
  90.     printf("\n\t    --       `~-.__        ___..----..                 )   ");
  91.     printf("\n\t      --            `---~~L___________/------------`````   ");
  92.     printf("\n\t        -          =  ===(_________D                       ");
  93.  
  94.     sleep(2);
  95.     printf("\033[H");
  96.  
  97.     printf("\n\t      _  _                                                                    ");
  98.     printf("\n\t    ( `   )_                                                                  ");
  99.     printf("\n\t   (    )    `)                                                               ");
  100.     printf("\n\t  (_   (_ .  _) _)                                                            ");
  101.     printf("\n\t                             ______                                           ");
  102.     printf("\n\t                            _L _~-L___                                        ");
  103.     printf("\n\t                     =  = ==(____AA____D                                      ");
  104.     printf("\n\t                               L_____L___________________,-~~~~~~~`-.._       ");
  105.     printf("\n\t                     ---        /     o O o o o o O O o o o o o o O o  |L_    ");
  106.     printf("\n\t                       --       `~-.__        ___..----..                 )   ");
  107.     printf("\n\t                       ---            `---~~L___________/------------`````    ");
  108.     printf("\n\t                        --            =  ===(_________D                       ");
  109.    
  110.    
  111.     sleep(2);
  112.     printf("\033[H");
  113.     printf("\n\t      _  _                                                                                       ");
  114.     printf("\n\t    ( `   )_                                                                                     ");
  115.     printf("\n\t   (    )    `)                                                                                  ");
  116.     printf("\n\t  (_   (_ .  _) _)                                                                               ");
  117.     printf("\n\t                                                ______                                           ");
  118.     printf("\n\t                                               _L _~-L___                                        ");
  119.     printf("\n\t                                        =  = ==(____AA____D                                      ");
  120.     printf("\n\t                                                  L_____L___________________,-~~~~~~~`-.._       ");
  121.     printf("\n\t                                        - -        /     o O o o o o O O o o o o o o O o  |L_    ");
  122.     printf("\n\t                                          --       `~-.__        ___..----..                 )   ");
  123.     printf("\n\t                                            --            `---~~L___________/------------`````   ");
  124.     printf("\n\t                                              -          =  ===(_________D                       ");
  125.    
  126.     sleep(2);
  127.     printf("\n\n\n\n\n\n\n\n\n\n\n\n\n");
  128.  
  129.    
  130. }
  131.  
  132. void ArtAterrissagem()
  133. {
  134.     printf("\n\t      _  _                                                        ");
  135.     printf("\n\t    ( `   )_                                                      ");
  136.     printf("\n\t   (    )    `)                                                   ");
  137.     printf("\n\t  (_   (_ .  _) _)                                                ");
  138.     printf("\n\t                                                                  ");
  139.     printf("\n\t                            |                                     ");
  140.     printf("\n\t                      --====|====--                               ");
  141.     printf("\n\t                            |                                     ");
  142.     printf("\n\t                                                                  ");
  143.     printf("\n\t                         .-""''-.,                                ");
  144.     printf("\n\t                       .'_________'.                              ");
  145.     printf("\n\t                      /_/_|__|__|_L_L                             ");
  146.     printf("\n\t                     ;'-._       _.-';                            ");
  147.     printf("\n\t,--------------------|    `-. .-'    |--------------------,       ");
  148.     printf("\n\t``""-- ..__    ___   ;       '       ;   ___    __..--""``        ");
  149.     printf("\n\t          `''-// LL.._L             /_..// LL-''`                 ");
  150.     printf("\n\t              \\_//    '._       _.'    \\_//                     ");
  151.     printf("\n\t              `'`        ``---``        `'`                       ");
  152.     printf("\n\t=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=--\n");
  153.     LIMPAR;
  154. }
  155.  
  156. void ArteMenu()
  157. {
  158.     //printf("\n\t=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\n");  
  159.     printf("\n\t      _  _                                                                                ");
  160.     printf("\n\t    ( `   )_                                                                              ");
  161.     printf("\n\t   (    )    `)                                                                           ");
  162.     printf("\n\t  (_   (_ .  _) _)                                                                        ");
  163.     printf("\n\t                                        |                                                 ");
  164.     printf("\n\t                                        |                                                 ");
  165.     printf("\n\t              .''.         .''. `._    _|_    _.' .''.         .''.                       ");
  166.     printf("\n\t               '. '.     .' .'     ~-./ _ /.-~     '. '.     .' .'                        ");
  167.     printf("\n\t __              '. '._.' .'         /_/_/_/         '. '._.' .'               ____       ");
  168.     printf("\n\t '.__ ~~~~-----......-'.' '.'`~-.____.-~       ~-..____.-~'.' '.'`-......-----~~~~ __.'   ");
  169.     printf("\n\t  ~~~~----....__//.''._.'.///           .           ///.'._.''.//___....----~~~~          ");
  170.     printf("\n\t                .' .'__'. '._..__               __.._.' .'__'. '.                         ");
  171.     printf("\n\t              .' .'||    '. '.   ~-.._______..-~   .' .'    ||'. '.                       ");
  172.     printf("\n\t             '.,'  ||-.    ',.'        |_|        '.,'    .-||  ',.'                      ");
  173.     printf("\n\t                   /| |                .'.                | |/                            ");
  174.     printf("\n\t                    | |                | |                | |                             ");
  175.     printf("\n\t                    '.'                '.'                '.'                             ");
  176.     //printf("\n\t=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-\n");
  177.  
  178. }
  179.  
  180.  
  181. void ArteAir()
  182. {
  183.     sleep(2);
  184.  
  185.     printf("\n\t      _  _                                                               ");
  186.     printf("\n\t    ( `   )_                                                             ");
  187.     printf("\n\t   (    )    `)                                                          ");
  188.     printf("\n\t  (_   (_ .  _) _)                                                       ");
  189.     printf("\n\t                                |                                        ");
  190.     printf("\n\t                                |                                        ");
  191.     printf("\n\t      ´´                      .-'-.        ´´ ´´                         ");  
  192.     printf("\n\t                             ' ___ '                                     ");
  193.     printf("\n\t                   ---------'  .-.  '---------                           ");
  194.     printf("\n\t   _________________________'  '-'  '_________________________           ");
  195.     printf("\n\t    ''''''-|---|--L    L==][^',_m_,'^][==L    L--|---|-''''''            ");
  196.     printf("\n\t                  L    L  ||L   H   L||  L    L                          ");
  197.     printf("\n\t                   '--'   OO   O|O   OO   '--'                           ");
  198.     LIMPAR;
  199.    
  200.     sleep(2);
  201.     printf("\n\t      _  _                                                               ");
  202.     printf("\n\t    ( `   )_                                                             ");
  203.     printf("\n\t   (    )    `)                                                          ");
  204.     printf("\n\t  (_   (_ .  _) _)                                                       ");
  205.     printf("\n\t                                |                                        ");
  206.     printf("\n\t                                |                                        ");
  207.     printf("\n\t      ´´                      .-'-.        ´´ ´´                         ");  
  208.     printf("\n\t                             ' ___ '                                     ");
  209.     printf("\n\t                   ---------'  .-.  '---------                           ");
  210.     printf("\n\t   _________________________'  '-'  '_________________________           ");
  211.     printf("\n\t    ''''''-|---|--L    L==][^',_m_,'^][==L    L--|---|-''''''            ");
  212.     printf("\n\t                  L    L  ||L   H   L||  L    L                          ");
  213.     printf("\n\t                   '--'   OO   O|O   OO   '--'                           ");
  214.     LIMPAR;
  215.    
  216.  
  217. }
  218.  
  219. void ArtFall()
  220. {
  221.     printf("\n\t              ##### | #####                              ");
  222.     printf("\n\t             # _ _ #|# _ _ #                             ");
  223.     printf("\n\t             #      |      #                             ");
  224.     printf("\n\t   |           ############                              ");
  225.     printf("\n\t                   # #                                   ");
  226.     printf("\n\t|                  # #                                   ");
  227.     printf("\n\t                  #   #                                  ");
  228.     printf("\n\t      |      |    #   #      |        |                  ");
  229.     printf("\n\t   |             #     #               |                 ");
  230.     printf("\n\t   |     |   |   # .-. #         |                       ");
  231.     printf("\n\t                 #( O )#    |    |     |                 ");
  232.     printf("\n\t |  ################. .###############  |                ");
  233.     printf("\n\t   ##  _ _|____|     ###     |_ __| _  ##                ");
  234.     printf("\n\t   #  |                                |  #              ");
  235.     printf("\n\t   #  |    |    |    |   |    |    |   |  #              ");
  236.     printf("\n\t    ######################################               ");
  237.     printf("\n\t                  #     #                                ");
  238.     printf("\n\t                   #####                                 ");
  239.     printf("\n\t              OOOOOOO|OOOOOOO                            ");
  240.     printf("\n\t                     U                                   ");
  241.     LIMPAR;
  242.  
  243.  
  244. }
  245.  
  246. int random_id_airplane()
  247. {
  248.     srand(time(NULL));
  249.  
  250.     return rand() %10000;
  251.  
  252. }
  253.  
  254. fila_d *Create_Queue_Airplane(void)
  255. {
  256.     fila_d *f = (fila_d *) malloc(sizeof(fila_d));
  257.    
  258.     if (f != NULL)
  259.         f->inicio = NULL;
  260.         f->fim = NULL;
  261.     return f;
  262.    
  263. }
  264.  
  265. int enqueue_airplane(fila_d **f,int id_airplane)
  266. {
  267.     struct pista_decolagem *p1 = (struct pista_decolagem *) malloc(sizeof(struct pista_decolagem));
  268.     struct tempo_t t_d;
  269.     int opc,i=0;
  270.    
  271.     srand(time(NULL));
  272.    
  273.     int r;
  274.  
  275.        
  276.     p1->prateleiras[i] = id_airplane;
  277.     t_d.Mm = rand() %5;
  278.  
  279.  
  280.     if (t_d.Mm != 0)
  281.     {
  282.         printf("\n\t(+) AVIAO %d ESTA PRONTO PARA DECOLAR \n",id_airplane);
  283.         sleep(2);
  284.        
  285.         for(; t_d.Mm >0; t_d.Mm--)
  286.         {
  287.             printf("\n(o-) TEMPO: {0: %d}  \t PARA PROXIMA DECOLAGEM \n",t_d.Mm);
  288.  
  289.        
  290.             sleep(1); /* se for no windows 1000 */
  291.        
  292.             if (t_d.Mm == 1)
  293.             {
  294.                 r= rand() %5;
  295.  
  296.                 if (r==2 || r==3 || r== 4 || r==5)
  297.                 {
  298.                     printf("\n\t (+) TEMPO ESTA BOM PARA DECOLAR!!  \n");
  299.                     printf("\n\t (*) AVIAO %d DECOLANDO...! \n",id_airplane);
  300.                     printf("\n\n\n");
  301.                
  302.                     imprime;
  303.                
  304.                     if (p1 != NULL)
  305.                     {
  306.                         p1->id = id_airplane;
  307.  
  308.                         p1->prox = NULL;
  309.                    
  310.                         if ((*f)->inicio == NULL)
  311.                         {
  312.                             /*insira no inicio */
  313.                             (*f)->inicio = p1;
  314.                        
  315.                         }else
  316.                         {
  317.                             (*f)->fim->prox =p1;
  318.                         }
  319.                     }
  320.                 }else if (r == 0 || r== 1)
  321.                 {
  322.  
  323.                    sleep(2);
  324.  
  325.                    printf("\n\n\n\t (!)NOTICIA: TEMPO NAO ESTA BOM PARA DECOLAGEM!! \n\n");
  326.                    printf("\n (*) DESEJA COLOCAR O AVIAO PRA DECOLAR (1/SIM) OU (2/NAO ) \n");
  327.  
  328.                    printf("> "); scanf("%d",&opc);
  329.  
  330.                    switch(opc)
  331.                    {
  332.                        default:
  333.                            break;
  334.                        case 1:
  335.                            r = rand() %10;
  336.                            if (r >1 || r <5)
  337.                            {
  338.                                printf("\n\t (*) AVIAO %d DECOLANDO...",id_airplane);
  339.                                imprime;
  340.                                if ((*f)->inicio == NULL)
  341.                               {
  342.                                    (*f)->inicio =p1;
  343.                                }else
  344.                                {
  345.                                    (*f)->fim->prox =p1;
  346.                                }
  347.                            }else
  348.                            {
  349.                                printf("\n\t (!) AVIAO PERDENDO A FORÇA...\n");
  350.                                r = rand() %10;
  351.  
  352.                                if (r %2 ==0)
  353.                                {
  354.                                    imprime;
  355.  
  356.                                    if ((*f)->inicio == NULL)
  357.                                    {
  358.                                        (*f)->inicio =p1;
  359.                                    }else
  360.                                    {
  361.                                        (*f)->fim->prox;
  362.                                    }
  363.  
  364.                                    printf("\n\t (+) AVIAO %d MESMO SEM FORÇA CONSEGUIU VOAR \n",id_airplane);
  365.  
  366.                                }else
  367.                                {
  368.                                    printf("\n\t (!)AVIAO SEM COMBUSTIVEL \n");
  369.                                    fall++;
  370.                                    p1->prateleirasf[fall] = id_airplane;
  371.                                    count--;
  372.                                }
  373.                            }
  374.                            break;
  375.                         case 2:
  376.                             printf("AVIAO %d NA FILA DE ESPERA PARA DECOLAGEM \n",id_airplane);
  377.                             break;    
  378.                    }
  379.                 }
  380.             }
  381.         }
  382.     }
  383.     count++;
  384.     //(*f)->fim = novo;
  385.    
  386.     return 1;
  387. }
  388.  
  389. void SHOW(fila_d **f)
  390. {
  391.     struct pista_decolagem *p1;
  392.     int i=0;
  393.  
  394.     printf("\n\t (+) QUANTIDADE DE AVIAOS DECOLADOS:  %d \n",count);
  395.     sleep(1);
  396.  
  397.     if ((*f)->inicio == NULL)
  398.     {
  399.         return;
  400.  
  401.     }else
  402.     {
  403.         for(p1 = (*f)->inicio; p1 != NULL; p1=p1->prox)
  404.         {
  405.             printf("ID AVIAO %d \n",p1->id);
  406.         }
  407.  
  408.         printf("\n\t (!) QUANTIDADE DE AVIAOES SEM COMBUSTIVEL:  %d \n",fall);
  409.  
  410.         if (!fall)
  411.         {
  412.             return;
  413.  
  414.         }else
  415.         {
  416.             for(int y=0; y <=fall; y++)
  417.             {
  418.                 printf("ID AVIAO: %d \n",p1->prateleirasf[y]);
  419.             }
  420.         }
  421.     }
  422.  
  423. }
  424.  
  425.  
  426. queue *Create_Queue_Aterrissagem(void)
  427. {
  428.     queue *q = (queue *) malloc(sizeof(queue));
  429.  
  430.     if (q != NULL)
  431.         q->begin = NULL;
  432.         q->end = NULL;
  433.    
  434.     return q;
  435. }
  436.  
  437. int Enqueue(queue **q,int id_aviao)
  438. {
  439.     struct PistaAterrissagem *pointer  = (struct PistaAterrissagem *) malloc(sizeof(struct PistaAterrissagem));
  440.  
  441.     struct tempo_a t_a;
  442.     int r;
  443.  
  444.     printf("\n\t (*) AVIAO %d ATERRISSANDO!...\n",id_aviao);
  445.     sleep(2);
  446.  
  447.     for(t_a.Mm = rand() % 5; t_a.Mm >0; t_a.Mm--)
  448.     {
  449.         printf("TEMPO: {0 : %d } \t PREVISTO PARA PROXIMA ATERRISSAGEM! \n",t_a.Mm);
  450.         sleep(1);
  451.  
  452.         if (t_a.Mm == 1)
  453.         {
  454.             r = rand() % 5;
  455.             printf("\n\t (*) AVIAO %d ATERRISSANDO... \n",id_aviao);
  456.  
  457.             ArteAir();
  458.  
  459.             sleep(2);
  460.            
  461.             if ( r > 1 || r <5)
  462.             {
  463.                 if (pointer != NULL)
  464.                 {
  465.                     pointer->id = id_aviao;
  466.                     pointer->next = NULL;
  467.  
  468.                     if ((*q)->begin == NULL)
  469.                     {
  470.                         (*q)->begin = pointer;
  471.  
  472.                     }else
  473.                     {
  474.                         (*q)->end->next = pointer;
  475.                     }
  476.                 }else
  477.                 {
  478.                     printf(" \n\t (!) AVIAO COM PROBLEMAS NA ATERRISAGEM \n");
  479.                     sleep(2);
  480.  
  481.                     r = rand() %10;
  482.  
  483.                     if (r > 1 || r < 5)
  484.                     {
  485.                         printf("\n\t (+) AVIAO MESMO COM PROBLEMAS CONSEGUIU ATERRISAR COM SUCESSO! \n");
  486.  
  487.                         ArteAir();
  488.  
  489.                         if ((*q)->begin == NULL)
  490.                         {
  491.                             (*q)->begin =pointer;
  492.                         }else
  493.                         {
  494.                             (*q)->end->next = pointer;
  495.                         }
  496.                     }else
  497.                     {
  498.                         sleep(2);
  499.                         printf("AVIAO %d CAIU \n",id_aviao);
  500.                         ArtFall;
  501.  
  502.                         fail++;
  503.                         pointer->v[fall] = id_aviao;
  504.                         count1--;
  505.                     }
  506.                 }
  507.             }
  508.         }
  509.     }
  510.     count1++;
  511.     return 1;
  512. }
  513.  
  514. void MostrarAterrissagem(queue **q)
  515. {
  516.     struct PistaAterrissagem *pointer;
  517.     int y=0;
  518.  
  519.     ArtAterrissagem();
  520.     printf("# QUANTIDADE DE AVIAOS ATERRISSADOS COM SUCCESSO %d #\n",count1);
  521.  
  522.     if ((*q)->begin == NULL)
  523.     {
  524.         return;
  525.     }else
  526.     {
  527.         printf("AVIAOS ATERRISADOS COM SUCESSO \n");
  528.         for(pointer = (*q)->begin; pointer != NULL; pointer=pointer->next)
  529.         {
  530.             y++;
  531.             printf("PRATELEIRA [%d]: id AVIAO: %d \n",y,pointer->id);
  532.         }
  533.         printf("QUANTIDADE DE AVIOES CAIDOS %d \n",fail);
  534.  
  535.         if (!fail)
  536.         {
  537.             return ;
  538.         }else
  539.         {
  540.             for(int j=0; j <fail; j++)
  541.             {
  542.                 printf("ID AVIAOS CAIDOS %d \n",pointer->v[j]);
  543.             }
  544.  
  545.         }
  546.     }
  547.    
  548. }
  549. /*void winColorir(int Y, int B) {
  550.     WORD wColor = ((B & 0x0F) << 4) + (Y & 0x0F);
  551.     SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), wColor);
  552. }*/
  553.  
  554. int LiberarDecolagem(fila_d **f)
  555. {
  556.     struct pista_decolagem *p1;
  557.    
  558.     for(p1 = (*f)->inicio; p1 != NULL; p1 = p1->prox)
  559.     {
  560.         struct pista_decolagem *p2;
  561.         p2= p1->prox;
  562.  
  563.         free(p2);
  564.     }
  565.     return 1;
  566. }
  567.  
  568. int LiberarAterrissagem(queue **q)
  569. {
  570.     struct PistaAterrissagem *p1;
  571.  
  572.     for(p1 = (*q)->begin; p1 != NULL; p1=p1->next)
  573.     {
  574.         struct PistaAterrissagem *p2 = p1->next;
  575.         free(p2);
  576.     }
  577.  
  578.     return 1;
  579. }
  580.  
  581. void Menu()
  582. {
  583.     fila_d *f = Create_Queue_Airplane();
  584.     queue *q  = Create_Queue_Aterrissagem();
  585.  
  586.     int opc,r;
  587.  
  588.     do
  589.     {
  590.         ArteMenu();
  591.         r = random_id_airplane();
  592.  
  593.         printf("\n\t [0]            SAIR                  ");
  594.         printf("\n\t [1]           DECOLAGEM              ");
  595.         printf("\n\t [2]            ATERRISAGEM           ");
  596.         printf("\n\t [3]             LISTAR/DECOLAGEM     ");
  597.         printf("\n\t [4]            LISTAR/ATERRISSAGEM   ");
  598.         printf("\n\t [5]              LIBERAR/DECOLAGEM]   ");
  599.         printf("\n\t [6]             LIBERAR/ATERRISSAGEM  ");
  600.  
  601.         printf("\n\n\t  > "); scanf("%d",&opc);
  602.  
  603.         switch(opc)
  604.         {
  605.             default:
  606.                 break;
  607.             case 0:
  608.                 exit( 0 );
  609.             case 1:
  610.                enqueue_airplane(&f,r);
  611.                break;
  612.             case 2:
  613.                 Enqueue(&q,r);
  614.                 break;
  615.             case 3:
  616.                 SHOW(&f);
  617.                 break;
  618.             case 4:
  619.                 MostrarAterrissagem(&q);
  620.                 break;
  621.             case 5:
  622.                 LiberarDecolagem(&f);
  623.                 break;
  624.             case 6:
  625.                 LiberarAterrissagem(&q);
  626.                 break;
  627.             case 7:
  628.                 ArtFall();
  629.                 break;
  630.                          
  631.         }
  632.  
  633.    }while(opc !=0);
  634.  
  635. }
  636.  
  637. int main(void)
  638. {
  639.     Menu();
  640.  
  641.    return 0;
  642. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement