Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
Delphi Телефонный справочник: реализовать поиск по фамилии http://www.cyberforum.ru/delphi-beginners/thread583251.html
Нужно что бы програма искала по фамилии, после нажатия кнопки *найти* и сортировала по длине фамилии. Также, чтобы можна было просматривать записи при помощи кнопок *предыдущий* и *следующий*....
Delphi Перевести код С++ на делфи #include <fstream> using namespace std; ifstream in; ofstream out; int a, b,c,d; int main() { in.open("1.txt"); http://www.cyberforum.ru/delphi-beginners/thread583196.html
Эмуляция нажатия клавиши в неактивном окне Delphi
Доброго времени суток.Я столкнулся с такой проблемой. Мне нужно написать программу для нажатия Hot Key в игре. Я нашел класс окна и handle окна, и Pid, но при отправке нажатия клавиши окно никак не...
Расчет вырожденной гипергеометрической функции по первым трём слагаемым ряда по степеням z Delphi
помогите пожалуйста написать програму задание: Напишите консольное приложение для вычисления вырожденной гипергеометрической функции с помощью конечной суммы ряда по степеням z первых трёх членов...
Delphi Какой процедурой возможно удалить комментарии из проекта Delphi? http://www.cyberforum.ru/delphi-beginners/thread583155.html
Я хотел бы перед окончательной компиляцией удалить все комментарии из проекта с целью уменьшения приложения и на всякий случай. Как это сделать быстро? Надо написать, приложение которое будет удалять...
Delphi Количество букв в рядке Нужно найти количество букв в рядке. procedure TForm1.Button4Click(Sender: TObject); begin k:=1; s:=trim(s); for i:=0 to Memo1.Lines.Count do begin s:=memo1.Lines.Strings; for j:=0 to... подробнее
Профорг
0 / 0 / 0
Регистрация: 04.10.2011
Сообщений: 13
0

Вывод результата программы в текстовый файл и в двоичный файл с именем, задаваемым пользователем

23.05.2012, 00:17. Просмотров 1390. Ответов 4
Метки (Все метки)

Подскажите пожалуйста, что нужно исправить. Нужно организовать вывод результата программы в текстовый файл и в двоичный файл с именем, задаваемым пользователем. Реализовать программу-просмоторщик двоичного файла.

Delphi
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
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
 unit Unit1;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, Grids;
 
type
  TForm1 = class(TForm)
    LabeledEdit1: TLabeledEdit;
    LabeledEdit2: TLabeledEdit;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Button1: TButton;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    StringGrid1: TStringGrid;
    CheckBox1: TCheckBox;
    SaveDialog1: TSaveDialog;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure CheckBox1Click(Sender: TObject);
    procedure LabeledEdit1Change(Sender: TObject);
    procedure LabeledEdit2Change(Sender: TObject);
    procedure Button2Click(Sender: TObject);
 
 
  private
    { Private declarations }
  public
    { Public declarations }
  end;
  type
  TA = Array of array of integer;
var
  Form1: TForm1;
 
implementation
 
{$R *.dfm}
function ShowArray (var a:TA; out K,L: Integer):integer;
var
  i, j: Integer;
 
  Begin
 
//Нахождение нулей в верхней части массива
  K:=0;
  For i:= 0 to Length(a)-1 do
    For j:= 0 to (Length(a[0]) div 2)-1 do
        If a[i,j]=0 then
        inc(K);
 
 
  //Нахождение нулей в нижней части массива
  L:=0;
  For i:=0 to Length(a)-1  do
    For j:= (Length(a[0]) div 2) to Length(a[0])-1 do
        If a[i,j]= 0 then
        inc(L);
  End;
 
procedure TForm1.Button1Click(Sender: TObject);
   var
      a: TA;
      K,L:integer;
      i,j:integer;
      SGError:boolean;
