muzruno.com

Какъв е методът на Симпсън и как да го приложим на езика Pascal

За да се изчисли стойността на интеграла, макар и приблизително, има отличен метод, наречен от създателя му, метода на Симпсън. Нарича се и параболичен метод, защото използва конструкцията на парабола. Тази цифра е конструирана възможно най-близо до функцията. Всъщност, тъй като е невъзможно да се изгради парабола, чиито точки точно съвпадат с точките на функцията, интегралът е приблизителен. Формулата за намиране с граници a и b изглежда така: 1 / h * (y0+4у1+2г2+4у3+hellip + 4yN-1п). Тук просто трябва да изчисляваме всеки y от 0 до n, където n се определя от самите нас - колкото повече, толкова по-добре, защото колкото повече y-то, толкова по-близо до истинската стойност, която получаваме. Що се отнася до h, тази стъпка се изчислява по следната формула: (b-a) / (n-1).

simpso пример

На теория всичко е съвсем просто, но би трябвало да се приложи всичко това на практика. За много програмисти няма по-добър начин за решаване на проблем като метода Симпсън-Паскал или Делфи. В тази среда можете просто просто да изчислите интегралната, но и да изградите функционална графика и дори трапец за нея. Така че ще разберем как бързо да приложим метода на Симпсън и ако желаем, дори обясняваме как тук и какво е организирано, за всеки, който се интересува.

Но преди това, помнете как изглежда интегралът. Това е число, ограничено от линии, започващи по оста x, т.е. а и б.

Симпсън метод

Затова, за да започнете, трябва да създадете функция за интегрируемата функция (съжалявам за тавтологията) в програмата, в която просто трябва да напишете f: = и за какво ще намерим неразделна за. Тук е изключително важно да не правите грешка при влизането в Pascal. Но това е отделна тема за разговор. Полученият код ще изглежда така:

функция f (х: реална): реална;

И основният текст на функцията

започвам

f: = 25 * ln (x) + sin (10) - {Тук трябва да напишете съдържанието на вашата функция}

приключи;

След това пишем функция за изпълнението на метода на Симпсън. Началото ще бъде нещо като това:

функция simpsonmetod (a, b: реално-n: цяло число): реално;

След това декларирайте променливите:

Var

s: real- {Суми за междинна сума (по-нататък разбират)}

h: real- {Step}

my: integer- {Simply count}

mno: integer- {Редовни множители}

И сега, всъщност, самата програма:

започвам

h: = (b-a) / (n-1) - {Изчислете стъпката по стандартната формула. Понякога е написана стъпка в задачата, в който случай тази формула не се прилага}



s: = f (b) + f (a) - {Задаване на началната стойност на стъпка}

mno: = 4- {Запомнете формулата - 1 / h * (y0+4у1hellip- тук тук е написано това 4, вторият мултипликатор ще бъде 2, но повече за това}

Сега основната формула е:

за моя: = 1 до n-2 да започне

s: = s + mno * f (a + h * mu) - {Добавете към сумата следващия множител, умножен с 4 * yп или 2 * yп }

ако (mno = 4) тогава mno: = 2 else === 4- {Тук множителят също се променя - ако сега е 4, той се променя на 2 и обратно}

приключи;

simpsonmetod: = s * h / 3- {Тогава получената сума се умножава по h / 3 по формулата}

край.

Това е всичко - правим всички действия според формулата. Ако още не сте измислили как да приложите метода на Симпсън към основната програма, примерът ще ви помогне.

Така че след като напишем всички функции, които пишем

започвам

n: = 3- {Настройка n}

q: = simpsonmetod (a, b, n) - {Тъй като методът на Симпсън е да изчисли интеграла от a до b, има няколко изчислителни стъпки, така че ние организираме цикъла}

повторение

q2: = q- {Предишната стъпка е запомнена}

n: = п + 2;

q: = simpsonmetod (a, b, n) - {И следващата стойност се изчислява}

до (аб (q-q2)<0.001) - {Точността на заданието е написана, така че, докато не се постигне необходимата точност, трябва да повторите същите действия}

Симпсън паскал метод

Ето как е той - методът на Симпсън. Всъщност нищо не е сложно, всичко е написано много бързо! Сега отворете Turbo Pascal и започнете да пишете програмата.

Споделяне в социалните мрежи:

сроден