![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Помогите скомпилировать код.
Код:
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Grids; type TForm1 = class(TForm) Memo1: TMemo; Button1: TButton; StringGrid1: TStringGrid; Label1: TLabel; Label2: TLabel; StringGrid2: TStringGrid; procedure FormCreate(Sender: TObject); procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; mas:array [1..1065]of byte; mas2:array [1..1065]of integer; massiv,massiv2:array [1..2,1..500] of byte; massiv3,massiv4:array [1..2,1..500] of integer; frequency:real; k,i,j:integer; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); begin for i:=1 to 1065 do mas2[i]:=0; for i:=1 to 2 do for j:=1 to 500 do begin massiv[i,j]:=0; massiv2[i,j]:=0; end; end; procedure TForm1.Button1Click(Sender: TObject); var kol,num:integer; Str,s,ss:string; x,y,n:integer; t:boolean; begin k:=0; //записываем цифры из текста в массив for i:=0 to Memo1.Lines.Count-1 do begin Str:=Memo1.Lines[i]; j:=1; while (j<=Length(Str)) do begin if ((Str[j]<>' ')and(Str[j]<>',')and(Str[j]<>'.')and(Str[j]<>'-')and(Str[j]<>':')) then begin inc(k);s:=Copy(Str,j,2);mas[k]:=StrToInt(s); j:=j+2; end else inc(j); end; end; num:=k; //подсчитываем сколько раз каждая цифра встречается в исходном тексте for i:= 1 to k do begin x:=mas[i]; kol:=0; for j:= 1 to k do if (x=mas[j]) then inc(kol); massiv[1,i]:=x; massiv[2,i]:=kol; end; for i:=1 to k do begin x:= massiv[1,i]; y:=i; j:=1; while j<=k do begin if (massiv[1,j]=x)and(j<>i) then begin massiv[1,j]:=0; massiv[2,j]:=0; end; inc(j); end; end; kol:=0; for i:=1 to k do if (massiv[1,i]<>0)then begin inc(kol); massiv2[1,kol]:=massiv[1,i]; massiv2[2,kol]:=massiv[2,i]; end; StringGrid1.ColCount:=kol; for i:=1 to k do begin StringGrid1.Cells[i-1,0]:=IntToStr(massiv2[1,i]); StringGrid1.Cells[i-1,1]:=IntToStr(massiv2[2,i]); frequency:=massiv2[2,i]/num; StringGrid1.Cells[i-1,2]:=FloatToStrF(frequency,fffixed,5,4); end; //подсчет биграмм for i:=0 to Memo1.Lines.Count-1 do begin Str:=Memo1.Lines[i]; j:=1; while (j<=Length(Str)) do begin if ((Str[j]<>' ')and(Str[j]<>',')and(Str[j]<>'.')and(Str[j]<>'-')and(Str[j]<>':')and(Str[j+1]<>' ')) then begin s:=Copy(Str,j,5); for n:=1 to 5 do if ((s[n]=' ')or(s[n]=',')or(s[n]=':')or(s[n]='-'))then delete(s,n,1); if length(s)=4 then begin inc(k); mas2[k]:=StrToInt(s);end; j:=j+2; end else inc(j); end; end; StringGrid2.ColCount:=k; num:=k; for i:= 1 to k do begin x:=mas2[i]; kol:=0; for j:= 1 to k do if (x=mas2[j]) then inc(kol); massiv3[1,i]:=x; massiv3[2,i]:=kol; end; for i:=1 to k do begin x:= massiv3[1,i]; y:=i; j:=1; while j<=k do begin if (massiv3[1,j]=x)and(j<>i) then begin massiv3[1,j]:=0; massiv3[2,j]:=0; end; inc(j); end; end; kol:=0; for i:=1 to k do if (massiv3[1,i]<>0)then begin inc(kol); massiv4[1,kol]:=massiv3[1,i]; massiv4[2,kol]:=massiv3[2,i]; end; StringGrid2.ColCount:=kol; for i:=1 to k do begin StringGrid2.Cells[i-1,0]:=IntToStr(massiv4[1,i]); StringGrid2.Cells[i-1,1]:=IntToStr(massiv4[2,i]); frequency:=massiv4[2,i]/num; StringGrid2.Cells[i-1,2]:=FloatToStrF(frequency,fffixed,5,4); end; end; end. lmikle: Пользуемся тегами!!! С делфи никогда не имела дела. Попробовала скомпилировать - выдал ошибки. Нужен только .exe файл! ПОМОГИТЕ! Последний раз редактировалось lmikle, 23.11.2012 в 22:57. |