/ / Kas yra Simpsono metodas ir kaip jį įgyvendinti Pascal

Kas yra Simpsono metodas ir kaip jį įgyvendinti Pascal kalba

Norint apskaičiuoti integralo vertę, norsApytiksliai, yra puikus metodas, pavadintas jo kūrėjo Simpsono metodu. Jis taip pat vadinamas paraboliniu metodu, nes jis naudoja parabolos konstrukciją. Šis skaičius yra sudarytas kuo arčiau funkcijos. Tiesą sakant, kadangi neįmanoma statyti parabolės, kurios taškai tiksliai sutampa su funkcijų taškais, integralas yra apytikriai. Formulė nustatant ją su a ir b ribomis atrodo taip: 1 / h * (y0+ 4 d1+ 2 d2+ 4 d3+ ... + 4 valn-1+ yn) Čia mes tiesiog reikia apskaičiuoti kiekvieną y iš 0 į n, kur n nustato patys - kuo daugiau, tuo geriau, nes kuo daugiau y-s, tuo arčiau tikrosios vertės mes gauname. Kalbant apie h, šis žingsnis apskaičiuojamas pagal šią formulę: (b-a) / (n-1).

simpso pavyzdys

Teoriškai viskas yra gana paprasta, bet tai turėtų būtitai visa tai realizuoti praktikoje. Daugeliui programuotojų nėra geresnio sprendimo būdų, pvz., "Simpson-Pascal" ar "Delphi" metodo. Šioje aplinkoje galite labai ne tik apskaičiuoti integralą, bet ir sukurti funkcijų grafiką ir netgi sukurtą trapeciją. Taigi, išsiaiškinsime, kaip greitai įgyvendinti "Simpsono" metodą, ir, jei pageidaujama, netgi paaiškinti, kaip čia ir kas organizuojama visiems, suinteresuotiems.

Tačiau prieš tai prisiminkime, kaip atrodo integralas. Tai yra figūra, kurią apriboja linijos, prasidedančios nuo ašies x, ty a ir b.

Simpsono metodas

Taigi, pirmiausia turite sukurtifunkcija integruojamai funkcijai (atsiprašome už tautologiją), kurioje jums tiesiog reikia parašyti f: = ir tada ką mes rasime integralą. Labai svarbu nepadaryti klaidos įvedant Pascal funkciją. Bet tai yra atskira pokalbio tema. Gautas kodas atrodys taip:

funkcija f (x: reali): reali;

Ir pagrindinis funkcijos tekstas

prasideda

f: = 25 * ln (x) + sin (10); (tai čia, kur reikia parašyti savo funkcijos turinį)

pabaiga;

Toliau rašome Simpsono metodo įgyvendinimo funkciją. Pabaiga bus tokia:

funkcija simpsonmetod (a, b: real; n: sveikasis skaičius): real;

Tada deklaruokite kintamuosius:

var

S: realus; {Tarpinės sumos (toliau suprantama)}

h: realus; {Žingsnis}

mano: sveikasis skaičius; {Tiesiog skaitiklis}

mno: sveikasis skaičius; {Reguliarūs daugikliai}

Ir dabar, tiesą sakant, pati programa:

prasideda

h: = (b-a) / (n-1); {Mes apskaičiuojame žingsnį pagal standartinę formulę. Kartais į užduotį įrašomas žingsnis, tokiu atveju ši formulė netaikoma}

s: = f (b) + f (a); {Nustatykite pradinio žingsnio vertę}

mno: = 4; {Atminkite formulę - 1 / h * (y0+ 4 d1 ... čia čia parašyta 4, antrasis daugiklis bus 2, bet daugiau apie tai}

Dabar pagrindinė formulė yra:

mano: nuo 1 iki n-2 prasideda

s: = s + mno * f (a + h * mu); {Iki sumos pridedame kitą koeficientą, padaugintą iš 4 * yn arba 2 * yn }

jei (mno = 4) tada mno: = 2 kitas mno: = 4; (čia daugiklis taip pat keičia - jei dabar yra 4, jis pakeičiamas į 2 ir atvirkščiai)

pabaiga;

simpsonmetod: = s * h / 3; (Kitas rezultatas dauginamas iš h / 3 pagal formulę)

pabaiga

Visa tai - mes atliekame visus veiksmus pagal formulę. Jei dar nesuvokėte, kaip taikyti pagrindinę programą Simpsono metodu, šis pavyzdys jums padės.

Taigi rašydami visas funkcijas mes rašome

Pradėk

n: = 3; {Set n}

q: = simpsonmetod (a, b, n); (Kadangi Simpsono metodas yra apskaičiuoti integralą nuo a iki b, bus keli skaičiavimo etapai, todėl mes organizuosime ciklą}

pakartokite

q2: = q; {Paminėtas ankstesnis žingsnis}

n: = n + 2;

q: = simpsonmetod (a, b, n); (Ir apskaičiuojama kita vertė)

kol (abs (q-q2) <0.001); {Darbas tiksliai parašytas, taigi tol, kol pasiekiamas reikiamas tikslumas, turite pakartoti tuos pačius veiksmus}

Simpson Pascal metodas

Štai kaip jis yra - Simpsono metodas. Iš tiesų nieko nėra sudėtinga, viskas parašyta labai greitai! Dabar atidarykite Turbo Pascal ir pradėkite rašyti programą.

</ p>>
Skaityti daugiau: