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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 31.05.2009, 11:21   #1
logoleha
 
Регистрация: 26.05.2009
Сообщений: 5
По умолчанию График-код

Привет всем, помогите пожалуйста. Это код графика y=exp(x1*ln(3)); , я не понимаю часть этого кода(выделена красным), обьясните пожалуйста!!!

Код:
procedure graf;
var
  Form1: TForm1;

implementation

uses Unit2;

{$R *.dfm}
procedure graf;
 const n=30;
var x,y,x2,y2,i,j:integer;
x1,y1,x3,y3:real;
s,s1:array[1..20] of string;
begin
for j:=1 to 20 do begin
s[j]:=inttostr(j);
s1[j]:=inttostr(-j);
end;
with  form1.Canvas do
 begin
 Pen.Color:=form1.ColorDialog1.Color;
 pen.Width:=2;
 textout(Form1.ClientWidth div 2-30,5,'Y');
 textout(form1.clientwidth-20,form1.clientheight div 2-25,'X');
 textout(form1.clientwidth div 2-10,form1.clientheight div 2-15,'0');
 MoveTo(form1.clientwidth div 2,0);
 lineTo(form1.clientwidth div 2,form1.clientheight);
 MoveTo(0,form1.clientheight div 2);
 lineTo(form1.clientwidth,form1.clientheight div 2);
 for x:= 0 to  form1.clientwidth do
 begin
 x1:=(-form1.clientwidth div 2+x)/n;
 y1:= exp(x1*ln(3));
 y:=-round(y1*n)+form1.clientheight div 2;
 Moveto(x,y);
 x2:=x+2;
 x3:=(-form1.clientwidth div 2+x2)/n;
 y3:= exp(x3*ln(3));
 y2:=-round(y3*n)+form1.clientheight div 2;
 pen.Width:=2;
 lineto(x2,y2);
 end;  
pen.Width:=1;
 pen.Color:=clblack;
 for i:= 1 to 20   do
 begin
 //X
  moveto(form1.clientwidth div 2-i*n,form1.clientheight div 2-7);
 lineto(form1.clientwidth div 2-i*n,form1.clientheight div 2+7);
 moveto(form1.clientwidth div 2+i*n,form1.clientheight div 2-7);
 lineto(form1.clientwidth div 2+i*n,form1.clientheight div 2+7);
 textout(form1.clientwidth div 2-i*n,form1.clientheight div 2+23,s1[i]);
 textout(form1.clientwidth div 2+i*n,form1.clientheight div 2+23,s[i]);
 //Y
  moveto(form1.clientwidth div 2-7,form1.clientheight div 2-i*n);
 lineto(form1.clientwidth div 2+7,form1.clientheight div 2-i*n);
 moveto(form1.clientwidth div 2-7,form1.clientheight div 2+i*n);
 lineto(form1.clientwidth div 2+7,form1.clientheight div 2+i*n);
 textout(form1.clientwidth div 2+23,form1.clientheight div 2-i*n,s[i]);
 textout(form1.clientwidth div 2+23,form1.clientheight div 2+i*n,s1[i]);
 end;
 end;
end;

Последний раз редактировалось Stilet; 01.06.2009 в 09:55.
logoleha вне форума Ответить с цитированием
Старый 31.05.2009, 11:52   #2
Kotofff
Участник клуба
 
Аватар для Kotofff
 
Регистрация: 11.01.2009
Сообщений: 1,917
По умолчанию

В общем код рабочий ?
Что именно непонятно в "красном" куске кода ?
Становишься курсором на что-нибудь "непонятное" и жмешь F1 - вылазит справка ...
"Заряженному танку в дуло не смотрят" @Dekmer in WoT
Kotofff вне форума Ответить с цитированием
Старый 01.06.2009, 10:09   #3
Lime
Форумчанин
 
Аватар для Lime
 
Регистрация: 10.02.2009
Сообщений: 815
Вопрос

Цитата:
Сообщение от Kotofff Посмотреть сообщение
В общем код рабочий ?
Что именно непонятно в "красном" куске кода ?
Становишься курсором на что-нибудь "непонятное" и жмешь F1 - вылазит справка ...
Видимо он не понял мат части .
Lime вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
График Paul_AG Общие вопросы C/C++ 3 29.05.2009 22:20
Код игры на Паскале и на Делфи сильно отличается? Как переписать код с Паскаля в Делфи? Mclaren Помощь студентам 2 27.04.2009 22:37
график Pavlov_yu Microsoft Office Excel 2 24.02.2009 18:13
График Simon..14 Общие вопросы C/C++ 1 02.02.2009 19:55
График Oksana БД в Delphi 3 12.02.2007 20:05