Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
jeydron
0 / 0 / 0
Регистрация: 10.04.2010
Сообщений: 9
1

Из Pascal в Delphi

10.04.2010, 18:03. Просмотров 532. Ответов 6
Метки нет (Все метки)

Вот делал програму по построению фракталов наткнулся на Pascal код а нужно в Delphi подскажите как переделать:
Pascal
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
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
program L_fractals ;
uses Crt, Graph ;
const STEP= 5 ;
 x0= 0;
 Y0= -200;
var
 gd,gm,inrec:integer;
 direct,rc,len:integer;
 ls:array[0..60000] of char;
 axiom:string[20];
 rules:array[1..10] of string[30];
 f:text; namefile:string;
 
function xe(x:real):integer;
begin  xe:=round(x+320)
end;
 
function ye(y:real):integer;
begin  ye:=round(240-y)
end;
 
procedure ldraw(x0,y0,step,direct:integer);
type
 posit=record
       x,y,curangle:real;
       end;
var x,y,rangle,curangle:real;
    pstack,i:integer;
    stack:array[0..100] of posit;
    c:char;
begin
   x:=x0;y:=y0;
   rangle:=(360.0/direct)*PI/180;curangle:=0;
   pstack:=-1;
   moveto(xe(x0),ye(y0));
   for i:=1 to len do
   begin
    c:=ls[i];
    case c of
    'F': begin x:=x+step*cos(curangle);
           y:=y+step*sin(curangle);
           lineto(xe(x),ye(y)) end;
    '+': curangle:=curangle-rangle;
    '-': curangle:=curangle+rangle;
    '[': begin inc(pstack);
           stack[pstack].x:=x;
           stack[pstack].y:=y;
           stack[pstack].curangle:=curangle;
         end;
    ']': begin x:=stack[pstack].x;
           y:=stack[pstack].y;
           curangle:=stack[pstack].curangle;
           dec(pstack);moveto(xe(x),ye(y)) ;
         end;
    end
  end
end;
 
procedure lstring;
var i,j,k,l,shift,sh:integer ;
begin
   len:=length(axiom);
   for i:=1 to len do ls[i]:=axiom[i];
   for i:=1 to inrec do
   begin
     k:=1 ;
     while k<=len do
     begin
      for j:=1 to rc do
        if ls[k]=rules[j][1] then
        begin
          shift:=length(rules[j])-1;
          if k<len then
          for sh:=len-k downto 1 do
            ls[k+sh+shift-1]:=ls[k+sh];
          for sh:=1 to shift do ls[k+sh-1]:=rules[j][sh+1];
          len:=len+shift-1;
          k:=k+shift
        end;
      inc(k)
     end;
  end
end;
 
procedure readfra;
var i:integer;
begin
 assign(f,namefile);
 reset(f);
 readln(f,axiom) ;
 writeln(axiom,'  ',length(axiom));
 readln(f,direct) ;
 readln(f,rc) ;
 for i:=1 to rc do
 begin
  readln(f,rules[i] );
  writeln(rules[i],'  ',length(rules[i])) ;
 end;
 close(f) ;
end;
 
begin
  writeln('Name of datafile (1.1 or 2.2 or 3.3 or 4.4)') ;
  readln(namefile);
  writeln('Depth of recursion') ;
  readln(inrec);
  readfra;
  lstring;
  gd:=Vga;gm:=VgaHi;
  initgraph(gd,gm,'');
  ldraw(X0,Y0,STEP,direct);
  readln ;
  closegraph
end.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.04.2010, 18:03
Ответы с готовыми решениями:

C Delphi в Pascal
Нашёл у вас на сайте программу для вічисления обратной матрицы как этот код...

Перенос из pascal в delphi.
Недавно начал изучать delphi нужно перенести программу из pascal.Программа...

Object Pascal (Delphi)
1. Нужно написать программу на языке Object Pascal (Delphi), чтобы она...

Компилятор Pascal на Delphi
В общем, готовлюсь к олимпиаде с информатики. Понял, что нет нормальных,...

перенос из delphi в Pascal
как перенести текст находящийся в memo перенести в окно кода PascalABC(turbo)

6
STRATEG
1160 / 466 / 82
Регистрация: 04.03.2010
Сообщений: 1,013
10.04.2010, 19:04 2
Я перевел,кинь содержание datafile файла.Фракталы это красиво,могу кинуть один красивенький если хочешь
0
jeydron
0 / 0 / 0
Регистрация: 10.04.2010
Сообщений: 9
10.04.2010, 20:14  [ТС] 3
Цитата Сообщение от strateg0793 Посмотреть сообщение
Я перевел,кинь содержание datafile файла
Всмысле что здесь имешь в виду?
0
STRATEG
1160 / 466 / 82
Регистрация: 04.03.2010
Сообщений: 1,013
10.04.2010, 20:20 4
мы читаем что то из файла

Pascal
1
2
assign(f,namefile);
 reset(f);
тут пояснение для нас
Pascal
1
writeln('Name of datafile (1.1 or 2.2 or 3.3 or 4.4)') ;
Вот мне и нужно содержимое файла с данными
0
jeydron
0 / 0 / 0
Регистрация: 10.04.2010
Сообщений: 9
10.04.2010, 22:57  [ТС] 5
Вот содержимое:
Код
[B]1.1[/B]
----G
14
2
GGFX[+G][-G]
XX[-FFF][+FFF]FX
------------------------------
[B]2.2[/B]
----F
16
1
FFF+[+F-F-F]-[-F+F+F]
------------------------------
[B]3.3[/B]
X
4
2
XX+YF+
Y-FX-Y


------------------------------
[B]4.4[/B]
--------C
240
3
C[--C]N[++C]N--C
NNF
FC
------------------------------
0
STRATEG
1160 / 466 / 82
Регистрация: 04.03.2010
Сообщений: 1,013
11.04.2010, 09:14 6
Глянь что получилось,там наверн косяки,я на "лету" делал Фрактал Pascal To Delphi.rar
0
jeydron
0 / 0 / 0
Регистрация: 10.04.2010
Сообщений: 9
11.04.2010, 12:17  [ТС] 7
Спасибо, програма работает но только после двух сообщений выдает ошибку что файл не найден хотя все правильно прописываю
0
11.04.2010, 12:17
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.04.2010, 12:17

Переделать из Pascal в Delphi
Добрый вечер. Не получается переделать задачки из паскаля в delphi. Прошу...

Переведите из Delphi в Pascal )
program deikstra; {$APPTYPE CONSOLE} uses SysUtils; var sp:array...

Литература Delphi, Pascal
1)Delphi 7 для профессионалов. Иллюстрированный самоучитель. скачать 2)...


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

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

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