401
Aprender a programar desde cero / Re:Resolver Integral de Riemann
« en: 10 de Noviembre 2012, 21:20 »
Tendrías que decir qué metodología de resolución hay que seguir. La idea se resume en esta imagen:
![](http://upload.wikimedia.org/wikipedia/commons/thumb/d/d7/Riemann_Integration_3.png/400px-Riemann_Integration_3.png)
Pero claro, habría que especificar un poco más.
De modo orientativo yo plantearía lo siguiente:
//Método que nos permita calcular el área aproximada bajo la curva
public Double calcular(Ecuacion ecuacion, Double inicio,Double fin, Double incremento) {
double posicionCalculo = inicio;
double areaParcial;
double areaAcumulada;
while (posicionCalculo <= fin) {
areaParcial = valorEcuacion (ecuacion, posicionCalculo);
areaAcumulada = areaParcial + AreaAcumulada;
posicionCalculo = posicionCalculo + incremento;
}
return areaAcumulada;
}
Te hace falta tener un método auxiliar que te diga cuál es el valor de la función ecuación para un valor de x dado.
public double valorEcuacion (Ecuacion ecuacion, double valorDex) {
double resultado = 0;
//Aquí tienes que calcular el resultado de la ecuación para un valor de x
// Por ejemplo si la ecuación es 3*x^2 -1 y le pasas x=3, el resultado a devolver será 3*9-1 = 26
return resultado;
}
![](http://upload.wikimedia.org/wikipedia/commons/thumb/d/d7/Riemann_Integration_3.png/400px-Riemann_Integration_3.png)
Pero claro, habría que especificar un poco más.
De modo orientativo yo plantearía lo siguiente:
//Método que nos permita calcular el área aproximada bajo la curva
public Double calcular(Ecuacion ecuacion, Double inicio,Double fin, Double incremento) {
double posicionCalculo = inicio;
double areaParcial;
double areaAcumulada;
while (posicionCalculo <= fin) {
areaParcial = valorEcuacion (ecuacion, posicionCalculo);
areaAcumulada = areaParcial + AreaAcumulada;
posicionCalculo = posicionCalculo + incremento;
}
return areaAcumulada;
}
Te hace falta tener un método auxiliar que te diga cuál es el valor de la función ecuación para un valor de x dado.
public double valorEcuacion (Ecuacion ecuacion, double valorDex) {
double resultado = 0;
//Aquí tienes que calcular el resultado de la ecuación para un valor de x
// Por ejemplo si la ecuación es 3*x^2 -1 y le pasas x=3, el resultado a devolver será 3*9-1 = 26
return resultado;
}