4.1. ejemplo solución
/*
* Germán Andrés Xander 2021 *
*
* Programa que calcula el trabajo realizado por una fuerza, de función conocida,
* aproximando el área bajo la curva mediante interpolación de orden 0.
*/
#include <iostream>
using namespace std;
float aproximacion_orden_0 (float inicio, float fin, int pasos); //función que calcula el área bajo la curva
float fuerza_en_posicion (float posicion); // función que evalúa la función en la posición dada.
int main(){
float trabajo;
trabajo= aproximacion_orden_0(0,5000,500);
cout<<"El trabajo realizado por la Fuerza desde los 0m hasta los 5000m es de "<<trabajo<<" Joules";
return(0);
}
float aproximacion_orden_0 (float inicio, float fin, int pasos ){
float incremento=(fin-inicio)/pasos;
float area_orden_0 = 0;
for (float posicion=inicio; posicion < fin; posicion += incremento){
area_orden_0 += fuerza_en_posicion(posicion)*incremento;
}
return (area_orden_0);
}
float fuerza_en_posicion (float posicion){
float fuerza;
fuerza=-0.0035*posicion*posicion+18*posicion+10000; //Fuerza en función de la posición F= -0,0035x^2 + 18x + 10000
return(fuerza);
}