示例#1
0
        } // exercicio675_Click

        /// <summary>
        /// Qual a saída do código?
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void exercicio678_Click(object sender, EventArgs e)
        {
            // Criando a conta do mauricio e preenchendo o saldo
            Conta mauricio = new Conta();

            // Agora o saldo não pode mais ser alterado diretamente. Só utilizando métodos.
            //mauricio.Saldo = 2000.0;
            mauricio.Deposita(2000);

            // Criando a conta do guilherme e preenchendo o saldo
            Conta guilherme = new Conta();

            // Agora o saldo não pode mais ser alterado diretamente. Só utilizando métodos.
            //guilherme.Saldo = 5000.0;
            guilherme.Deposita(5000);

            // Alterando os saldos das contas
            // Agora o saldo não pode mais ser alterado diretamente. Só utilizando métodos.
            //mauricio.Saldo -= 200.0;
            mauricio.Deposita(-200);
            // Agora o saldo não pode mais ser alterado diretamente. Só utilizando métodos.
            //guilherme.Saldo += 200.0;
            guilherme.Deposita(200);

            // Exibindo os saldos das contas
            MessageBox.Show("mauricio = " + mauricio.Saldo);
            MessageBox.Show("guilherme = " + guilherme.Saldo);
        } // fim exercicio678_Click
示例#2
0
        private void button12_Click(object sender, EventArgs e)
        {
            Conta  c = new Conta();
            double valorADepositar = 200.0;

            c.Deposita(valorADepositar);
        }
示例#3
0
 public void Transfere(double valor, Conta destino)
 {
     if (this.Saca(valor))
     {
         destino.Deposita(valor);
     }
 }
示例#4
0
        } // fim exercicio6713_Click

        /// <summary>
        /// Alterando o método Saca para trabalhar com limite
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void exercicio6714_Click(object sender, EventArgs e)
        {
            // Declarando uma conta e preenchendo atributos
            Conta c1 = new Conta();

            //c1.Saldo = 2000.0;
            c1.Deposita(2000);

            // Agora a idade não fica mais em conta, fica na classe cliente. Para acessar esse valor, preciso criar um cliente e acessar o atributo titular.
            //c1.idade = 16;
            c1.Titular       = new Cliente();
            c1.Titular.Nome  = "Ana";
            c1.Titular.Idade = 16;

            // Testa o metodo saca agora com limite por idade. SE retornou "true" ...
            if (c1.Saca(500))
            {
                // ... exibir mensagem de saque efetuado com sucesso.
                MessageBox.Show("Saque efetuado com sucesso");
            }
            else // CASO CONTRÁRIO ...
                 // ... exibir mensagem de erro genérico, já que pode ser tanto saldo insuficiente quanto limite inválido.
            {
                MessageBox.Show("Ocorreu um erro ao sacar");
            }
        } // fim exercicio6714_Click
示例#5
0
        } // fim exercicio6712_Click

        /// <summary>
        /// Alterando o método Saca para retornar o valor
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void exercicio6713_Click(object sender, EventArgs e)
        {
            // Cria uma conta e preenche seus atributos
            Conta c1 = new Conta();

            //c1.Saldo = 2000.0;
            c1.Deposita(2000);

            // Agora a idade não fica mais em conta, fica na classe cliente. Para acessar esse valor, preciso criar um cliente e acessar o atributo titular.
            //c1.idade = 16;
            c1.Titular       = new Cliente();
            c1.Titular.Nome  = "Ana";
            c1.Titular.Idade = 16;

            // SE o saque for um sucesso...
            if (c1.Saca(500))
            {
                // Exibe a mensagem de sucesso
                MessageBox.Show("Saque efetuado com sucesso");
            }
            else
            {
                // Exibe a mensage de saldo insuficiente
                MessageBox.Show("Saldo insuficiente");
            }
        } // fim exercicio6713_Click
示例#6
0
        } // fim exercicio548_Click

        /// <summary>
        /// Testes criando várias contas com atributos diferentes
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void exercicio675_Click(object sender, EventArgs e)
        {
            // Cria uma nova conta
            Conta contaVictor = new Conta();

            // Preenche seus atributos, agora eles são propriedades
            // Agora o atributo titular não é mais do tipo String...é do tipo Cliente...
            //mauricio2.titular = "Mauricio";
            contaVictor.Titular      = new Cliente();
            contaVictor.Titular.Nome = "Victor";
            contaVictor.Numero       = 1;
            // Agora o saldo não pode mais ser alterado diretamente. Só utilizando métodos.
            //contaVictor.Saldo = 100.0;
            contaVictor.Deposita(100);

            // Exibe o nome do titular preenchido.
            MessageBox.Show(contaVictor.Titular.Nome);

            // Repetindo a operacao anterior com novos valores
            Conta contaLeo = new Conta();

            // Agora o atributo titular não é mais do tipo String...é do tipo Cliente...
            //mauricio2.titular = "Mauricio";
            contaLeo.Titular      = new Cliente();
            contaLeo.Titular.Nome = "Leo";
            contaLeo.Numero       = 2;
            // Agora o saldo não pode mais ser alterado diretamente. Só utilizando métodos.
            //contaLeo.Saldo = 200.0;
            contaLeo.Deposita(200);

            // Exibe o saldo da conta do Leo
            MessageBox.Show("Saldo: " + contaLeo.Saldo);
        } // exercicio675_Click
