IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

 
 Ответить  Открыть новую тему 
> Построение графика функции, Построение графика тригонометрических функций с ограниченными значения
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 18
Пол: Мужской
Реальное имя: Бадык

Репутация: -  0  +


Здравствуйте уважаемые программисты, не могли бы вы помочь мне сделать курсовую работу на Delphi. Преподаватель дал 2 задания для курсовой, которые нужно делать каждую отдельно.
1. Построить графики функций: arctg(x), где x-ограниченно.
2. Вычислить с заданной точностью значения тригонометрической функции sin(x).
Помогите пожалуйста, а то я сам мало что знаю, а написать эти 2 программы нужно уже в ближайшее время. Буду очень признателен.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гуру
*****

Группа: Пользователи
Сообщений: 1 220
Пол: Мужской

Репутация: -  16  +


2.
Общие вопросы по математике.
1.
Добавлено через 19 мин.
Взято отсюда - Построение любого графика
и переделано под Дельфи.
Оптимизация, подстановка своей ф-ции и проч. - на Вас.

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
const
{ OPTIONS }
shag=0.0001;
lgr = -50;
pgr = 50;
zcrtX=320;
zcrty=240;
mtrX=10;
mtrY=10;
colorG=15;
colorOXY=4;
OXYminX=-200;
OXYmaxX=200;
OXYminY=-200;
oxymaxY=200;
Var
x,y:real;{extended;}
i:integer;
Begin
for i:=OXYminX to OXYmaxX do
canvas.Pixels[zcrtX+i,zcrty]:=colorOXY;
for i:=OXYminY to OXYmaxY do
canvas.Pixels[zcrtX,zcrty-i]:=colorOXY;

x:=lgr;
while x<=pgr do
begin
if x<>2 then
begin y:=abs(x/(x-2))-1; {***}
canvas.Pixels[zcrtx+trunc(x*mtrX),zcrty-trunc(y*mtrY)]:=colorg;
end;
x:=x+shag;
end;

end;

end.


Сообщение отредактировано: Ozzя -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Новичок
*

Группа: Пользователи
Сообщений: 18
Пол: Мужской
Реальное имя: Бадык

Репутация: -  0  +


uses Series;
procedure TForm1.Button1Click(Sender: TObject);
var
x, y: Integer;
s, t: TLineSeries;
begin
with Chart1 do
begin
Title.Text.Clear;
Title.Text.Add('Заголовок для Chart');
s := TLineSeries.Create(nil);
s.Clear;
s.Title := 'Chart Line 1';
s.ParentChart := Chart1;
s.XValues.DateTime := True;
begin
x:=-1;
while x<=1 do
begin
s.AddXY(x , arctg(x) );
x:=x+0.1;
end;
end;
end;
end.


вот то что я сделал, но у меня эта програма не работает...пожалуйста помогите в чем проблема...

Сообщение отредактировано: Lapp -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






Цитата
пожалуйста помогите в чем проблема...
Проблема в синтаксисе прежде всего... Тебе же компилятор должен сказать, что именно неправильно. X, Y в частности, должны быть вещественными, а не целочисленными. Вот так все работает:
procedure TForm1.Button1Click(Sender: TObject);
var
x, y: double;
s, t: TLineSeries;
begin
with Chart1 do begin
Title.Text.Clear;
Title.Text.Add('Заголовок для Chart');
s := TLineSeries.Create(nil);
s.Clear;
s.Title := 'Chart Line 1';
s.ParentChart := Chart1;
s.XValues.DateTime := True;

x:=-1;
while x<=1 do begin
s.AddXY(x , arctan(x) );
x:=x+0.1;
end;
end;
end;
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Новичок
*

Группа: Пользователи
Сообщений: 18
Пол: Мужской
Реальное имя: Бадык

Репутация: -  0  +


а там после последнего end'а точка с запятой должна быть или точка?
спасибо большое) очень признателен...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Гость






Цитата
после последнего end'а точка с запятой должна быть или точка?
Это - описание процедуры. Здесь точка с запятой... Но ниже у тебя должен быть и End с точкой, означающий конец модуля.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Новичок
*

Группа: Пользователи
Сообщений: 18
Пол: Мужской
Реальное имя: Бадык

Репутация: -  0  +


спасибо большое))очень благодарен...
а скажи пожалуйста...для чего мы в тексте используем это:
s.XValues.DateTime := True
и почему x и y заданы через double...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 20.04.2024 4:35
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name