→ Для вступления в общество новичков и профессионалов программирования, пожалуйста нажмите здесь ...

Форум программистов: C++, Basic, Delphi, Pascal, JavaScript
Логин: Пароль:
Запомнить?  
@Mail.ru



Начать новую тему Ответить на тему  [ 1 сообщение ] 
Pascal Функции пользователя 
Автор Сообщение
Администратор
Аватара пользователя

Регистрация: 03.11.2007
Сообщения: 559
Откуда: Украина
Специальность:

Репутация: 6 [ ? ]
Сообщение Pascal Функции пользователя
Методом итераций с точностью ε найти корень уравнения f(x)=0:



Обои для рабочего стола, 1024х768

Тема: Функции пользователя
Примеры программ, комментарии
Программа 6
Методом итераций с точностью ε найти корень уравнения f(x)=0:

Начальное значение корня: 0. Использовать функцию.
Математическое решение
Приводим исходное уравнение к виду: x=ρ(x)
x1=ρ(x0)
x2=ρ(x1)
x3=ρ(x2)
. . .
xn=ρ(xn-1)
Итерационный поиск корня завершается, если выполнилось условие
| xn – xn-1 | < ε
Алгоритм в виде диаграммы действий



екст программы
PROGRAM Prg6;
{ http://nataliya.kiev.ua }
const x:real=0;
var e:real;
function ro(x:real):real;
begin
ro:=sin(x)/2+1;
end;
function main(x,e:real):real;
begin
repeat x:=ro(x)
until abs(RO(X)-X)
main:=x;
end;
begin
write('E=');
readln(e);
writeln('x=',main(x,e):0:10);
readln;
end.

Результат работы программы
E=0.0000001
x=1.4987011260

E=0.1
x=1.4207354924

E=0.0001
x=1.4986953555

E=0.001
x=1.4985408844
Теория к программе
Процедуры и функции пользователя
Процедура - независимая именованная часть программы, предназначенная для многоразового выполнения определенных действий.
Содержит заголовок и тело. Внутренняя структура совпадает с структурой программы. После того, как процедура описана, она может быть многократно вызвана из любой части программы. После выполнения определенных в процедуре действий, управление передается следующему за вызовом процедуры оператору. Имя процедуры в операторной части программы есть отдельный оператор, поэтому вызов процедуры не может помещаться в выражениях как операнд.
Описание процедуры
Структура:
<заголовок>
<локальные описи> - может содержать опись других процедур и функций
<операторна часть>
<заголовок>:
procedure <имя-идентификатор>[(<список параметров>)];
<имя-идентификатор> - отвечает общим правилам образования идентификаторов;
<операторна часть> - должна содержать один или несколько операторов;
<список параметров> включает:
1) параметр-значение:
<идентификатор>:<тип> - обрабатывается как локальная переменная по отношению к данной функции, то есть измененное в теле функции значение этого параметра не возвращается к блоку, который вызвал функцию;
2) параметр-переменная:
var <идентификатор>:<тип> - измененное в середине программы значение этого параметру возвращается к блоку, который вызовет функцию
3) нетипизированный параметр-переменная
var <идентификатор> - такая опись формального параметра разрешает выполнить ссылки на переменную любого типа. При этом тип переменной отсутствует, то есть не совпадает ни с одним из типов до операции приведения типов
<тип> - в заголовке непосредственно может быть определен только простой тип. Любой стуктурированный тип определяется только через идентификатор типа
Правила локализации
1. Идентификатор определен только в границах блока, в котором он описан
2. Одинаковые идентификаторы могут быть по-разному определены в разных блоках
3. Если в операторе используется идентификатор, который был описаний в ряде вложенных блоков, то он интерпретируется в соответствии с его описью в самом внутреннем из вложенных блоков, в котором данный оператор находится.
4. На равные блоки идентификатор может быть описан только один раз
Процедура или функция может быть вызвана:
1. Из тела главной программы
2. Из тела другой процедуры или функции
3. Из тела той самой процедуры или функции - рекурсия
Процедурные типы
Используются:
1) при определении процедурных переменных;
2) при построении структурированных типов;
3) при использовании процедур или функций как параметров для других процедур или функций
Описание:
TYPE <идентификатор> = procedure [(< формальные параметры >)];
TYPE <идентификатор> = function [(< формальные параметры >)]:<тип результата>;



11.11.2007 18:55
Профиль ICQ
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ 1 сообщение ] 


Кто сейчас на конференции

Зарегистрированные пользователи: Google [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
cron
© 2013 «Форум программистов Украины»