Você está na página 1de 3

using System;

using System.Collections;

namespace ConsoleApplication3
{
public class ListaProdutos
{
private static string[] prodtudos = {"item1", "item2", "item3", "item4"};
public static bool buscarProduto(string produto)
{
for (int i = 0; i < ListaProdutos.prodtudos.Length; i++)
{
if (ListaProdutos.prodtudos[i] == produto.ToLower())
{
return true;
}
}

return false;
}
}

public class Inteface


{
private ArrayList listaCompras = new ArrayList();

public void show()


{
for (int i = 0; i < 10; i++)
{
string nome = entradaNome();
int qtd = entradaQtd();
double valor = entradaValor();

listaCompras.Add(new Produto(nome, qtd, valor));

if (i < 9)
{
if (definirSeClienteQueContinuarOuFinalizarCompra())
{
break;
}
}
}
imprimirCupom();
}

private void imprimirCupom()


{
Console.WriteLine("### CUPOM ###");
Console.WriteLine("--- PRODUTOS ---");
double valor_total = 0;
foreach (Produto produto in listaCompras)
{
valor_total += (produto.valor * produto.qtd);
Console.WriteLine("{0}: R$: {1} x {2}", produto.nome, produto.qtd,
produto.valor);
}
Console.WriteLine("----------");
Console.WriteLine("Valor total: {0}", valor_total);
}

private bool definirSeClienteQueContinuarOuFinalizarCompra()


{
int entrada;
while (true)
{
Console.WriteLine("Digite [0] para finalizar ou [1] para continuar
a compra");
entrada = Convert.ToInt16(Console.ReadLine());
if (entrada == 0 || entrada == 1)
{
break;
}
Console.WriteLine("*** Comando não encontrado ***");
}

return (entrada == 0);


}

private string entradaNome()


{
string produto;
while (true)
{
Console.WriteLine("Insira o nome do produto: ");
produto = Console.ReadLine();

if (ListaProdutos.buscarProduto(produto))
{
break;
}

Console.WriteLine("*** Produto Inexistente ***");


}

return produto;
}

private int entradaQtd()


{
int qtd;
while (true)
{
Console.WriteLine("Insira a quantidade: ");
qtd = Convert.ToInt32(Console.ReadLine());

if (qtd > 0)
{
break;
}

Console.WriteLine("*** Quantidad Inválida ***");


}

return qtd;
}
private double entradaValor()
{
double valor;
while (true)
{
Console.WriteLine("Insira o valor do produto: ");
valor = Convert.ToDouble(Console.ReadLine());
if (valor > 0.01)
{
break;
}

Console.WriteLine("*** Valor inválido ***");


}

return valor;
}
}
public class Produto
{
public string nome { get; set; }
public int qtd { get; set; }
public double valor { get; set; }

public Produto(string nome, int qtd, double valor)


{
this.nome = nome;
this.qtd = qtd;
this.valor = valor;
}

public static void Main(string[] args)


{
Inteface app = new Inteface();
app.show();
}
}
}

Você também pode gostar