Diskuze: Numerická integrace

Člen

Zobrazeno 8 zpráv z 8.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
Ahoj, co tohle?
http://www.itnetwork.cz/…ikova-metoda
Co už máš naprogramované?
Ahoj,
na tohle už jsem koukal, ale jelikož neumím přepsat zápis z C# do Pythonu,
tak mi to bohužel moc nepomůže, ale jinak děkuji
Hmm, neumíš ctrl-c ctrl-v a umazat pár slov podle toho, že si přečteš
pár článků základů C#?
Dobře.
Jak má vypadat vstup/výstup programu?
Pokud to bude funkce, bude lineární? Dostaneš body nebo přepis funkce?
Ahoj,
zadání vstupních hodnot, takže asi, aby si člověk mohl zadat vlastní fci
a začátek a konec integrace, textové menu obsahující možnost vybrat si
mezi metodami a možnost ukončit program, ošetření vstupů pomocí výjimek,
ale bude mi stačit nějaký základ pro nějakou fci a pak si to snad nějak
upravím, ale já totiž vůbec nevím jak to zadat, aby mi to vypočítalo, z
toho co je zde na netu v C to moc nechápu, co k čemu je, prostě v tomhle
nevynikám a snažím se to co nejvíce obejít, ale bohužel jsem na internetu
nic nenašel, než to co je v tom C.
Děkuji, jsi moc ochotný, kdybych měl nějakého známého, tak to sem ani
nepíšu, ale prostě nikoho neznám, kdo by mi s tím pomohl a jsem rád, že
se najdou tak ochotní lidé, jako jsi ty snad ti takhle popis zadání stačí
.
Ta metoda by mohla vypadat nějak takto:
#!/usr/bin/env python3
def poly(x, *args):
soucet = 0
for arg in args:
soucet = soucet*x + arg
return soucet
def lichobeznikova_integrace(a, b, casti, *args):
# args, koeficienty polynomu od nejvyssiho stupne po nejnizsi
funkcni_hodnoty = []
krok = (b-a)/casti
x = a
while x <= b:
funkcni_hodnoty.append(poly(x, *args))
x += krok
# zkracene
# soucty = 2*sum(funkcni_hodnoty) - funkcni_hodnoty[0] - funkcni_hodnoty[-1]
soucty = 0
for i in range(len(funkcni_hodnoty)-1):
soucty += funkcni_hodnoty[i]+funkcni_hodnoty[i+1]
return krok/2*soucty
print(lichobeznikova_integrace(0, 3, n, *(1, 0, 0)))
Ještě si najdi algoritmus na simpsonovu metodu, kde pozměníš výpočet.
Zobrazeno 8 zpráv z 8.