elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: (TUTORIAL) Aprende a emular Sentinel Dongle By Yapis


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  [?] ¿Cómo hacer la derivada en c++ sin funciones de biblioteca?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [?] ¿Cómo hacer la derivada en c++ sin funciones de biblioteca?  (Leído 3,770 veces)
asa5

Desconectado Desconectado

Mensajes: 11


Ver Perfil
[?] ¿Cómo hacer la derivada en c++ sin funciones de biblioteca?
« en: 14 Diciembre 2017, 18:47 pm »

¡Hola!

Gracias por leer mi mensaje, y en adelanto por la respuesta ^w^.

El problemilla que tengo es que tengo que evaluar un polinomio en una x dada por el usuario, con un grado que nos da este, y calcular la derivada del polinomio.

La primera parte lo he conseguido, pero estoy estancado con lo de la derivada, al principio lo hice con pow para hacerme una idea, pero como era un bucle quise reducir el coste computacional, y hasta ahí bien, pero el problema es que cuando intenté unir las dos funciones para que no me pidiese los coeficientes 2 veces, pues me quedé estancado porque la función nunca calcula la derivada, sino algo raro.

Por ejemplo, la primera derivada de:
2x^2 + 2x + 2 = 10 cuando x = 2.

¿Alguna idea? mi código es el siguiente:

#include <iostream>
#include <cmath>

using namespace std;

unsigned Potencia(unsigned grado, float x)
{
    unsigned elevado=1;
    for(unsigned i = 1; i <= grado; i++)
    {
        elevado = elevado * x;
    }
    return elevado;
}

void f_de_x(unsigned grado, float coeficiente, float x)
{
    float potencia1=1, potencia2=1, polinomio, derivada;

    for(unsigned i=grado+1; i>0; i--)
    {
        cout << "Introduzca el coeficiente enesimo n = " << 1+grado-i << endl;
        cin >> coeficiente;
        polinomio = polinomio + coeficiente * potencia1;
        potencia1 = x * potencia1;
        potencia2 = Potencia(i-1, x);
        derivada = derivada + i * coeficiente * potencia2;
        cout<<derivada<<endl;
    }
    cout << "El resultado del polinomio es: " << polinomio << endl;
    cout << "El resultado de la derivada es: " << derivada << endl;
}

int main()
{
    unsigned grado;
    float x, coeficiente;
    cout << "Grado del polinomio." << endl;
    cin >> grado;

    cout << "X donde evaluar el polinomio." << endl;
    cin >> x;
    f_de_x(grado, coeficiente, x);

}


¡Muchas gracias!


« Última modificación: 15 Diciembre 2017, 13:12 pm por asa5 » En línea

CalgaryCorpus


Desconectado Desconectado

Mensajes: 323


Ver Perfil WWW
Re: ¿Cómo hacer la derivada en c++ sin funciones de biblioteca?
« Respuesta #1 en: 14 Diciembre 2017, 19:30 pm »

Por que si x es float, la potencia es un unsigned?


En línea

Aqui mi perfil en LinkedIn, invitame un cafe aqui
asa5

Desconectado Desconectado

Mensajes: 11


Ver Perfil
Re: ¿Cómo hacer la derivada en c++ sin funciones de biblioteca?
« Respuesta #2 en: 14 Diciembre 2017, 23:27 pm »

Por que si x es float, la potencia es un unsigned?
Supongo que un pequeño fallo de programador novato x'D
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Biblioteca de funciones (Para descargar) « 1 2 »
Programación Visual Basic
Zeroql 15 6,726 Último mensaje 2 Agosto 2009, 21:07 pm
por BlackZeroX
Dudas con DERIVADA
Dudas Generales
kaskull 4 3,263 Último mensaje 25 Octubre 2011, 22:34 pm
por kaskull
ayuda con una derivada
Foro Libre
flacc 2 2,214 Último mensaje 20 Mayo 2013, 08:52 am
por flacc
quiero saber como crear una biblioteca de graficos en c.
Dudas Generales
sudomauro9000 2 2,611 Último mensaje 14 Marzo 2014, 03:02 am
por sudomauro9000
¿Cómo hacer que una biblioteca sea multiplataforma?
Programación C/C++
deleted_account 2 1,928 Último mensaje 22 Enero 2018, 21:52 pm
por deleted_account
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines