Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.02.2009, 10:42   #1
BarT(48rus)
Пользователь
 
Регистрация: 01.02.2009
Сообщений: 28
По умолчанию Численные методы вычисления корней

ок)))просто я типа посмотрел есть ли кто)))а задача следующая:
Составьте алгоритм и программу табулирования функции (для определения интервалов изоляции корней уравнения) и вычисления корня нелинейного уравнения для одного (первого) параметра Р численным методом №1. Выведите число итераций n, значение корня х*уравнения, оценку точности dx и результат подстановки корня х* в левую часть уравненияф. Заданная точность Е=10 в минус 6.
Получите решение для различных значений параметра Р и проанализируйте, как зависит число итераций и значение корня от изменения параметра Р. Параметр Р изменяется по закону арифметической прогрессии с шагом дельта Р или представлен массивом данных.
8*sin(x)-p*x=0
p: 2, 3, 5, 7

вопщем ещё нужно проверить формулу на сходимость, ну и по условию дальше(а я не могу понять что делать, точнее вообще не пойму что от меня хотят(((помогите)
BarT(48rus) вне форума Ответить с цитированием
Старый 11.02.2009, 22:33   #2
BarT(48rus)
Пользователь
 
Регистрация: 01.02.2009
Сообщений: 28
По умолчанию

Код:
program laba2;
var
n:integer;
x0, p, e, xc, xn, dx:real;
begin
write ('x0=');
readln (x0);
write ('p=');
readln (p);
write ('e=');
readln (e);
xn:=x0;
n:=0;
 repeat
  xc:=xn;
  xn:=8*sin(xc)/p;
  dx:=abs(xn-xc);
  n:=n+1;
 until dx<e;
writeln ('xn=', xn:12:5);
writeln('dx=', dx:12:7);
writeln('N=', n);
end.
но либо не правильно, либо чего то нехватает....помогите)
BarT(48rus) вне форума Ответить с цитированием
Старый 12.02.2009, 02:03   #3
maladoy
delphi-ст!
Форумчанин
 
Аватар для maladoy
 
Регистрация: 02.01.2009
Сообщений: 825
По умолчанию

Цитата:
p: 2, 3, 5, 7
странная арифметическая прогрессия!
вступлю в команду разработчиков ПО на Delphi
maladoy вне форума Ответить с цитированием
Старый 12.02.2009, 02:37   #4
BarT(48rus)
Пользователь
 
Регистрация: 01.02.2009
Сообщений: 28
По умолчанию

я тоже так думал, но её запросто можно задать как массив)))))меня больше интересует первая часть, изоляция корня, что это, и как это сделать???не подскажеш?
BarT(48rus) вне форума Ответить с цитированием
Старый 12.02.2009, 02:50   #5
maladoy
delphi-ст!
Форумчанин
 
Аватар для maladoy
 
Регистрация: 02.01.2009
Сообщений: 825
По умолчанию

Будем говорить, что корень t отделен на отрезке [а; b] (a<b), если уравнение определено на всем этом отрезке и отрезок [а; b] содержит единственный корень. Отрезок [а; b] называют отрезком изоляции, или интервалом неопределенности корня t.

Отделить корни уравнения – значит для каждого из действительных корней найти свои отрезки изоляции.

Поиск приближенного значения корня с точностью до заданного достаточно малого числа ε > 0 называется уточнением этого корня.

Следовательно, задача уточнения будет решена, если найдется число х такое, что

|t — х|< ε . Тогда t ≈ х (t и х равны с точностью ε).

Если отрезок [а; b] изоляции корня t найден, то любое число из него можно взять в качестве приближенного значения корня.
вступлю в команду разработчиков ПО на Delphi
maladoy вне форума Ответить с цитированием
Старый 12.02.2009, 03:05   #6
BarT(48rus)
Пользователь
 
Регистрация: 01.02.2009
Сообщений: 28
По умолчанию

оу, вот тут уже ближе))))а можно теперь поинтересоваться о том, как в моей задаче для р найти этот отрезок изоляции???алгоритм действий примерный????потому как наверно вторая часть решена, а вот первой нету))))не поможеш
BarT(48rus) вне форума Ответить с цитированием
Старый 12.02.2009, 03:31   #7
maladoy
delphi-ст!
Форумчанин
 
Аватар для maladoy
 
Регистрация: 02.01.2009
Сообщений: 825
По умолчанию

[-4;4] при р=2;т.е [-8/p;8/p] при p>0; и и корень у него всего один x=0; а отрезок изоляции корня t будет (-e;e);
вступлю в команду разработчиков ПО на Delphi

Последний раз редактировалось maladoy; 12.02.2009 в 03:45.
maladoy вне форума Ответить с цитированием
Старый 12.02.2009, 03:41   #8
BarT(48rus)
Пользователь
 
Регистрация: 01.02.2009
Сообщений: 28
По умолчанию

хм))))а тогда получается при р=3 будет [-8/3;8/3]??я так понимаю....а вот откуда второе утверждение, что у всех р>0 корень один???почему????ну просто я никак не могу понять)
BarT(48rus) вне форума Ответить с цитированием
Старый 12.02.2009, 03:43   #9
BarT(48rus)
Пользователь
 
Регистрация: 01.02.2009
Сообщений: 28
По умолчанию

и кстать, такой еще не большой вопросик, как ввести массив в программном коде в турбопаскале???
BarT(48rus) вне форума Ответить с цитированием
Старый 12.02.2009, 03:53   #10
maladoy
delphi-ст!
Форумчанин
 
Аватар для maladoy
 
Регистрация: 02.01.2009
Сообщений: 825
По умолчанию

ручной ввод:
Код:
for i:=1 to size  do begin
 writeln('vvedite',i,'element massiva');
readln(mas[i]);end;
случайные числа от 0 до 50:
Код:
randomize;
for i:=1 to size do
mas[i]:=random(50)
вступлю в команду разработчиков ПО на Delphi
maladoy вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вычисления корней квадратного уравнения Наталья111 Общие вопросы Delphi 4 25.12.2008 11:06
Помогите разработать программу для вычисления корней алгебраического уравнения вида f(x)=0 BIS88 Помощь студентам 2 16.11.2008 08:11
Численные методы в Дельфи UserOK Общие вопросы Delphi 3 26.06.2008 12:05
Численные метода на паскале Колян Помощь студентам 7 27.03.2008 20:08
Методы нахождения корней уравнения werser Помощь студентам 8 20.02.2008 22:41