Advertisement
Guest User

Untitled

a guest
Oct 19th, 2018
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.97 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 Pedidos
  8. {
  9.     struct Produto
  10.     {
  11.         public int Codigo;
  12.         public string Nome;
  13.         public float Preco;
  14.     }
  15.  
  16.     struct ProdutoPedido
  17.     {
  18.         public Produto Produto;
  19.         public int Quantidade;
  20.     }
  21.  
  22.     struct Pedido
  23.     {
  24.         public ProdutoPedido[] Produtos;
  25.     }
  26.  
  27.     class Program
  28.     {
  29.         static void Main(string[] args)
  30.         {
  31.             int opcao;
  32.             Produto?[] produtos = new Produto?[5];
  33.             Pedido?[] pedidos = new Pedido?[5];
  34.  
  35.             do
  36.             {
  37.                 Console.WriteLine("1)Cadastrar Produto\n2)Listar Produto\n3)Sair");
  38.                 opcao = int.Parse(Console.ReadLine());
  39.  
  40.                 switch(opcao)
  41.                 {
  42.                     case 1:
  43.                         CadastrarProduto(produtos);
  44.                         break;
  45.  
  46.                     case 2:
  47.                         ListarProduto(produtos);
  48.                         break;
  49.                 }
  50.  
  51.             } while (opcao != 3);
  52.         }
  53.  
  54.         static void CadastrarProduto(Produto?[] produtos)
  55.         {
  56.             int codigo;
  57.             string nome;
  58.             float preco;
  59.  
  60.             int? indiceInserir = IndiceInserir(produtos);
  61.             if (!indiceInserir.HasValue)
  62.             {
  63.                 Console.WriteLine("Não pôde cadastrar produto.");
  64.                 return;
  65.             }
  66.  
  67.            
  68.             Console.WriteLine("Codigo:");
  69.             codigo = int.Parse(Console.ReadLine());
  70.  
  71.             foreach (Produto? p in produtos)
  72.             {
  73.                 if ((p.HasValue) && (p.Value.Codigo == codigo))
  74.                 {
  75.                     Console.WriteLine("Já existe produto com o código {0}", codigo);
  76.                     return;
  77.                 }
  78.             }
  79.  
  80.  
  81.             Console.WriteLine("Nome:");
  82.             nome = Console.ReadLine();
  83.             Console.WriteLine("Preço:");
  84.             preco = float.Parse(Console.ReadLine());
  85.  
  86.             Produto novoProduto = new Produto();
  87.             novoProduto.Codigo = codigo;
  88.             novoProduto.Nome = nome;
  89.             novoProduto.Preco = preco;
  90.  
  91.             produtos[indiceInserir.Value] = novoProduto;
  92.         }
  93.  
  94.         static void ListarProduto(Produto?[] produtos)
  95.         {
  96.             foreach (Produto? p in produtos)
  97.             {
  98.                 if (p.HasValue)
  99.                     Console.WriteLine("Codigo: {0}\nNome: {1}\nPreço: {2}\n", p.Value.Codigo, p.Value.Nome, p.Value.Preco);
  100.             }
  101.         }
  102.  
  103.         static int? IndiceInserir(Produto?[] produtos)
  104.         {
  105.             int? indiceInserir = null;
  106.  
  107.             for (int i = 0; i < produtos.Count(); i++)
  108.             {
  109.                 if (!produtos[i].HasValue)
  110.                     indiceInserir = i;
  111.             }
  112.  
  113.             return indiceInserir;
  114.         }
  115.     }
  116. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement