Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.55/20: Рейтинг темы: голосов - 20, средняя оценка - 4.55
1 / 1 / 1
Регистрация: 27.06.2009
Сообщений: 62
1

Графики - Метод Рунге-Кутта и Метод Адамса

12.09.2010, 18:59. Показов 4140. Ответов 7
Метки нет (Все метки)

Пожалуйста помогите!!! очень срочно нужно сделать графики (два в одном): метод Рунге-Кутта и метод Адамса... https://www.cyberforum.ru/delphi/thread165084.html Извините, что повторяюсь с темой, просто очень нужно.... препод не хочет ставить зачет за то, что прога без графика Завтра последний день((( иначе отчислят... у меня делфи слетел, уже переустанавливала не помогает, так что даже методом тыка не сделаю(((
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.09.2010, 18:59
Ответы с готовыми решениями:

Графики - Метод Рунге-Кутта и Метод Адамса
Вот задание:

Метод Эйлера и метод Рунге-Кутта: проверить код
Доброго времени суток. Хотел бы обратится к вам за помощью. Я написал программку, которая решает...

Метод Рунге-Кутта
Здравствуйте, пожалуйста помогите в программе Delphi решить систему обыкновенных дифференциальных...

Метод Рунге-Кутта
Ребят, помогите разобраться почему полученный данные не выводятся в указанный файл(если что, то это...

__________________
7
Админю немножко :)
125 / 114 / 25
Регистрация: 05.01.2009
Сообщений: 889
12.09.2010, 22:14 2
Anchut@, ,бросаешь на форму компонент TChart, нажимаешь на нем два раза. на закладке Series нажимаешь кнопочку Add, выбираешь тип графика (лучше выбрать первый тип и снять галочку внизу у надписи 3D) Это надо проделать 2 раза. Теперь в циклах после каждого вывода значений в мемо дописываешь вот такие строки
Delphi
1
Chart1.SeriesList[0].AddXY(x,y,'',clblack);
это в первом цикле
Delphi
1
Chart1.SeriesList[1].AddXY(x,y,'',clblue);
а это во втором. и все, графики построены. черным цветом график Рунге, синим - Адамс
1
1 / 1 / 1
Регистрация: 27.06.2009
Сообщений: 62
12.09.2010, 22:18  [ТС] 3
Ой, спасибки Терь завтра постараюсь надыбыть комп с делфи и сделаю все )))
0
Админю немножко :)
125 / 114 / 25
Регистрация: 05.01.2009
Сообщений: 889
12.09.2010, 22:22 4
вот весь код программы
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
unit Unit1;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, TeEngine, Series, ExtCtrls, TeeProcs, Chart;
 
type
  TForm1 = class(TForm)
    Chart1: TChart;
    Series1: TLineSeries;
    Series2: TLineSeries;
    Memo1: TMemo;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form1: TForm1;
    y0, x0, a, b, h: extended;
 
implementation
 
{$R *.dfm}
   function fxy(x,y: extended): extended;
begin
 fxy:=-(2*x+ y)/(1+cos(y));
end;
 
procedure TForm1.Button1Click(Sender: TObject);
var
 x,y : extended;
 k1,x1,y1,k2,y2,
   k3,y3,x2,k4,dy       :extended;
begin
y0 := StrToFloat(Edit1.Text);
 x0 := 0;
 a  := StrToFloat(Edit2.Text);
 b  := StrToFloat(Edit3.Text);
 h  := StrToFloat(Edit4.Text);
 memo1.Lines.Add('Метод Рунге-Кутта');
 x:=x0;
 y:=y0;
 memo1.Lines.Add('  x='+floattostr(x)+'; y='+floattostr(y));
 Chart1.SeriesList[0].AddXY(x,y,'',clblue);
 while x<=b do
  begin
   k1:=h*fxy(x,y);
   x1:=x+h/2;
   y1:=y+k1/2;
 
   k2:=h*fxy(x1,y1);
   y2:=y+k2/2;
 
   k3:=h*fxy(x1,y2);
   y3:=y+k3;
        x2:=x+h;
   k4:=h*fxy(x2,y3);
   dy:=(k1+2*k2+2*k3+k4)/6;
   y:=y+dy;
   x:=x+h;
   memo1.Lines.Add('  x='+floattostr(x)+'; y='+floattostr(y));
   Chart1.SeriesList[0].AddXY(x,y,'',clblack);
  end;
 
 memo1.Lines.Add('');
 memo1.Lines.Add('  Метод Адамса ');
 x:=x0;
 y:=y0;
 memo1.Lines.Add('  x='+floattostr(x)+'; y='+floattostr(y));
 Chart1.SeriesList[1].AddXY(x,y,'',clblue);
 while x<=b do
  begin
   x:=x+h;
   y:=y+h*fxy(x,y);
   memo1.Lines.Add('  x='+floattostr(x)+'; y='+floattostr(y));
   Chart1.SeriesList[1].AddXY(x,y,'',clblue);
  end;
 
end;
 
 
end.
1
1 / 1 / 1
Регистрация: 27.06.2009
Сообщений: 62
12.09.2010, 22:27  [ТС] 5
В двойне спасиб
0
Админю немножко :)
125 / 114 / 25
Регистрация: 05.01.2009
Сообщений: 889
12.09.2010, 22:30 6
Anchut@, небольшая ошибочка в 55 строке
надо цвет поставить вместо blue выставить Black
1
1 / 1 / 1
Регистрация: 27.06.2009
Сообщений: 62
12.09.2010, 22:32  [ТС] 7
Хорошо))) поменяю)
0
Всегда онлайн
49 / 49 / 10
Регистрация: 13.04.2014
Сообщений: 1,337
29.10.2014, 13:07 8
Drongo, Anchut@, Здравствуйте пожалуйста добавит полный программа в одном архиве мне очень понадобился.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.10.2014, 13:07

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Метод Рунге-Кутта 4-го порядка
Добрый день. Скачал программку, которая решает систему диф.уравнений методом Рунге-Кутты 4-го...

Метод Рунге-Кутта 4-го порядка
Доброго времени суток Господа. Прошу помочь с написанием кода для интегрирования сист. диф. ура-ий...

Метод Рунге-Кутта для 5 порядка
нужна ваша помощь! Нужно написать программу для Рунге-Кутта для дифференциального уравнения 5...

Метод рунге-Кутта в решении системы уравнений
Вот это вот код var Form1: TForm1; y0, x0, a, b, h: extended; implementation {$R...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.