Ejemplo n.º 1
0
        static void Main(string[] args)
        {
            Console.WriteLine("Informe o valor compra:");
            var valorCompra = decimal.Parse(Console.ReadLine());

            Console.WriteLine("Informe o valor nota:");
            var valorNota = decimal.Parse(Console.ReadLine());

            var textoValorNota = new Moedas().RetornaTroco(valorNota);

            Console.WriteLine($"Foi pago com: {textoValorNota}");

            var textoTroco = new Moedas().RetornaTroco(valorNota - valorCompra);

            Console.WriteLine($"*Troco*{Environment.NewLine}{textoTroco}");
        }
Ejemplo n.º 2
0
        public Moedas CalculaValor(decimal valor, Moedas moeda)
        {
            var texto = string.Empty;
            var qtd   = (int)(valor / moeda.Valor);

            if (qtd > 1)
            {
                texto += $"{qtd} {moeda.Texto.Replace("nota", "notas")}";
            }
            else
            {
                texto += $"{qtd} {moeda.Texto}";
            }
            valor -= moeda.Valor * qtd;

            return(new Moedas
            {
                Texto = texto,
                Valor = valor
            });
        }
Ejemplo n.º 3
0
        public string RetornaTroco(decimal valor)
        {
            var texto = string.Empty;

            if (valor >= CemReais.Valor)
            {
                var moeda = new Moedas {
                    Texto = CemReais.Nome, Valor = CemReais.Valor
                };
                var data = CalculaValor(valor, moeda);
                texto += data.Texto + Environment.NewLine;
                valor  = data.Valor;
            }
            if (valor >= CinquentaReais.Valor)
            {
                var moeda = new Moedas {
                    Texto = CinquentaReais.Nome, Valor = CinquentaReais.Valor
                };
                var data = CalculaValor(valor, moeda);
                texto += data.Texto + Environment.NewLine;
                valor  = data.Valor;
            }
            if (valor >= VinteReais.Valor)
            {
                var moeda = new Moedas {
                    Texto = VinteReais.Nome, Valor = VinteReais.Valor
                };
                var data = CalculaValor(valor, moeda);
                texto += data.Texto + Environment.NewLine;
                valor  = data.Valor;
            }
            if (valor >= DezReais.Valor)
            {
                var moeda = new Moedas {
                    Texto = DezReais.Nome, Valor = DezReais.Valor
                };
                var data = CalculaValor(valor, moeda);
                texto += data.Texto + Environment.NewLine;
                valor  = data.Valor;
            }
            if (valor >= CincoReais.Valor)
            {
                var moeda = new Moedas {
                    Texto = CincoReais.Nome, Valor = CincoReais.Valor
                };
                var data = CalculaValor(valor, moeda);
                texto += data.Texto + Environment.NewLine;
                valor  = data.Valor;
            }
            if (valor >= UmReal.Valor)
            {
                var moeda = new Moedas {
                    Texto = UmReal.Nome, Valor = UmReal.Valor
                };
                var data = CalculaValor(valor, moeda);
                texto += data.Texto + Environment.NewLine;
                valor  = data.Valor;
            }
            if (valor >= CinquentaCentavos.Valor)
            {
                var moeda = new Moedas {
                    Texto = CinquentaCentavos.Nome, Valor = CinquentaCentavos.Valor
                };
                var data = CalculaValor(valor, moeda);
                texto += data.Texto + Environment.NewLine;
                valor  = data.Valor;
            }
            if (valor >= VinteECintoCentavos.Valor)
            {
                var moeda = new Moedas {
                    Texto = VinteECintoCentavos.Nome, Valor = VinteECintoCentavos.Valor
                };
                var data = CalculaValor(valor, moeda);
                texto += data.Texto + Environment.NewLine;
                valor  = data.Valor;
            }
            if (valor >= DezCentavos.Valor)
            {
                var moeda = new Moedas {
                    Texto = DezCentavos.Nome, Valor = DezCentavos.Valor
                };
                var data = CalculaValor(valor, moeda);
                texto += data.Texto + Environment.NewLine;
                valor  = data.Valor;
            }
            if (valor >= CincoCentavos.Valor)
            {
                var moeda = new Moedas {
                    Texto = CincoCentavos.Nome, Valor = CincoCentavos.Valor
                };
                var data = CalculaValor(valor, moeda);
                texto += data.Texto + Environment.NewLine;
                valor  = data.Valor;
            }
            if (valor >= UmCentavo.Valor)
            {
                var moeda = new Moedas {
                    Texto = UmCentavo.Nome, Valor = UmCentavo.Valor
                };
                var data = CalculaValor(valor, moeda);
                texto += data.Texto + Environment.NewLine;
                valor  = data.Valor;
            }
            return(texto);
        }