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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.05.2009, 17:21   #1
bestlover
Пользователь
 
Регистрация: 05.04.2009
Сообщений: 23
По умолчанию Перевод кода Delphi-Pascal! Метод Пауэлла

Здравсвуйте! Нужно перевести из Делфи в Паскаль, можно без рисования графики данный исходник) не откажусь если у вас есть другой исходник данного метода!
Код:
procedure TFrmMain.Pawell(eps:double;fp:TWorldPoint);
const n=2;
var cappa:Double;
    p_i:array [1..n] of TWorldPoint;
    z,p,curx,lastx,lastxx,wavex:TWorldPoint;
    k,l,i:integer;
    screen:TScreenPoint;
begin
p_i[1].x:=1;p_i[1].y:=0;
p_i[2].x:=0;p_i[2].y:=1;
curx:=fp;
lastx:=fp;
wavex:=fp;
lastxx:=fp;
k:=1;
while true do
begin
  for i:=1 to n do
  begin
    for l:=1 to n do
    begin
       xk:=wavex;
       uk:=p_i[l];
       cappa:=MakeDichotomy(-1000,1000,1e-5,eps/100,Pseudo1D);
       if abs(cappa)<1e-8 then cappa:=0;
       wavex.x:=wavex.x+cappa*p_i[l].x;
       wavex.y:=wavex.y+cappa*p_i[l].y;
       World2Screen(Area,CopyScr.Canvas.ClipRect,wavex,Screen);
       Copyscr.Canvas.LineTo(Screen.x,Screen.y);
    end;
    p.x:=wavex.x-lastx.x;
    p.y:=wavex.y-lastx.y;
    xk:=wavex;
    uk:=p;
    cappa:=MakeDichotomy(-10000,10000,1e-5,eps/100,Pseudo1D);
    if abs(cappa)<1e-8 then cappa:=0;
    z.x:=wavex.x+cappa*p.x;
    z.y:=wavex.y+cappa*p.y;
    World2Screen(Area,CopyScr.Canvas.ClipRect,z,Screen);
    Copyscr.Canvas.LineTo(Screen.x,Screen.y);
    SetPoint(z);
    for l:=1 to n-1 do
     begin
        p_i[l]:=p_i[l+1];
     end;
    p_i[n]:=p;
    if i<>n then begin wavex:=z;lastx:=z; end;
  end;{for i}
  BuiltReport(wavex,p,k,cappa);
  lastxx:=curx;
  curx:=z;
  if sqrt(sqr(curx.x-lastxx.x)+sqr(curx.y-lastxx.y))<eps then
      break;
  wavex:=curx;
  lastx:=curx;
  inc(k);
end;
end;
bestlover вне форума Ответить с цитированием
Старый 22.05.2009, 17:54   #2
Fellics{новичок}
Форумчанин
 
Аватар для Fellics{новичок}
 
Регистрация: 25.03.2008
Сообщений: 159
По умолчанию

Вообще-то паскаль и делфи одно и тоже, точнее делфи построен на языке паскаль.
Fellics{новичок} вне форума Ответить с цитированием
Старый 22.05.2009, 18:27   #3
bestlover
Пользователь
 
Регистрация: 05.04.2009
Сообщений: 23
По умолчанию

Я знаю! тут просто применяется формы, там , свойства и т.д. Мне просто надо переделать это все на программу под паскаль с процедурами и функциями.
bestlover вне форума Ответить с цитированием
Старый 21.12.2009, 17:35   #4
Danila_dru
Новичок
Джуниор
 
Регистрация: 22.11.2007
Сообщений: 1
По умолчанию

Добрый день. Есть просьба по поводу метода Пауэлла. Если у Вас остались исходники на Delphi не могли бы Вы из выслать на почту Danila.dru@gmail.com спасибо.
Danila_dru вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перевод кода из Pascal в Object Pascal zemskov77 Общие вопросы Delphi 1 03.01.2009 09:37
Перевод кода ELL Помощь студентам 0 07.06.2008 01:36
Перевод кода с Fortran-77 на Delphi unhide Помощь студентам 3 20.05.2008 14:27