Процедуры, правила обращения к процедурам, передача данных в процедуру и обратно. Отличие функции от процедуры, примеры.
Procedure<имя> (<список формальных параметров>) <раздел описаний процедуры> Begin <раздел исполняемых операторов> End; Список форм параметров – перечень ч/з запятую имен переменных. Второе их назначение – передача и обмен значениями с взывающей прогой. В разделе описаний объявляются все имена(помимо формальных), которые удут использованы в исполняемой части процедуры. Это локальные имена, к-е д-ют только внутри подпроги. Функция отличается от процедуры тем, что результат ее работы возвращается в основную прогу в виде значения этой функции
П Р О Ц Е Д У Р Ы И Ф У Н К Ц И И
Алгоритм решения задачи проектируется путем декомпозиции всей за- дачи в отдельные подзадачи. Обычно подзадачи реализуются в виде подп- рограмм. Подпрограмма - это последовательность операторов, которые опреде- лены и записаны только в одном месте программы, однако их можно вызвать для выполнения из одной или нескольких точек программы. Каж- дая подпрограмма определяется уникальным именем. В языке ПАСКАЛЬ су- ществуют два типа подпрограмм - процедуры и функции. Процедура и функция - это именованная последовательность описаний и операторов. При использовании процедур или функций ПАСКАЛЬ - прог- рамма должна содержать текст процедуры или функции и обращение к про- цедуре или функции. Тексты процедур и функций помещаются в раздел описаний процедур и функций. {} Процедура может содержать такие - же разделы описаний, что и ПАС- КАЛЬ - программа, а именно: разделы описания модулей, меток, конс- тант, типов, переменных, процедур и функций. {} ПЕРЕДАЧА ИМЕН ПРОЦЕДУР И ФУНКЦИЙ В КАЧЕСТВЕ ПАРАМЕТРОВ. Во многих задачах, особенно в задачах вычислительной математики, необходимо пе- редавать имена процедур и функций в качестве параметров. Для этого в TURBO PASCAL введен новый тип данных - процедурный или функциональ- ный, в зависимости от того, что описывается. Описание процедурных и функциональных типов производится в разделе описания типов: type FuncType = Function(z: Real): Real; ProcType = Procedure (a,b: Real; var x,y: Real);
Функциональный и процедурный тип определяется как заголовок проце- дуры и функции со списком формальных параметров, но без имени. Можно определить функциональный или процедурный тип без параметров, напри- мер: type Proc = Procedure;
После объявления процедурного или функционального типа его можно использовать для описания формальных параметров - имен процедур и функций. Кроме того, необходимо написать те реальные процедуры или функции, имена которых будут передаваться как фактические параметры. Эти про- цедуры и функции должны компилироваться в режиме дальней адресации с ключом {$F+}. Рассмотрим использование процедуры на примере программы поиска максимума из двух целых чисел. var x,y,m,n: integer;
procedure MaxNumber(a,b: integer; var max: integer); begin if a>b then max:=a else max:=b; end;
begin write('Введите x,y '); readln(x,y); MaxNumber(x,y,m); MaxNumber(2,x+y,n); writeln('m=',m,'n=',n); end. 56. Численное интегрирование двойных интегралов. Метод ячеек. Для двойного интеграла область геометрически представляет собой плоскую произвольную фигуру, а значение интеграла – объем 3х мерной фигуры. Метод ячеек. Данный метод применяется для вычисление 2х интегралов, когда область интегрирования D представляется собой прямоугольник. I= f(x,y)dxdy ; D: a=<x=<b;c=<y=<d
Геометрически задача сводится к вычислению объема криволинейного параллелепипеда. Идея вычисления: в геометрии нет готовой формулы для вычисления объема криволинейного параллелепипеда, то эту фигуру нужно приближенно заменить на прямоугольный, объем которого легко вычисляется. Для снижения погрешности криволин.паралел-пипед разбиваем на множество более мелких.Вычисляем элементарные объемы и складываем. Область интегр-я D разбивается на ячейки, соответственно исходный объем также разбивается n на m элементарных объемов. hy=(d-c)/m ; hx=(b-a)/n; S=hx*hy – площадь ячейки; xi=a+i*hx; yi =c+j*hy Для вычисления элементарного объема, Sячейки умножают на значение подинтегральной ф-ции в центре ячеек xi=(xi+xi-1)/2; yi=(yi+yi-1)/2 суммируя элементарные объемы получают приближенное значеиние 2ого интегрла. Формула ячеек - f(x,y)dxdy = V=hxhy∑n∑mf(xi,yi); 57.Метод последовательного интегрирования. Пусть для 2го интеграла область интегрирования D ограничена непрерывными кривыми:y=φ(x),y=ψ(x) и прямыми x=a,x=b; = dx f(x,y)dy ; Пусть F(x)= f(x,y)dy; I= F(x)dx.
Внутренний и внешний интегралы явл. однократными и для их вычисления можно применить приближенные способы вычисления(прямоугольников, трапеций или метод Симсона). Применим формулу трапеций: I=hx[F(a)+F(b)/2+∑n-1F(xi)] (1), где F(xi)-площади сечений исх.фигуры. эти площади вычислим используя формулу прямоуг.трапеций. для вычисления каждое сечение(в проекции хорду)разбиваем вдоль оси Оy с шаг hy ; F(xi)= f(x,y)dy = hy[f(x,y)+f(x,d)/2+∑j n f(xi,yi)] (2) Порядок расчета. Отрезок [a,b] разбивают с шагом h, в каждой точке xi, вычисляют значения с=φ(xi) ;d =ψ(xi) – хорду [c,d] разбивают с шагом hy. Используя ф-лу (2) вычисл площади сечения F[xi,j=0,…n] по формуле (1) вычмсл значение 2го интеграла. 58. Обработка числовых данных. Получение количественных результатов научных и технических задач приводят к необходимости обработки числовой информации. Данные часто предоставляются в табличной форме. Эти данные отражают функциональную зависимость одной величины от другой. В задаче аппроксимации требуется найти формулу выражающую функциональную зависимость аналитически. Сущ.2 основных подхода к решению данной задачи.1). состоит в построении интерполяционного многочлена,значения которого точно совпадают с табличными.Это достигается методами интерполяции(получ-я промежут значения). Геометрически требуется чтобы интерполирующая кривая y=Pn(x) проходила строго через все табличные точки. Однако совпадения значений в точках не означает совпадения характеров табличной и интерполирующей функций,так как данные экспериментальные – имеют свои погрешности измерения. Поэтому методы интерполяции принимают в узкой области вычисления промежуточных значений ф-ции.(метод интерполяции по Лагранжу,метод разделенных разностей) 2).Табличные данные аппроксимируют достаточно простой функцией применимой во всем диапазоне табличных данных, не обязательно проходящей через все точки. Такой подход называется подгонкой кривой ,кот-ю стремятся провести так, чтобы ее отклонения от табл точек были min.Обычно стремятся свести к мин сумму квадратов разностей м/у значениями,вычисленными по кривой и таблицей.+простота – большая погрешность.(Метод наименьших квадратов.)
Популярное: Почему человек чувствует себя несчастным?: Для начала определим, что такое несчастье. Несчастьем мы будем считать психологическое состояние... Почему стероиды повышают давление?: Основных причин три... Как построить свою речь (словесное оформление):
При подготовке публичного выступления перед оратором возникает вопрос, как лучше словесно оформить свою... Как распознать напряжение: Говоря о мышечном напряжении, мы в первую очередь имеем в виду мускулы, прикрепленные к костям ... ©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (216)
|
Почему 1285321 студент выбрали МегаОбучалку... Система поиска информации Мобильная версия сайта Удобная навигация Нет шокирующей рекламы |