Advertisement
Guest User

Trabalho APII

a guest
Mar 30th, 2016
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 19.41 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace trabalho_APII
  8. {
  9.     public class eventos
  10.     {
  11.         public struct admin
  12.         {
  13.             public string username;
  14.             public int password;
  15.         }
  16.         public struct user
  17.         {
  18.             public string username;
  19.             public int password;
  20.         }
  21.         public struct espetaculos
  22.         {
  23.             public string tipo;
  24.             public string nome;
  25.             public string local;
  26.             public int capacidade;
  27.             public sessões sessão;
  28.             public string participante_A;
  29.             public string participante_B;
  30.             public int nmr_de_sessões;
  31.  
  32.         }
  33.         public struct sessões
  34.         {
  35.             public bilhete Data;
  36.             public int sala;
  37.             public bilhete bilhete;
  38.            
  39.         }
  40.         public struct bilhete
  41.         {
  42.             public DateTime Dia;
  43.             public DateTime hora_inicio;
  44.             public DateTime hora_fim;
  45.             public string participante;
  46.             public string exras;
  47.         }
  48.         static void menu()
  49.         {
  50.             Console.WriteLine("\t**************************************************************************************************************");
  51.             Console.WriteLine("\t**************************************************************************************************************");
  52.             Console.WriteLine("\t****       ***      ****   *********   *********  *********  **  **    ******  **       **********       *****");
  53.             Console.WriteLine("\t****  ****  **  ********     *****     **********  *******   **  **  *  *****  **  ******  *****   *****   ***");
  54.             Console.WriteLine("\t****  ****  **  ********  **  ***  **  ***********  *****  ****  **  **  ****  **  *******  ***   *******   **");
  55.             Console.WriteLine("\t****       ***      ****  ***  *  ***  ************  ***  *****  **  ***  ***  **  ********  **   *******   **");
  56.             Console.WriteLine("\t****  ****  **  ********  ****   ****  *************  *  ******  **  ****  **  **  *******   **   *******   **");
  57.             Console.WriteLine("\t****  ****  **  ********  ***** *****  **************   *******  **  *****  *  **  ******   ****   *****   ***");
  58.             Console.WriteLine("\t****       ***      ****  ***********  *************** ********  **  ******    **         ********        ****");
  59.             Console.WriteLine("\t**************************************************************************************************************");
  60.             Console.WriteLine("\t**************************************************************************************************************");
  61.         }
  62.         static void apresenta_menu()
  63.         {
  64.             Console.WriteLine("*** escolha o que pretende fazer ***\n");
  65.             Console.WriteLine("R- Registar evento");
  66.             Console.WriteLine("V- Ver sessões dos eventos");
  67.             Console.WriteLine("U- Registar utilizador");
  68.             Console.WriteLine("C- Comprar bilhete");
  69.             Console.WriteLine("S- sair");
  70.  
  71.  
  72.         }
  73.         static void apresenta_menu_user_normal()
  74.         {
  75.             Console.WriteLine("*** escolha o que pretende fazer ***\n");
  76.             Console.WriteLine("V- Ver sessões dos eventos");
  77.             Console.WriteLine("C- Comprar bilhete");
  78.             Console.WriteLine("S- sair");
  79.         }
  80.         static void apresenta_menu_user_sem_conta()
  81.         {
  82.             Console.WriteLine("*** escolha o que pretende fazer ***\n");
  83.             Console.WriteLine("V- Ver sessões dos eventos");
  84.             Console.WriteLine("C-Criar conta");
  85.             Console.WriteLine("S- sair");
  86.         }
  87.         static espetaculos Eventos_iniciais(List<espetaculos> lista)
  88.         {
  89.             espetaculos desportivo1 = new espetaculos();            
  90.             desportivo1.tipo = "Desportivo";
  91.             desportivo1.nome = "Benfica X Sporting";
  92.             desportivo1.local = "Estadio da luz";
  93.             desportivo1.capacidade = 61000;
  94.             desportivo1.sessão.bilhete.Dia.AddDays(20).AddMonths(6).AddYears(2015);
  95.             desportivo1.sessão.bilhete.hora_inicio.AddHours(20).AddMinutes(15);
  96.             desportivo1.sessão.bilhete.hora_fim.AddHours(22);
  97.             return desportivo1;
  98.  
  99.         }
  100.         static void Main(string[] args)
  101.         {
  102.             int b = 0;
  103.             char escolha;
  104.             escolha = '*';
  105.             List<espetaculos> lista = new List<espetaculos>();
  106.             espetaculos registo = new espetaculos();
  107.             admin admin = new admin();
  108.             admin.username = "Tiago";
  109.             admin.password = 123;
  110.             user utilizador = new user();
  111.             utilizador.username = "Zé";
  112.             utilizador.password = 1516;
  113.             menu();
  114.             Console.WriteLine("utilizador ?\nA-Administrador\nU-Utilizador registado\nS-Sem conta");
  115.             char admin_e = Console.ReadKey().KeyChar;
  116.             switch (admin_e)
  117.             {
  118.                 case 'A':
  119.                 case 'a':
  120.                     Console.Write("\nPassword: ");
  121.                     int pass = Convert.ToInt32(Console.ReadLine());
  122.                     if (pass == admin.password)
  123.                     {
  124.                         Console.Clear();
  125.                         menu();
  126.                         Console.WriteLine("olá {0}", admin.username);
  127.  
  128.                         while (escolha != 'S' || escolha != 's')
  129.                         {
  130.                             apresenta_menu();
  131.                             Console.WriteLine();
  132.                             escolha = Console.ReadKey().KeyChar;
  133.                             Console.Clear();
  134.                             switch (escolha)
  135.                             {
  136.                                 case 'R':
  137.                                 case 'r':registar_evento(lista, registo); break;
  138.                                 case 'V':
  139.                                 case 'v': ver_sessões(lista, registo); break;
  140.                                 case 'S':
  141.                                 case 's': break;
  142.                                 default: Console.WriteLine(" \ncomando invalido, tente outra vez!!"); break;
  143.                             }
  144.                             if (escolha == 's' || escolha == 'S')
  145.                                 break;
  146.                         }
  147.  
  148.                     }
  149.                     else
  150.                     {
  151.                         for (int i = 1; i < 3; i++)
  152.                         {
  153.                             Console.Write("password errada!!\nTente outra vez: ");
  154.                             Console.WriteLine("\n{0} tentativas restantes", 3 - i);
  155.                             pass = Convert.ToInt32(Console.ReadLine());
  156.                             if (pass == admin.password)
  157.                             {
  158.                                 b = 1;
  159.                                 break;
  160.                             }
  161.  
  162.                         }
  163.                         if (b == 1)
  164.                         {
  165.                             Console.Clear();
  166.                             menu();
  167.                             Console.WriteLine("olá {0}", admin.username);
  168.  
  169.                             while (escolha != 'S' || escolha != 's')
  170.                             {
  171.                                 apresenta_menu();
  172.                                 Console.WriteLine();
  173.                                 escolha = Console.ReadKey().KeyChar;
  174.                                 Console.Clear();
  175.                                 switch (escolha)
  176.                                 {
  177.                                     case 'V':
  178.                                     case 'v': ver_sessões(lista, registo); break;
  179.                                     case 'S':
  180.                                     case 's': break;
  181.                                     default: Console.WriteLine(" comando invalido, tente outra vez!!"); break;
  182.                                 }
  183.                                 if (escolha == 's' || escolha == 'S')
  184.                                     break;
  185.                             }
  186.  
  187.                         }
  188.                        
  189.                     }break;
  190.                 case 'U':
  191.                 case 'u':
  192.                     Console.Write("Nome: ");
  193.                     string nome = Console.ReadLine();
  194.                     Console.WriteLine();
  195.                     if (nome == utilizador.username)
  196.                     {
  197.                         Console.Write("Password: ");
  198.                         pass = Convert.ToInt32(Console.ReadLine());
  199.                         if (pass == utilizador.password)
  200.                         {
  201.  
  202.                             Console.Clear();
  203.                             menu();
  204.                             Console.WriteLine("olá {0}", admin.username);
  205.                             while (escolha != 'N' || escolha != 'n')
  206.                             {
  207.                                 Console.Clear();
  208.                                 menu();
  209.                                 Console.WriteLine("olá {0}", admin.username);
  210.                                 while (escolha != 'N' || escolha != 'n')
  211.                                 {
  212.                                     apresenta_menu_user_normal();
  213.                                     Console.WriteLine();
  214.                                     escolha = Console.ReadKey().KeyChar;
  215.                                     Console.Clear();
  216.                                     switch (escolha)
  217.                                     {
  218.                                         case 'V':
  219.                                         case 'v': ver_sessões(lista, registo); break;
  220.                                         case 'S':
  221.                                         case 's': break;
  222.                                         default:
  223.                                             Console.WriteLine("opção invalida, tente outra vez!!");
  224.                                             break;
  225.                                     }
  226.                                     if (escolha == 's' || escolha == 'S')
  227.                                         break;
  228.                                 }
  229.  
  230.                             }
  231.                             if (b == 1)
  232.                             {
  233.                                 Console.Clear();
  234.                                 menu();
  235.                                 Console.WriteLine("olá {0}", utilizador.username);
  236.  
  237.                                 while (escolha != 'S' || escolha != 's')
  238.                                 {
  239.                                     apresenta_menu_user_normal();
  240.                                     Console.WriteLine();
  241.                                     escolha = Console.ReadKey().KeyChar;
  242.                                     Console.Clear();
  243.                                     switch (escolha)
  244.                                     {
  245.                                         case 'V':
  246.                                         case 'v': ver_sessões(lista, registo); break;
  247.                                         case 'S':
  248.                                         case 's': break;
  249.                                         default: Console.WriteLine(" comando invalido, tente outra vez!!"); break;
  250.                                     }
  251.                                     if (escolha == 's' || escolha == 'S')
  252.                                         break;
  253.                                 }
  254.  
  255.                             }
  256.  
  257.                         }
  258.  
  259.                     }
  260.                     break;
  261.                 default: Console.WriteLine("tecla incorreta...\nTente outra vez!!!"); break;
  262.                 case 'S':
  263.                 case 's': apresenta_menu_user_sem_conta();break;
  264.             }
  265.             Console.WriteLine();
  266.         }
  267.         static void registar_evento(List<espetaculos> lista, espetaculos registo)
  268.         {
  269.             DateTime max = new DateTime();
  270.             max.AddHours(23);
  271.             max.AddMinutes(59);
  272.             Console.WriteLine("***Menu Registo***");
  273.             Console.Write("pretende registar o evento? \nS-Sim\nN-Não");
  274.             char c = Console.ReadKey().KeyChar;
  275.             Console.Clear();
  276.             switch (c)
  277.             {
  278.                 case 'S':
  279.                 case 's':
  280.                     Console.Write("quantos eventos pretende criar? ");
  281.                     int n = Convert.ToInt32(Console.ReadLine());
  282.                     for (int i = 0; i < n+1; i++)
  283.                     {
  284.                         lista.Add(new espetaculos());
  285.                         Console.WriteLine("\tTipo de evento");
  286.                         Console.WriteLine("D-Desportivo\nA-Artistico\nConferencia\n");
  287.                         Console.Write("Opção: ");
  288.                         Console.WriteLine();
  289.                         char b = Console.ReadKey().KeyChar;
  290.                         Console.WriteLine();
  291.                         if (b == 'D' || b == 'd')
  292.                             registo.tipo = "Desportivo";
  293.                         if (b == 'A' || b == 'a')
  294.                             registo.tipo = "Artistico";
  295.                         switch (b)
  296.                         {
  297.                             case 'D':
  298.                             case 'd':
  299.                                 Console.WriteLine("S-singular\nE- Equipas ");
  300.                                 char a = Console.ReadKey().KeyChar;
  301.                                 switch(a)
  302.                                 {
  303.                                     case 'E':
  304.                                     case 'e':
  305.                                     Console.Write("\nEquipa A: ");
  306.                                     registo.participante_A = Console.ReadLine();
  307.                                     Console.Write("\nEquipa B: ");
  308.                                     registo.participante_B = Console.ReadLine();
  309.                                     registo.nome = (registo.participante_A + " X " + registo.participante_B);
  310.                                     Console.Write("\nEstadio: ");
  311.                                     registo.local = Console.ReadLine();
  312.                                     Console.Write("\nCapacidade do estádio: ");
  313.                                     registo.capacidade = Convert.ToInt32(Console.ReadLine());
  314.                                     Console.Write("\nDia");
  315.                                     registo.sessão.bilhete.Dia = Convert.ToDateTime(Console.ReadLine());
  316.                                     Console.Write("\nHora de inicio");
  317.                                     registo.sessão.bilhete.hora_inicio = Convert.ToDateTime(Console.ReadLine());
  318.                                     Console.Write("\nHora do final: ");
  319.                                     registo.sessão.bilhete.hora_fim = Convert.ToDateTime(Console.ReadLine());                                        
  320.                                     Console.WriteLine("\nEvento: {0}    \tcriado ", registo.nome);
  321.                                     Console.WriteLine("\nHora de inicio: {0} ");
  322.                                     break;
  323.                                     case 'S':
  324.                                     case 's':
  325.                                     Console.WriteLine("Prova: ");
  326.                                     registo.nome = Console.ReadLine();
  327.                                     Console.WriteLine("Estadio: ");
  328.                                     registo.local = Console.ReadLine();
  329.                                     Console.WriteLine("Capacidade do estádio: ");
  330.                                     registo.capacidade = Convert.ToInt32(Console.ReadLine());
  331.                                     Console.WriteLine("Hora de inicio");
  332.                                     registo.sessão.bilhete.hora_inicio = Convert.ToDateTime(Console.ReadLine());
  333.                                         break;
  334.                                     default: Console.Write("opção onvalida!!!");
  335.                                         break;
  336.                                 }
  337.                                
  338.                                 Console.WriteLine("evento {0} registado com sucesso");
  339.                                 break;
  340.                             case 'A':
  341.                             case 'a':
  342.                                 Console.Write("Nome: ");
  343.                                 registo.nome = Console.ReadLine();
  344.                                 Console.Write("local: ");
  345.                                 registo.local = Console.ReadLine();
  346.                                 Console.Write("Capacidade: ");
  347.                                 registo.capacidade = Convert.ToInt32(Console.ReadLine());
  348.                                 Console.Write("Hora de inicio: ");
  349.                                 registo.sessão.bilhete.hora_inicio = Convert.ToDateTime(Console.ReadLine());
  350.                                 Console.Write("hora do final: ");
  351.                                 registo.sessão.bilhete.hora_fim = Convert.ToDateTime(Console.ReadLine());
  352.                                 break;
  353.                             case 'C':
  354.                             case 'c':
  355.                                 Console.Write("Nome: ");
  356.                                 registo.nome = Console.ReadLine();
  357.                                 Console.Write("local: ");
  358.                                 registo.local = Console.ReadLine();
  359.                                 Console.Write("Capacidade: ");
  360.                                 registo.capacidade = Convert.ToInt32(Console.ReadLine());
  361.                                 Console.Write("Hora de inicio: ");
  362.                                 registo.sessão.bilhete.hora_inicio = Convert.ToDateTime(Console.ReadLine());
  363.                                 Console.Write("hora do final: ");
  364.                                 registo.sessão.bilhete.hora_fim = Convert.ToDateTime(Console.ReadLine());
  365.                                 break;
  366.                             case 'S':
  367.                             case 's': break;
  368.                             default: Console.WriteLine("tecla incorreta...\nTente outra vez!!!"); break;
  369.                         }
  370.                     }
  371.                     break;
  372.                            
  373.  
  374.                             case 'n':
  375.                             case 'N':
  376.                                 Console.Clear();
  377.                                 break;
  378.                 default: Console.WriteLine("tecla incorreta...\nTente outra vez!!!"); break;
  379.                         }
  380.                         Console.Clear();
  381.                     }
  382.         static void ver_sessões(List<espetaculos> lista, espetaculos ver)
  383.         {
  384.             char escolha = '*';
  385.             Console.WriteLine("************************");
  386.             Console.WriteLine("***tipo de espetaculo***");
  387.             Console.WriteLine("D- Desportivo");
  388.             Console.WriteLine("A-artistico");
  389.             Console.WriteLine("I-informacional");
  390.             Console.WriteLine("S- sair");
  391.             Console.WriteLine();
  392.             escolha = Convert.ToChar(Console.ReadKey().KeyChar);
  393.             switch (escolha)
  394.             {
  395.                 case 'D':
  396.                 case 'd':
  397.                     for (int i = 0; i < lista.Count; i++)
  398.                     {
  399.                         Console.WriteLine(lista);
  400.                     }break;
  401.             }
  402.  
  403.         }
  404.     }
  405. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement