Mam do napisania program który bedzie liczył wartość całki oznaczonej z wybranej funkcji "metodą trapezów" . Wiem jak to zrobić dla dowolnej funkcji , natomiast za bardzo sie nie orientuję jak dla dowolnej. Chodzi mi zeby program uwzględnił funkcje wykładniczą, wielomianową, exponent oraz logarytmiczną. Prosił bym o pomoc z góry dzieki.
czyli co? ktoś podaje wzór, a ty na tej podstawie musisz obliczać wartości funkcji dla konkretnego x? Poszukaj o obliczaniu dowolnych wyrażeń. Najłatwiej będzie coś takiego zrobić przy użyciu ONP moim zdaniem.
chodzi o to aby na początku uzytkownik wybrał sobie funkcje (logaryt., wykladnicza,wielomianowa,exponent) . podał wartosc x do tej funkcji, przedzial calkowania , a reszte to juz mam jak sie oblicza funkcje ta metodą..
Zrób sobie kilka klas dziedziczących z jednej np:
TWyrarzenie = class
public
function Wynik(double x):double;virtual;
constructor New;
end;
TExponental = class (TWyrarzenie)
public
constructor New;
function Wynik(double x):double;virtual;
end;
TLog = class (TWyrarzenie)
public
constructor New;
function Wynik(double x):double;virtual;
end;
{...}
Klasa bazowa może być pusta (puste metody), a w klasach pochodnych wpisujesz sobie w Wynik co tam chcesz.
Żeby tego użyć deklarujesz i tworzysz sobie jedną klasę pochodną, zależy co tam użytkownik wybierze i klasę bazową. Referencję klasy pochodnej przypisujesz bazowej (ta jest tylko zadeklarowana), a w wyliczaniu całki używasz klasy bazowej. W ten sposób masz kod obliczający jeden, dla tylu funkcji ile chcesz.
Powinno działać, nie mam Delphi pod ręką żeby to sprawdzić.