Ir ao conteúdo
  • Cadastre-se
Fabio Ramalho

Programa p/ cálculo de derivadas e integrais

Recommended Posts

Boa Tarde!!

Estou tentando fazer uma calculadora que permita calcular integrada ou derivada de um polinomio do tipo ax²+bx+c.

Já fiz o programa para as operações básicas, mas não consigo fazer as derivadas e Integrais.

 

Tentei usar o comando .Split para pegar a String parcialmente, mas não deu certo. Se alguém tiver alguma dica ! Fico agradecido!

namespace Calculadora.BIM2v._1
{ 
    public partial class Calculadora : Form
    {   
        String polinomio ="";
        Double value = 0;
        String operation = "";
        bool operation_pressed = false;
        String derivada2 = "";
        Double value2 = 0;
        public Calculadora()
        {
            
            InitializeComponent();
        }
        private void label1_Click(object sender, EventArgs e)
        {
        }
        private void button12_Click(object sender, EventArgs e)
        {
        }
        private void button11_Click(object sender, EventArgs e)
        {
        }
       
        private void button_Click(object sender, EventArgs e)
        {
            if ((result.Text == "0") ||(operation_pressed))
                result.Clear(); //limpa o Text Box
            operation_pressed = false;
            Button b = (Button)sender;
            result.Text = result.Text + b.Text; //Faz aparecer os números no Text.Box
        }
        private void button_ClickCE(object sender, EventArgs e)
        {
            result.Text = "0";
        }
        private void operator_Click(object sender, EventArgs e)
        {
            Button b = (Button)sender;
            operation = b.Text;
            value = Double.Parse(result.Text);
            operation_pressed = true;  //guarda os valores da primeira variável até digitar o botão de operação
            equation.Text = value + " " + operation;
        }
        private void button16_Click(object sender, EventArgs e)
        {
            equation.Text = "";
            switch(operation) // realiza o resultado final quando aperta o botão de igual
            {
                case "+":
                    result.Text = (value + Double.Parse(result.Text)).ToString();
                    break;
                case "-":
                    result.Text = (value - Double.Parse(result.Text)).ToString();
                    break;
                case "/":
                    result.Text = (value / Double.Parse(result.Text)).ToString();
                    break;
                case "*":
                    result.Text = (value * Double.Parse(result.Text)).ToString();
                    break;         
                    
            }
        
            //operation_pressed = false; 
        }
        private void button18_Click(object sender, EventArgs e)
        {
            result.Text = "0";
            value = 0;
        }
        private void result_TextChanged(object sender, EventArgs e)
        {
        }
        private void buttonintg_Click(object sender, EventArgs e)
        {
            
        }
        private void buttonderv_Click(object sender, EventArgs e)
        {
            //derivacao = true;
            String[] derivada;
            String derivada2 = "";
            //Double value2 = 0;
            Button b = (Button)sender;
            result.Text = polinomio;
            derivada = polinomio.Split('^');
            derivada2 = derivada.ToString();
            //value2 = Double.Parse(derivada2.ToString());
            
        }
      
    }
}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×