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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 03.05.2013, 13:35   #1
XaHTeP
Пользователь
 
Регистрация: 23.01.2012
Сообщений: 27
По умолчанию производная в delphi

Подскажите ,как написать программу которая вычисляет производную

Последний раз редактировалось XaHTeP; 03.05.2013 в 13:50.
XaHTeP вне форума Ответить с цитированием
Старый 03.05.2013, 14:08   #2
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,322
По умолчанию

В общем случае эта задача достаточно нетривиальна, на мой взгляд.
Подсчет же производной от многочлена является тривиальной задачей.
x^5+4*x^3
5*x^4+4*3*x^2
То есть, значение степени сносится в коэффициент, а сама степень уменьшается на 1
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 03.05.2013, 14:35   #3
XaHTeP
Пользователь
 
Регистрация: 23.01.2012
Сообщений: 27
По умолчанию

Цитата:
Сообщение от BDA Посмотреть сообщение
В общем случае эта задача достаточно нетривиальна, на мой взгляд.
Подсчет же производной от многочлена является тривиальной задачей.
x^5+4*x^3
5*x^4+4*3*x^2
То есть, значение степени сносится в коэффициент, а сама степень уменьшается на 1
Найти производную я и сам могу, вы лучше помогите реализовать это в виде программы [ Вернемся к нашим баранам .
T1= x^2+8
T1'=2x
T2=(x+4)(x^2+8)+(x+3)2x
T2'=3x^2+12x+14
напомню общий вид
(T1(x)=x^2+8;
...
Tk(x)=(x+k^2)Tk-1(x) + (x+3)T'k-1(x); k=2,3,...)
---------------
program p1;
...
T1:=x*x+8;
T1':=?
T2',T3'...
XaHTeP вне форума Ответить с цитированием
Старый 03.05.2013, 14:54   #4
s-andriano
Старожил
 
Аватар для s-andriano
 
Регистрация: 08.04.2012
Сообщений: 3,229
По умолчанию

XaHTeP, уточните, что именно Вам нужно?
- символьное дифференцирование?
- конечно-разностное представление производной?
- численное вычисление производной с заданной точностью?
- ???
s-andriano вне форума Ответить с цитированием
Старый 03.05.2013, 15:01   #5
XaHTeP
Пользователь
 
Регистрация: 23.01.2012
Сообщений: 27
По умолчанию

Цитата:
Сообщение от s-andriano Посмотреть сообщение
XaHTeP, уточните, что именно Вам нужно?
- символьное дифференцирование?
- конечно-разностное представление производной?
- численное вычисление производной с заданной точностью?
- ???
Вообще задание такое
Многочлены строятся по рекуррентной формуле :
T1(x)=x^2+8;
...
Tk(x)=(x+k^2)Tk-1(x) + (x+3)T'k-1(x); k=2,3,...
Вычислить значение многочлена T9 в точке x=b (число b вводится пользователем )

Но проблему вызывает написание программы которая находила бы значение производной

Последний раз редактировалось XaHTeP; 03.05.2013 в 15:05.
XaHTeP вне форума Ответить с цитированием
Старый 03.05.2013, 15:14   #6
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,322
По умолчанию

Код:
uses
  SysUtils, math;

type
  monomial = record
    factor, exponent: extended;
  end;

  polynomial = array of monomial;

var
  t: polynomial;
  x: extended;

function build(f, e: extended): polynomial;
begin
  setlength(result, 1);
  result[0].factor := f;
  result[0].exponent := e;
end;

function add(const p1, p2: polynomial): polynomial;
begin

end;

function calculate(const p: polynomial; x: extended): extended;
var
  i: integer;
begin
  result := 0;
  for i := low(p) to high(p) do
    result := result + p[i].factor * Power(x, p[i].exponent);
end;

begin
  t := add(build(1, 2), build(8, 0)); // x^2 + 8
  readln(x);
  writeln(calculate(t, x):0:4);
  readln;
end.
Заготовка. Вам нужно реализовать все функции, которые я перечислил в предыдущей теме.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 10.05.2013, 14:47   #7
Артур2334
Новичок
Джуниор
 
Регистрация: 10.05.2013
Сообщений: 5
По умолчанию

q-динамический массив
nq-старшая степень многочлена
p-ваш многочлен(его коэф.)
np-старшая степень вашего многочлена
после ввода многочлена
nq:=np+1;
setlength(q,nq+1);
for i:=0 to nq do begin
q[i]:=p[i+1]*(i+1)
end;
Артур2334 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Производная функции phreaker228 Помощь студентам 1 15.06.2012 06:01
функция, производная, delphi azat94krg Помощь студентам 0 27.03.2012 23:34
Производная С++ Enchance Помощь студентам 3 07.10.2010 07:26
производная функции serj-07 Помощь студентам 2 13.02.2010 00:05