siema, mam na jutro na poprawienie oceny semestralnej w liceum do oddania program, który oblicza przybliżone pole pod wykresem funkcji na danym przedziale. wszystki niby mam zrobione tylko na koncu podaje mi wynik, jakby to nie był 'Lf' tylko zwykły 'f', nie wiem gdzie jest błąd, google też nie wiedzą, wszyscy znajomi, którzy w miare ogarniają programowanie też nie wiedzą, więc serdecznie prosze o przejrzenie mojego kodu, szczególnie miejsca przy wypisywaniu lub obliczaniu całki
#include <stdio.h>
#include <cstdlib>
struct wiel {
int st; // stopien wielomianu
long double wsp[100]; //tab przech wartosci wsp przy kolejnej potędze
long double x; //sprawdzanie wartosci dla tego punktu
long double wynik;
long double a, b, h;
long double calka;
};
int calka()
{
int i, j, k, zmien_st, zmien_x=1; // zmienna przydatne przy pętlach
struct wiel W;
printf("Stopien wielomianu: ");
scanf("%d", &W.st);
zmien_st=W.st;
for(i=0;i<W.st+1;i++)
{
printf("Podaj wspolczynnik wielomianu przy %d potedze ", zmien_st);
scanf("%Lf", &W.wsp[i]);
zmien_st--;
}
printf("Podaj dolna granice: ");
scanf("%Lf", &W.a);
printf("Poraj gorna granice: ");
scanf("%Lf", &W.b);
printf("Podaj h: ");
scanf("%Lf", &W.h);
zmien_st=W.st;
W.wynik=0;
for(k=1;W.a+k*W.h<W.b;k++)
{
W.x=W.a+k*W.h;
for(i=0;i<W.st+1;i++)
{
for(j=0;j<zmien_st;j++) // ten for oblicza potęgę
{
zmien_x*=W.x;
}
W.wynik+=W.wsp[i]*zmien_x;
zmien_x=1;
zmien_st--;
}
W.calka+=W.wynik*W.h;
}
printf("Wynik: %Lf", W.calka);
return 0;
}
int main()
{
calka();
system("Pause");
return 0;
}
PS: nie pytajcie dlaczego to wszystko jest w funkcji:-P Z góry dziękuję