public ActionResult CalculaSaque(string ValorSaque) { var testSaque = ValorSaque; int value; if (testSaque == "") { value = 0; } else { value = Convert.ToInt32(testSaque); } int testAttValor; if (value == 0) { testAttValor = 0; } else { testAttValor = value; } //Apenas ilustrativo / para se ter uma noção se o deposito funfa var testeDeposito = new Deposito() { SaldoTotal = 10000 }; bool saqueAprovado = testeDeposito.VerificaSaldo(value); if (saqueAprovado == false) { //Mostrar ao usuario que o saldo é insuficiente. return(View()); } else { int nota100 = 0; int nota50 = 0; int nota20 = 0; int nota10 = 0; int nota5 = 0; int nota2 = 0; if (value % 2 != 0 && value > 5) { value -= 5; nota5 += 1; } nota100 = value / 100; nota50 = (value % 100) / 50; nota20 = ((value % 100) % 50) / 20; nota10 = (((value % 100) % 50) % 20) / 10; nota2 = (((((value % 100) % 50) % 20) % 10) / 2); value = (value - ((100 * nota100) + (50 * nota50) + (20 * nota20) + (10 * nota10) + (2 * nota2))); if (value == 0) { var testModelo = new ValoresNotas() { N100 = nota100, N50 = nota50, N20 = nota20, N10 = nota10, N5 = nota5, N2 = nota2, SaldoFinal = testeDeposito.AtualizaSaldo(testAttValor) }; //Retirar Valor do Saque do Saldo total e Atualizar na tela. return(View(testModelo)); } else { var testModelo = new ValoresNotas() { Valid = "O saque é inválido" }; return(View(testModelo)); } } }