Стася
Постоялец
Offline
|
|
« : 21-11-2008 15:32 » |
|
Вот полное задание:написать программу, предназначенную для графической визуализации функции, соответствующей выданному варианту. По графику функции провести исследование: на выбранной области допустимых значений указать количество и определить интервалы локализации нулей функции, максимумов и минимумов. Заданным методом решения нелинейных алгебраических уравнений на выбранном интервале локализации уточнить нуль функции (используя исходную функцию) или экстремум (используя производную исходной функции). Вычисление значений и производных реализовать с использованием процедур или функций, определяемых пользователем. При построении графиков и вычислении значений и производных функций осуществлять проверку аргумента на принадлежность области допустимых значений. Метод решения-метод простых итераций. Функция: y=a0+a1*x+a2*x^2+a3*ln(a4*x)+a5*ln(a6*x^2)
|
|
|
Записан
|
|
|
|
Sla
|
|
« Ответ #1 : 21-11-2008 15:34 » |
|
Стася, и шо? кто решить должен?
|
|
|
Записан
|
Мы все учились понемногу... Чему-нибудь и как-нибудь.
|
|
|
Джон
просто
Администратор
Offline
Пол:
|
|
« Ответ #2 : 21-11-2008 16:08 » |
|
Стася, ну дык эт мы мигом. Давай скорей значения для a0, a1, a2,a3,a4,a5,a6 и x, а то скоро рабочий день заканчивается.
|
|
|
Записан
|
Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома. "Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash "Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman "All science is either physics or stamp collecting." Ernest Rutherford "Wer will, findet Wege, wer nicht will, findet Gründe."
|
|
|
Стася
Постоялец
Offline
|
|
« Ответ #3 : 21-11-2008 17:01 » |
|
Так они неизвестны
|
|
|
Записан
|
|
|
|
McZim
|
|
« Ответ #4 : 21-11-2008 17:04 » |
|
Стася, хм получается уравнение с 8-мю неизвестыми?
|
|
|
Записан
|
The CBO without stats is like a morning without coffee. (c) T.Kyte.
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #5 : 21-11-2008 17:24 » |
|
a0, a1, a2,a3,a4,a5,a6 наверное должны вводиться вручную, да , Стася ?
|
|
|
Записан
|
|
|
|
Стася
Постоялец
Offline
|
|
« Ответ #6 : 21-11-2008 17:27 » |
|
Да. Также как и x.
|
|
|
Записан
|
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #7 : 21-11-2008 17:56 » |
|
а X то зачем ? Непонятно задание...
|
|
|
Записан
|
|
|
|
Стася
Постоялец
Offline
|
|
« Ответ #8 : 21-11-2008 17:57 » |
|
Ой, ошиблась(((
|
|
|
Записан
|
|
|
|
Стася
Постоялец
Offline
|
|
« Ответ #9 : 21-11-2008 18:00 » |
|
Хотя нет, для этого метода нужно знать начальное приближение x.
|
|
|
Записан
|
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #10 : 21-11-2008 18:01 » |
|
Стася, ну ты хоть начни код писать, а то куда объяснять то ? В воздух ?
|
|
|
Записан
|
|
|
|
Стася
Постоялец
Offline
|
|
« Ответ #11 : 21-11-2008 18:03 » |
|
Завтра, если вы не против.
|
|
|
Записан
|
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #12 : 21-11-2008 18:12 » |
|
Стася, не против
|
|
|
Записан
|
|
|
|
Стася
Постоялец
Offline
|
|
« Ответ #13 : 29-11-2008 19:51 » |
|
Еще надо поставить ограничения для коэффициентов а2-а6. И с графиком разобраться. unit Unit11;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, TeeProcs, TeEngine, Chart;
type TForm11 = class(TForm) Edit1: TEdit; Edit2: TEdit; Edit3: TEdit; Edit4: TEdit; Edit5: TEdit; Edit6: TEdit; Edit7: TEdit; Edit8: TEdit; Edit9: TEdit; Edit10: TEdit; Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Label6: TLabel; Label7: TLabel; Label8: TLabel; Label9: TLabel; Label10: TLabel; Button1: TButton; Chart1: TChart; Button2: TButton; procedure Button2Click(Sender: TObject); procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end;
var Form11: TForm11;
implementation
{$R *.dfm}
procedure TForm11.Button1Click(Sender: TObject); Var a0,a1,a2,a3,a4,a5,a6,x0,x,epsilon:real; begin x:=strtofloat(edit1.Text); epsilon:=strtofloat(edit2.Text); a0:=strtofloat(edit3.Text); a1:=strtofloat(edit4.Text); if a1=0 then Showmessage('Ошибка') else Showmessage('Ошибки нет'); a2:=strtofloat(edit5.Text); a3:=strtofloat(edit6.Text); a4:=strtofloat(edit7.Text); a5:=strtofloat(edit8.Text); a6:=strtofloat(edit9.Text); repeat x0:=x; x:=-(a0+a2*x*x+a3*ln(a4*x)+a5*ln(a6*x*x))/a1; until abs(x0-x)<=epsilon; Edit10.text:=floattostr(x); end;
procedure TForm11.Button2Click(Sender: TObject); begin Edit1.Clear; Edit2.Clear; Edit3.Clear; Edit4.Clear; Edit5.Clear; Edit6.Clear; Edit7.Clear; Edit8.Clear; Edit9.Clear; Edit10.Clear;
end;
end.
|
|
« Последнее редактирование: 01-12-2008 08:48 от zubr »
|
Записан
|
|
|
|
Стася
Постоялец
Offline
|
|
« Ответ #14 : 29-11-2008 20:10 » |
|
у меня вот такой вопрос. Будет у меня кнопка, при нажатии на которую будет строиться график. А как это написать? С настройками TChart я более-менее разобралась.
|
|
|
Записан
|
|
|
|
Стася
Постоялец
Offline
|
|
« Ответ #15 : 30-11-2008 15:34 » |
|
Ошибка, соответственно график не строится. Не пойму, почему.
|
|
« Последнее редактирование: 30-11-2008 16:59 от Стася »
|
Записан
|
|
|
|
Sla
|
|
« Ответ #16 : 01-12-2008 07:39 » |
|
где-то uses Variants я уже видел ну да ладно Стася, оформляй часть кода тегами [code][/code] или пользуйся не быстрым ответом, а жмакай кнопку "ответ", и там есть кнопочка "#" ошибка? какая? а выкладывать проект не надо...
|
|
|
Записан
|
Мы все учились понемногу... Чему-нибудь и как-нибудь.
|
|
|
Стася
Постоялец
Offline
|
|
« Ответ #17 : 01-12-2008 14:39 » |
|
Извините, спасибо за советы. График строится в виде одной линии. А мне нужно чтобы строился точечный для каждого нового значения х.
|
|
|
Записан
|
|
|
|
|