3
respostas

Construtor das operações (soma, subtração, divisão e multiplicação) dentro do construtor de Operações

Professor, bom dia!

Primeiramente gostaria de parabenizá-lo pela didática! Estou gostando muito !

Segundo, neste exercício fiquei uns pares de horas tentando sozinha fazer isso: fazer o Construtor das operações (soma, subtração, divisão e multiplicação) serem ativados dentro do construtor de Operações.

Minha ideia era a seguinte (era porque eu acabei desistindo, mas continuo pesquisando nas horas vagas):

Criar o construtor Operações, na classe Operações, com 2 variáveis.

  • dentro do construtor Operações queria fazer referência aos construtores da Soma, Subtração, Divisão e Multiplicação, que foram criados em outra a classe, logo outro arquivo .cs (da forma como você idealizou na sua explicação).
  • gostaria que as 2 variáveis do construtor Operações fossem os mesmos utilizados nos construtores da Soma, Subtração, Divisão e Multiplicação.

PERGUNTA: é possível? eu acho que é só que ainda não consegui achar a resposta.

Obrigada

3 respostas

Olá Flávia!

Desculpe, deixa eu ver se entendi a pergunta... você quer passar os dois valores em uma sobrecarga do construtor da classe Operações? Alguma coisa assim, por exemplo:

using caOperacoesBasicas.basicas;

namespace caOperacoesMatematicas;

public class Operacoes
{
    public Soma Soma { get; private set; }
    public Subtracao Subtracao { get; private set; }
    public Multiplicacao Multiplicacao { get; private set; }
    public Divisao Divisao { get; private set; }

    public Operacoes()
    {
        Soma = new();
        Subtracao = new();
        Multiplicacao = new();
        Divisao = new();
    }

    public Operacoes(double valor1, double valor2)
    {
        Soma = new();
        Subtracao = new();
        Multiplicacao = new();
        Divisao = new();
    }

}

[]'s,

Fabio I.

Bom dia Flávia,

Já quero iniciar agradecendo o feedback! vlw. Respondendo sua pergunta, é possível fazer sim, pelo que entendi vc quer passar no construtor de operações e repassar para o cosntrutor dos objetos de cada operação, como o Fábio mostra no post acima correto?


 public Operacoes(double valor1, double valor2)
    {
        Soma = new(valor1,valor2);
        Subtracao = new(valor1,valor2);
        Multiplicacao = new(valor1,valor2);
        Divisao = new(valor1,valor2);
    }

Seria necessário refatorar as classes referentes as operações para receberem no construtor os valores, algo como:


public class Soma
    {
       private double valor1;
       private double valor2;
        public Soma(double valor1, double valor2)
        {
            this.valor1=valor1;
            this.valor2=valor2;
        }

        public double Calcular()
        {
            return this.valor1 + this.valor2;
        }

        public double Calcular(double valor1, double valor2)
        {
            return valor1 + valor2;
        }
    }

É uma possibilidade, blz? Espero ter conseguido ajudar, se a dúvida continuar não deixe de nos acionar aqui no fórum.

Obrigada, André! Na sua solução você colocou tudo em um mesmo arquivo, ne? Só que os construtores das operações de soma, subtração, multiplicação e divisão não estão fazendo os cálculos... fiquei na dúvida de como o sistema iria calcular.

André, era mais ou menos esse o raciocínio que eu tive, mas eu não queria fazer um método Calcular(), eu tentei fazer o cálculo no construtor, isso não é possível?

"public Soma(double valor1, double valor2) { this.valor1=valor1; this.valor2=valor2; }" -> copiei o seu código.

eu queria chamar o construtor e ele já retornasse o resultado da soma... não é possível?