Немного истории. Впервые мне пришлось написать программу по вычислению интеграла на языке Фортран в году 1980. До этого я чисто теоретически изучал язык Паскаль по книге Форсайта. Но может и путаю уже, но только я эту книгу считаю до сих пор одной из самых лучших по программированию, как и “голубую” Си. У нас на работе стояла тогда только одна ЭВМ типа ЕС-1022. Основными языками программированию, по которым была литература, были ПЛ/1, Кобол, РПГ, Фортран и Ассемблер. В то время меня как раз занимала проблема передачи значений через общую память, которая в Кобол была Storage, а в Фортран – Common с выводом результата на печать. Задачу эту я решил. Основным языком программирования у нас тогда был и потом оставался лет на 20-25 Кобол. Это потом уже часть задач стали программировать на Паскале, больше на СИ и на 1С. Самое же широкое распространение получил FoxPro. Но это потом, когда началось внедрение ПК.
Первой моей задачей на Фортране была задача вычисления интеграла методом прямоугольников, а также построение графика SIN(Х) с выводом его на АЦПУ. Не забывайте, что АЦПУ это не принтер. и принцип печати в нем совершенно другой.
В дальнейшем мне пришлось более досконально изучать Фортран, чтобы преподавать его у студентов. Несколько лет я читал вычислительные методы и вел все лабораторные работы на эту тему. Особенно интересно вычислять ряды и находить интегралы. Наиболее сложные алгоритмы по работе с матрицами, определителями, обратными матрицами и т.д.
Из всех, обычно трех методов, по нахождению определенного интеграла метод Симпсона является самым интересным для изучения и точным. Это метод парабол. Как известно, через любые три точки на плоскости можно провести параболу. Поэтому в этом методе отрезок интегрирования делится не на N частей, а на 2N. Многое уже забывается, но переводить текст программы с одного языка на другой я не разучился. Этого умения я старался добиваться и от части своих студентов, но позже. Вот и сейчас я взял готовую программу с СИ и попробовал её реализовать на VBA. Одновременно я всегда стараюсь найти материал в Интернет, раскрывающий тему.
Ссылка на архив материалов. Архив содержит и файл Excel с макросом
Ссылка на файл Excel. Макрос так и называется Simpson.