Test Foro de elhacker.net SMF 2.1

Programación => Programación C/C++ => Mensaje iniciado por: Ezeqro en 27 Septiembre 2016, 17:23 PM

Título: Sumatoria c++
Publicado por: Ezeqro en 27 Septiembre 2016, 17:23 PM
Ayuda, ya tengo mi codigo de area bajo la curva, pero no se como hacer la sumatoria,

#include<stdio.h>
main()
{
float base, altura, area, i, liminferior, limsuperior, ancho, segmentos, vsegmento, incremento, formula;
printf("CALCULADORA DE INTEGRALES\n\n");
printf("La integral a calcular es x^2+5\n\n");

printf("Introduze el valor del limite Inferior(a):  ");
scanf("%f", &liminferior);

printf("Introduze el valor del limite Superior(b):  ");
scanf("%f", &limsuperior);

ancho=limsuperior-liminferior;
   printf( "ancho= %f\n\n", ancho );

printf("¿En cuantos segmentos vamos a dividir el ancho del area(iteracciones)?:  ");
scanf("%f", &segmentos);

vsegmento = ancho / segmentos;
printf( "El valor para cada Segmento es de: %f\n\n", vsegmento );


for (i=liminferior; i<=limsuperior; i++)

{
area= vsegmento*(i*i+5);
printf("%f x %f+5=%f\n",vsegmento,i,area);


}
       // se supone que aqui debo de ingresar el codigo para la sumatoria, pero no se como  :-\

}



Mod: Los códigos deben ir en etiquetas GeSHi
Título: Re: Sumatoria c++
Publicado por: AlbertoBSD en 27 Septiembre 2016, 17:37 PM
Al parecer no estas entendiendo vien el termino de Integral por sumatoria.

Si te ubicas en [latex]X^2 + 5[/latex] Eso es una Parabola hacia arriba con vertice en (0,5)  Y digamos que queremos calcula el area bajo la curba de -5 a 5  (Eje X) y lo divides en 10 pedasos o segmentos entonces cada segmento tendra una longitud de 1 si haces la formula:

vsegmento = ancho / segmentos; Donde el ancho es X2-X1 (5 -(-5))  =  10 entre 10 seria uno...

Entonces el primer punto en tu for debe de ser -5  (limite inferior)

   area = 0-0;
   for (i=liminferior; i<=limsuperior; i++)
     
   {
   area += vsegmento*(i*i+5); // ESTA ES LA SUMATORIA
   i+= vsegmento;
   }
printf("Area %f\n",area);


Título: Re: Sumatoria c++
Publicado por: MAFUS en 27 Septiembre 2016, 19:41 PM
Te diría que llenaras el área con trapecios rectángulos verticales. La base de este trapecio será igual a la diferencia entre el X final y X inicial dividido entre la cantidad de divisiones que se hagan en la muestra.

La altura izquierda y derecha del trapecio depende del cálculo de la función en ese punto.

Ahora te queda solamente calcular el área de cada trapecio y sumarlas todas.
Área de un trapecio rectángulo = base * (altura_1 + altura_2) / 2

(https://blogdelingeniero1.files.wordpress.com/2013/04/punto-fijo10.png?w=676)