begin
 
 begin
 
 Randomize;
 
 
 if (LabeledEdit1.Text = '') or (LabeledEdit2.Text = '') then
   Application.MessageBox('Введите число элементов массива(ов)!', 'Ошибка!',MB_OK);
 
 try
 
  Label4.Caption:='';
 
  SetLength(a, StrToInt(Form1.LabeledEdit2.Text) , StrToInt(Form1.LabeledEdit1.Text));
 
    //Проверяем колличество строк N  на четность и на отличность от нуля
  If (Length(a[0]) mod 2 <> 0) or (StrToInt(Form1.LabeledEdit1.Text)=0) then
  begin
   Label3.Caption:='Введите четное колличество строк N';
 
   for i :=0  to Stringgrid1.ColCount do
     for j :=0 to Stringgrid1.RowCount do
     StringGrid1.Cells[i,j]:='';
   Abort;
  end;
 except
  Label5.Caption:='Неверные данные';
  exit
 
 end;
 
 if CheckBox1.Checked then
  begin
  //Автоматическая инициализация массива
  for i:= 0 to Length(a)-1 do
    For j:= 0 to Length(a[0])-1 do
        begin
            a[i,j]:=random(10);
            Stringgrid1.Cells[i,j]:=IntToStr(a[i,j]);
        end;
 end
 else
 // Ручная инициализация массива
 begin
      SGError:=false;
      for i:= 0 to Length(a)-1 do
    For j:= 0 to Length(a[0])-1 do
  try
 
      a[i,j]:=StrToInt(Stringgrid1.Cells[i,j]);
  except
 
  Stringgrid1.Cells[i,j]:='Неверно!!!!';
  SGError:=true;
  end;
  if SGError then
    exit
 end;
 
 //Вызов процедуры подсчета нулевых элементов
 ShowArray(a,K,L);
 
 //Вывод
  Label1.Caption:=IntToStr(K);
  Label2.Caption:=IntToStr(L);
 
 
 If K>L then
  Label3.Caption:='Больше нулей в верхней части матрицы, их - '+ IntToStr(K);
 If K<L then
  Label3.Caption:='Больше нулей в нижней части матрицы, их - '+ IntToStr(L);
 If K=L then
  Label3.Caption:='Количество нулей в обеих частях матрицы одинаковое и равно - '+ IntToStr(K);
 
 
 end;
 Form1.Button2.Enabled:=True;
end;
 
procedure TForm1.CheckBox1Click(Sender: TObject);
begin
Label1.Caption:= '';
Label2.Caption:= '';
Label3.Caption:= '';
if CheckBox1.Checked then
StringGrid1.Options:=StringGrid1.Options-[goEditing]
else
StringGrid1.Options:=StringGrid1.Options+[goEditing]
end;
 
 
 
//процедура задания свойств StringGrid
procedure TForm1.LabeledEdit1Change(Sender: TObject);
begin
 
If
LabeledEdit1.Text <> '' then
     try
     StringGrid1.RowCount:=StrToInt(LabeledEdit1.Text);
     except
     Label4.Caption:='Неверное количество строк';
 
end;
 end;
 
 //******************************************
procedure TForm1.LabeledEdit2Change(Sender: TObject);
begin
  If LabeledEdit2.Text <> '' then
   try
       StringGrid1.ColCount:=StrToInt(LabeledEdit2.Text);
   except
         Label4.Caption:='Неверное количество столбцов';
 
end;
end;
 
 
     procedure Saver;
     var f:textfile;
     i,j:integer;
     a:TA;
     K,L:integer;
     begin
       if form1.SaveDialog1.Execute then
       begin
       assignfile(f,Form1.SaveDialog1.FileName);
       Rewrite(f); //создание файла
        for i:= 0 to Length(a)-1 do
        For j:= 0 to Length(a[0])-1 do
        a[i,j]:=random(10);
        writeln(f,a[i,j]);       // вот здесь он мне выдает ошибку. Но если не прописывать эту строчку, то выводится какой то непонятный результат, совершенно не связанный с самой программой
    Writeln(f,ShowArray(a,K,L));
       closefile(f);
     end;
     end;
 
procedure TForm1.Button2Click(Sender: TObject);
begin
Saver
end;
 
end.


Вернуться к обсуждению:
Вывод результата программы в текстовый файл и в двоичный файл с именем, задаваемым пользователем
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.05.2012, 00:17
Готовые ответы и решения:

Вывести в текстовый файл введённое пользователем предложение
Создать программу, которая позволяет вывести в текстовый файл введённое пользователем предложение и...

Дан текстовый файл. Используя стек, сформировать новый текстовый файл, каждая строка которого содержит символы
Дан текстовый файл. Используя стек, сформировать новый текстовый файл, каждая строка которого...

Нужно сделать вывод результата программы в текстовый файл
Вообщем есть программа уже составленная, надо сделать вывод результата программы в файл, т.е. я...

Текстовый файл перевести в двоичный, а потом полученный двоичный файл перевести обратно в текстовый
Всем привет. Есть такая задачка: &quot;текстовый файл перевести в двоичный, а потом полученный двоичный...

Вывод результата в текстовый файл
Всем добрый день. Подскажите пожалуйста. Вот у меня есть программка и мне нужно, чтобы после того...

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