unit Unit1;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.Buttons, Vcl.ExtCtrls, Vcl.StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
Panel1: TPanel;
BitBtn1: TBitBtn;
Button5: TButton;
Button6: TButton;
Button7: TButton;
Button8: TButton;
OpenDialog1: TOpenDialog;
SaveDialog1: TSaveDialog;
Label1: TLabel;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure Button8Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses Unit2, Unit3, Unit4;
{$R *.dfm}
procedure Soob;
begin ShowMessage('Вы не ввели имя файла.Повторите ввод!');
end;
procedure TForm1.Button1Click(Sender: TObject);
Label NN;
var k:integer;
begin
If OpenDialog1.Execute Then
A:=OpenDialog1.FileName
Else
begin Soob;
Exit;
end;
NN:
if (OKBottomDlg.ShowModal=mrOk)
then
begin M:=StrToInt(OkBottomDlg.Edit1.Text);
N:=StrToInt(OkBottomDlg.Edit2.Text);
if (M=0) or (N=0) then
begin
ShowMessage('Вы ввели нулевое значение! Повторите ввод!');
Exit;
End;
end
else begin
if Application.MessageBox('Вы не ввели значения. Повторить ввод?','Надо ввести значения или Отмена',MB_OKCANCEL)=1
then Goto NN
else Exit;
end;
Vvod(B);
if K>0 then begin
ShowMessage('Ошибочно количество строк исходного массива'+'Проверьте файл с исходными данными');
Halt; end;
Label1.Caption:='Введены исходные данные';
Button1.Enabled:=False;
Button2.Enabled:=True;
Button2.SetFocus;
if SaveDialog1.Execute then
begin A:=SaveDialog1.FileName;
AssignFile(FI,A); Rewrite (FI);
end
else begin Soob; Exit; end;
Writeln(FI, 'Исходные данные');
P(B,M,N);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
Obr(B,M,N);
Label1.Caption:='Выполнена обработка данных';
Button2.Enabled:=False;
Button3.Enabled:=True;
Button3.SetFocus;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
P(B,M,N);
Button3.Enabled:=False;
CloseFile(FI);
Label1.Caption:='Выведены результаты в тестовый файл';
Button4.Enabled:=True;
Button4.SetFocus;
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
Button4.Enabled:=False;
Form2.Show;
Form3.Show;
Form1.FormStyle:=fsStayOnTop;
Form1.FormStyle:=fsNormal;
Panel1.Visible:=True;
Label1.Caption:='Открыты формы для вывода результатов';
Button5.SetFocus;
end;
procedure TForm1.Button5Click(Sender: TObject);
begin
Form2.ListBox1.Items.LoadFromFile(A);
Label1.Caption:=' ListBox1 терезесіне жауаптар енгізілген';
Button5.Enabled:=False;
Button6.SetFocus;
end;
procedure TForm1.Button6Click(Sender: TObject);
begin
Form2.ComboBox1.Items.LoadFromFile(A);
Label1.Caption:= 'ComboBox1 терезесіне жауаптар енгізілген';
Button6.Enabled:=False;
Button7.SetFocus;
end;
procedure TForm1.Button7Click(Sender: TObject);
begin
Form3.Memo1.Lines.LoadFromFile(A);
Label1.Caption:=' Memo1 терезесіне жауаптар енгізілген';
Button7.Enabled:=False;
Button8.SetFocus;
end;
procedure TForm1.Button8Click(Sender: TObject);
var
i,j:integer;
S:string[14];
begin
With Form3.StringGrid1 do begin
ColCount:=N; FixedCols:=0;
RowCount:=M+1; FixedRows:=1;
For J:=0 to N-1 do
Case J of
0,1,3,4:Cells[J,0]:=' F';
2,5:Cells[J,0]:=' E';
end;
FOR I:=1 TO M DO
FOR J:=1 TO N DO BEGIN
CASE J OF
1, 2, 4, 5: STR(B^((I-1)*N+J):10:4, S);
3,6: STR(B^[(I-1)*N+J]:12, S);
end;
Cells[J-1,I]:= ' ' + S;
END;
end;
FREEMEM ( B, M * N * SIZEOF (REAL));
Label1.Caption:=' StringGrid1 терезесіне жауаптар енгізілген';
Button8.Enabled:=False;
BitBtn1.SetFocus;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
AssignFile(Output,'lr.txt');
Rewrite(Output);
end;
end.