示例#7
0
        private void button21_Click(object sender, EventArgs e)
        {
            Conta   contaVictor = new Conta();
            Cliente victor      = new Cliente();

            victor.nome         = "victor";
            contaVictor.titular = victor;
            contaVictor.numero  = 1;
            contaVictor.saldo   = 100.0;
            contaVictor.Deposita(100.0);
            MessageBox.Show("Saldo atual: " + contaVictor.saldo);
            contaVictor.Saca(50.0);
            MessageBox.Show("Saldo atual: " + contaVictor.saldo);

            Conta   contaAlessandro = new Conta();
            Cliente alessandro      = new Cliente();

            alessandro.nome         = "Alessandro";
            contaAlessandro.titular = alessandro;
            contaAlessandro.numero  = 2;
            contaAlessandro.saldo   = 0.0;
            contaAlessandro.Deposita(1000.0);
            MessageBox.Show("Saldo atual: " + contaAlessandro.saldo);
            contaAlessandro.Saca(500.0);
            MessageBox.Show("Saldo atual: " + contaAlessandro.saldo);
        }
示例#8
0
        } // fim Saca

        /// <summary>
        /// Realiza uma transferencia entre contas
        /// </summary>
        /// <param name="destino">A referência para a conta de destino</param>
        /// <param name="valor">O valor a ser transferido</param>
        public void Transfere(Conta destino, double valor)
        {
            // Tenta realizar um saque da conta de origem (this)
            bool sucesso = this.Saca(valor);

            // SE foi um sucesso...
            if (sucesso)
            {
                // ... deposita na conta de destino
                destino.Deposita(valor);
            } // fim if
        }     // fim Transfere
示例#9
0
        } // fim exercicio6710_Click

        /// <summary>
        /// Implementando e usando o método transfere
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void exercicio6711_Click(object sender, EventArgs e)
        {
            // Valor a ser transferido
            double valor = 1000;

            // Criando a conta de origem
            Conta origem = new Conta();

            //origem.Saldo = 2000.0;
            origem.Deposita(2000);

            // Criando a conta de destino
            Conta destino = new Conta();

            // Transferindo um valor da conta de origem para a conta de destino
            origem.Transfere(destino, valor);

            // Exibe uma mensagem com o valor de transferência e os saldos das duas contas
            MessageBox.Show("Valor transferido: " + valor + "\nSaldo c1: " + origem.Saldo + "\nSaldo c2: " + destino.Saldo);
        } // fim exercicio6711_Click
示例#10
0
        }     // fim exercicio679_Click/

        /// <summary>
        /// Qual é a saída do código?
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void exercicio6710_Click(object sender, EventArgs e)
        {
            // Criando a conta do mauricio e atribuindo um saldo
            Conta mauricio = new Conta();

            //mauricio.saldo = 2000.0;
            mauricio.Deposita(2000);

            // Copiando a referência da variavel mauricio e colando na variavel copia
            Conta copia = mauricio;

            // Alterando o atributo saldo do objeto da referência de copia
            //copia.saldo = 3000.0;
            copia.Deposita(3000);

            // Exibindo os saldos.
            // Nesse caso, os saldos serão iguais. Como mauricio e copia possuem a referência para um mesmo objeto,
            // se um deles modificar um atributo, o outro irá enxergar a mudança automaticamente.
            MessageBox.Show("mauricio = " + mauricio.Saldo);
            MessageBox.Show("copia = " + copia.Saldo);
        } // fim exercicio6710_Click
示例#11
0
        } // fim exercicio678_Click

        /// <summary>
        /// Qual a saída do código?
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void exercicio679_Click(object sender, EventArgs e)
        {
            // Criando a conta do mauricio e preenchendo os atributos
            Conta mauricio = new Conta();

            mauricio.Numero = 1;
            // Agora o atributo titular não é mais do tipo String...é do tipo Cliente...
            //mauricio2.titular = "Mauricio";
            mauricio.Titular      = new Cliente();
            mauricio.Titular.Nome = "Maurício";
            //mauricio.Saldo = 100.0;
            mauricio.Deposita(100);

            // Criando outra conta do mauricio e preenchendo os atributos com os mesmos valores
            Conta mauricio2 = new Conta();

            mauricio2.Numero = 1;
            // Agora o atributo titular não é mais do tipo String...é do tipo Cliente...
            //mauricio2.titular = "Mauricio";
            mauricio2.Titular      = new Cliente();
            mauricio2.Titular.Nome = "Maurício";
            //mauricio2.Saldo = 100.0;
            mauricio2.Deposita(100);

            // SE mauricio e mauricio2 forem iguais...
            if (mauricio == mauricio2)
            {
                // ... Exibe mensagem de iguais
                MessageBox.Show("As contas são iguais");
            }    // fim if
            else // CASO CONTRÁRIO...
            {
                // ... Exibe mensagem de diferentes
                // Neste caso, as contas são diferentes, mesmo que seus valores sejam idênticos.
                // Como criamos duas referências diferentes (fizemos "new" duas vezes"), são objetos diferentes, com valores de atributos iguais.
                // Isso faz diferença.
                MessageBox.Show("As contas são diferentes");
            } // fim else
        }     // fim exercicio679_Click/
示例#12
0
        } // fim exercicio6711_Click

        /// <summary>
        /// Adicionando uma validação no método Saca
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void exercicio6712_Click(object sender, EventArgs e)
        {
            // Criando uma conta e inicializando seu saldo
            Conta c1 = new Conta();

            //c1.Saldo = 2000.0;
            c1.Deposita(2000);

            // Realiza um saque e recupera o resultado
            bool sucesso = c1.Saca(500);

            // SE foi um sucesso ...
            if (sucesso)
            {
                // ... exibe a mensagem de sucesso
                MessageBox.Show("Saque efetuado com sucesso!");
            }
            else // CASO CONTRÁRIO...
                 // ... exibe a mensagem de saldo insuficiente
            {
                MessageBox.Show("Saldo insuficiente");
            }
        } // fim exercicio6712_Click
 public void Transfere(double valor, Conta destino)
 {
     this.Saca(valor);
     destino.Deposita(valor);
 }