Форум программистов, компьютерный форум, киберфорум
Наши страницы

Delphi для начинающих

Войти
Регистрация
Восстановить пароль
 
qb1k
0 / 0 / 0
Регистрация: 09.02.2016
Сообщений: 12
#1

Ошибка в коде function proverka - Delphi

01.06.2017, 21:02. Просмотров 230. Ответов 14
Метки нет (Все метки)

Добрый вечер коллеги !! Подскажите из за чего возникает эта ошибка в 66 строке кода function proverka может я что то не усмотрел. Заранее спасибо всем
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
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
unit Unit1;
 
interface 
 
uses
  Windows,Messages,SysUtils,Variants,Classes,Graphics,Controls,Forms,
  Dialogs,Menus,ComCtrls,StdCtrls,Math,Grids,Mask;
 
  
type
mass=array[0..100] of real;
 
 TForm1=class(TForm)
  MainMenu1:TMainMenu;
  N1:TMenuItem;
  N2:TMenuItem;
  N3:TMenuItem;
  Label1:TLabel;
  Label2:TLabel;
  N4:TMenuItem;
  N5:TMenuItem;
  N6:TMenuItem;
  N7:TMenuItem;
  N8:TMenuItem;
  N9:TMenuItem;
  N10:TMenuItem;
  N11:TMenuItem;
  N12:TMenuItem;
  N13:TMenuItem;
  PopupMenu1: TPopupMenu;
  Label3:TLabel;
  RichEdit1:TRichEdit;
  StringGrid1:TStringGrid;
  MaskEdit1:TMaskEdit;
  procedure N1Click(Sender:TObject);
  procedure N4Click(Sender:TObject);
  procedure N5Click(Sender:TObject);
  procedure N6Click(Sender:TObject);
  procedure N7Click(Sender:TObject);
  procedure N8Click(Sender:TObject);
  procedure N9Click(Sender:TObject);
  procedure N10Click(Sender:TObject);
  procedure N11Click(Sender:TObject);
  procedure N12Click(Sender:TObject);
  procedure N13Click(Sender:TObject);
  procedure N3Click(Sender:TObject);
  
 private
 {Private declarations}
 public
 {Public declarations} 
 end;
var
 Form1:TForm1;
 a,i,cnt:integer;
 x:real;
 max,min,sum,p:real;
 y:mass;
 const
 xmin=0;
 xmax=5;
  delta=0.5;
implemantation
 
 {$R *.dfm}
function proverka(a:mass):boolean; //функция проверяет посчитан ли массив
var k:integer;
begin
 k:=0;
 for i:=1 to cnt do
   if a[i]=0 then inc(k);
 if k=cnt then result:=false
 else result:=true;
end;
  end;
 procedure TForm1.N1Click(Sender: TObject);//обработчик нажатия кнопки расчет
 begin
   RichEdit1.Clear; //чистка поля для вывода
   x:=xmin;
   i:=0;
   a:=StrToInt(MaskEdit1.Text);
   case a of
   0: begin
        repeat
          begin
            y[i]:=exp(x)-x;
            i:=i+1;
            x:=x+delta;
          end;
        until x>=xmax+delta;
       end;
      -4:begin
       repeat
         begin
           y[i]:=a+ln(x)*ln(x);
           i:=i+1;
           x:=x+delta;
         end;
        until x=>xmax+delta;
       end;
      1:begin
        repeat
       begin
        y[i]:=x/(a-x);
        i:=i+1;
        x:=x+delta;
        end;
      until x>=xmax+delta;
     end;
   end;
  x:=xmin;
  i:=0;
  cnt:=-1;
  repeat //вывод результатов 
  begin
    cnt:=cnt+1;
    RichEdit1.Lines.Add('x='FloatToStr(x)+';   y='+FloatToStr(y[i]));
    i:=i+1;
x:=x+delta:
end;
  until x>=xmax+delta;
end;
 
procedure TForm1.N4Click(Sender: TObject); //максимальный элемент массива 
begin
   if proverka(y) then begin
   max:=y[0]; 
for i:=0 to cnt do 
 if y[i]>max the max:=y[i];
Application.MessageBox(PChar('Максимальный элемент массива = 'FloatToStr(max)),",MB_OK);
end
else Message.Dlg('Массив y(i) еще не посчитан',mtConfirmation,[mbYes],0);
end;
 
procedure TForm1.N5Click(Sender: TObject); //минимальный элемент массива
begin 
   if proverka(y) then begin
   min:=y[0];
   for i:=0 to cnt do 
    if y[i]<min then min:=y[i];
   Application.MessageBox(PChar('Минимальный элемент массива = '+FloatToStr(min)),",MB_OK);
end
else MessageDlg('Массив y(i) еще не посчитан',mtConfirmation,[mbYes],0);
end;
 
 
 
begin
if proverka(y)then begin
i:=0;
sum:=0;
while (i<=cnt)do
begin
 sum:=sum+y[i];
 inc(i);
end;
Application.MessageBox(PChar('Сумма всех элементов массива ='+FloatToStr(sum)),",MB_OK);
end
else MessageDlg('Массив y(i) еще не посчитан',mtConfirmation,[mbYes],0);
end; 
procedure  TForm1.N7Click(Sender: TObject); //произведение всех элементов массива
begin
 if proverka(y) then begin
 i:=0;
 p:=1;
 repeat
      p:=p*y[i];
      inc(i);
 until(i=cnt+1);
 Application.MessageBox(PChar('Произведение всех элементов массива ='+FloatToStr(p)),",MB_OK);
 end
else MessageDlg('Массив y(i) еще не посчитан',mtConfirmation,[mbYes],0);
end;
 
procedure TForm1.N8Click(Sender: TObject); //сумма всех отрицательных элементов
begin 
  if proverka(y) then begin 
  sum:=0;
  for i:=0 to cnt do
    if y[i]<0 then sum:=sum+y[i];
  Application.MessageBox(PChar('Сумма всех отрицательных элементов массива ='FloatToStr(sum)),",MB_OK);
  end
  else MessageDlg('Массив y(i) еще не посчитан',mtConfirmation,[mbYes],0);
end;
 
procedure TForm.N9Click(Sender: TObject);//произведение всех отрицательных элементов массива
begin
   if proverka(y) then begin
   p:=1;
   sum:=0;
   for i:=0 to cnt do
if y[i]<0 then
  begin
    p:=p*y[i];
    sum:=sum+1;
    end;
if sum>0 then
  Application.MessageBox(PChar('Произведение всех отрицательных элементов массива ='+FloatToStr(p)),",MB_OK);
else
  Application.MessageBox(PChar('Отрицательные элементы массива отсутсвуют'),",MB_OK);
end
else MessageDlg('Массив y(i) еще не посчитан',mtConfirmation,[mbYes], 0);
end;
 
procedure TForm1.N10Click(Sender: TObject); //сумма положительных элементв массива  
begin
   if proverka(y) then begin
   sum:=0;
   for i:=0 to cnt do
if y[i]>0 then sum:=sum+y[i];
  Application.MessageBox(PChar('Сумма всех положительных элементов массива ='+FloatToStr(p)),",MB_OK);
end
else MessageDlg('Массив y(i) еще не посчитан',mtConfirmation,[mbYes], 0);
end;        
 
 
 procedure TForm1.N11Click(Sender: TObject); //произведение всех положительных элементв массива  
begin
   if proverka(y) then begin
   p:=1;
   for i:=0 to cnt do
if y[i]>0 then p:=p*y[i];
  Application.MessageBox(PChar('Произведение всех положительных элементов массива ='+FloatToStr(p)),",MB_OK);
end
else MessageDlg('Массив y(i) еще не посчитан',mtConfirmation,[mbYes], 0);
end;
        
  
  procedure TForm1.N12Click(Sender: TObject); //вывод положительных элементов массива  
begin
   if proverka(y) then begin
   StringGrid1.Cols[0].Clear
   StringGrid1.RowCount:=cnt+1;
for i:=0 to cnt do
if y[i]>0 then StringGrid1.Cols[0].Add(FloatToStr(y[i]));
end
else MessageDlg('Массив y(i) еще не посчитан',mtConfirmation,[mbYes], 0);
end;
 
 
procedure TForm1.N13Click(Sender: TObject); //вывод отрицательных элементов массива  
begin
   if proverka(y) then begin
   StringGrid1.Cols[0].Clear
   StringGrid1.RowCount:=cnt+1;
for i:=0 to cnt do
if y[i]<0 then StringGrid1.Cols[0].Add(FloatToStr(y[i]));
end
else MessageDlg('Массив y(i) еще не посчитан',mtConfirmation,[mbYes], 0);
end;
 
procedure TForm1.N3Click(Sender: TObject);   
begin
 if MessageDlg('Вы действительно хотите закрыть программу?, mtConfirmation, [mbYes, mbNo],0) = mrYes then
 //завершение программы разрешено
 close;
 
end;
end.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.06.2017, 21:02
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ошибка в коде function proverka (Delphi):

ошибка A call to an OS function failed - Delphi
Вылетает ошибка при отключении службы, началось с того, что отредактировал службу под себя и вынес в отдельный файлик... Вопрос, где я...

Ошибка: Return value of function 'nez' might be undefined - Delphi
помогите исправить. procedure TForm1.btn1Click(Sender: TObject); function nez(n:real) :real ; begin if n&lt;=50 then...

ошибка в коде - Delphi
ЭТО НЕ ВЕСЬ КОД. Как исправить ошибку? unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes,...

Ошибка в коде - Delphi
По заданному нелинейному уравнению F(x)=0, где F(x) – некоторое нелинейное аналитическое выражение, определенное на интервале , ...

Ошибка в коде - Delphi
не могу понять, где ошибка все по примеру написано, но почитал что нужно прописать гдето, потому что не знает к чему обрашатся, а я забыл...

Ошибка в коде - Delphi
var A: Real; N,K: Integer; X,Summa: Real; begin Write('Vvedite znachenie X='); ReadLn(X); Write('Vvedite...

14
FIL
Модератор
3375 / 2513 / 478
Регистрация: 19.09.2012
Сообщений: 7,845
02.06.2017, 00:03 #2
Вообще у ошибки есть текст, который говорит о причине ее возникновения.
На сколько я вижу там лишний end присутствует.
1
Matan!
Delphi/Java/DB Dev + Math
292 / 158 / 28
Регистрация: 31.05.2013
Сообщений: 1,367
Записей в блоге: 3
Завершенные тесты: 1
02.06.2017, 08:34 #3
a - это у Вас Integer или всё-таки mass? Решите для себя, пожалуйста.

Добавлено через 3 минуты
Кроме того, что эта строка
Цитата Сообщение от qb1k Посмотреть сообщение
Delphi
1
mass=array[0..100] of real;
делает перед определением класса TForm1? Переместите её в раздел глобальных переменных var (строки [53]-[62]).
1
TFullControl
284 / 282 / 125
Регистрация: 20.10.2016
Сообщений: 932
02.06.2017, 09:02 #4
Matan!, mass это не переменная, это он свой тип данных объявил и собственно эта конструкция с передачей (a: mas) в качестве аргумента должна работать. Как сказал FIL, там лишний end но эта ошибка должна быть на 75 строке, а не 66, как утверждает ТС. Тут либо он не внимательно рассмотрел ошибку, либо есть еще что-то, чего мы не заметили.
qb1k, убирайте end из 75 строки и если ошибка осталась то стоило бы ее озвучить.
1
Matan!
Delphi/Java/DB Dev + Math
292 / 158 / 28
Регистрация: 31.05.2013
Сообщений: 1,367
Записей в блоге: 3
Завершенные тесты: 1
02.06.2017, 09:17 #5
TFullControl, тогда стоит поместить этот тип в отдельный type-блок..
Кроме того, ошибка-таки есть:
Цитата Сообщение от qb1k Посмотреть сообщение
a,i,cnt:integer;
Цитата Сообщение от qb1k Посмотреть сообщение
function proverka(a:mass):boolean;
Добавлено через 1 минуту
Цитата Сообщение от TFullControl Посмотреть сообщение
эта ошибка должна быть на 75 строке, а не 66,
Исправит ту, что я сказал, появится другая на 75 с end..
1
TFullControl
284 / 282 / 125
Регистрация: 20.10.2016
Сообщений: 932
02.06.2017, 09:21 #6
Цитата Сообщение от Matan! Посмотреть сообщение
Кроме того, ошибка-таки есть:
Вы тут не правы, a:mass из
Delphi
1
function proverka(a:mass):boolean
не имеет никакого отношения к интовой глобальной переменной, a:mass - это аргумент принимаемый функцией, то есть это внутренняя локальная переменная, которая должна быть проинициализирована непосредственно при вызове функции.
1
DenNik
Непрофессионал
1325 / 1025 / 158
Регистрация: 26.07.2011
Сообщений: 6,334
02.06.2017, 10:13 #7
Цитата Сообщение от Matan! Посмотреть сообщение
тогда стоит поместить этот тип в отдельный type-блок..
абсолютно необязательно. перед объявлением типа формы можно объявлять сколько угодно иных типов. форма - не бог!
1
Matan!
Delphi/Java/DB Dev + Math
292 / 158 / 28
Регистрация: 31.05.2013
Сообщений: 1,367
Записей в блоге: 3
Завершенные тесты: 1
02.06.2017, 11:19 #8
TFullControl, DenNik, убедили Прошу прощения за нубные посты
1
Puporev
Модератор
52381 / 40228 / 13565
Регистрация: 18.05.2008
Сообщений: 92,967
02.06.2017, 12:02 #9
Строка 63.
Цитата Сообщение от qb1k Посмотреть сообщение
implemantation
Что это за слово и как оно образовалось? Может если исправить на
Delphi
1
implementation
то и ошибка исчезнет?
2
DenNik
Непрофессионал
1325 / 1025 / 158
Регистрация: 26.07.2011
Сообщений: 6,334
02.06.2017, 13:35 #10
в 254 строке кавычки не хватает
1
Puporev
Модератор
52381 / 40228 / 13565
Регистрация: 18.05.2008
Сообщений: 92,967
02.06.2017, 13:51 #11
Выложил бы архив проекта и не гадали бы. Хотя может давно нашел ошибку и слинял по тихому.
1
qb1k
0 / 0 / 0
Регистрация: 09.02.2016
Сообщений: 12
02.06.2017, 16:47  [ТС] #12
Вот архив ошибка теперь в 139 строке кода ((
0
Вложения
Тип файла: rar progect1.rar (4.8 Кб, 3 просмотров)
qb1k
0 / 0 / 0
Регистрация: 09.02.2016
Сообщений: 12
02.06.2017, 17:32  [ТС] #13
блин вообще не разберу не чего
0
TFullControl
284 / 282 / 125
Регистрация: 20.10.2016
Сообщений: 932
02.06.2017, 18:12 #14
Цитата Сообщение от qb1k Посмотреть сообщение
блин вообще не разберу не чего
В проекте много таких строк:
Delphi
1
Application.MessageBox(PChar('Сумма всех элементов массива ='+FloatToStr(sum)),",MB_OK);
Вот в них вместо двух одинарных кавычек стоят по одной двойной, так работать не будет, меняйте на две одинарных.
0
Puporev
Модератор
52381 / 40228 / 13565
Регистрация: 18.05.2008
Сообщений: 92,967
02.06.2017, 18:15 #15
Заменил вездеn кавычки на 2 апострофа '', убрал не описанную
Delphi
1
procedure N6Click(Sender:TObject);
Запускается.
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
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
unit Unit1;
 
interface
 
uses
  Windows,Messages,SysUtils,Variants,Classes,Graphics,Controls,Forms,
  Dialogs,Menus,ComCtrls,StdCtrls,Math,Grids,Mask;
 
 
type
mass=array[0..100] of real;
 TForm1=class(TForm)
  MainMenu1:TMainMenu;
  N1:TMenuItem;
  N2:TMenuItem;
  N3:TMenuItem;
  Label1:TLabel;
  Label2:TLabel;
  N4:TMenuItem;
  N5:TMenuItem;
  N6:TMenuItem;
  N7:TMenuItem;
  N8:TMenuItem;
  N9:TMenuItem;
  N10:TMenuItem;
  N11:TMenuItem;
  N12:TMenuItem;
  N13:TMenuItem;
  PopupMenu1: TPopupMenu;
  Label3:TLabel;
  RichEdit1:TRichEdit;
  StringGrid1:TStringGrid;
  MaskEdit1:TMaskEdit;
  procedure N1Click(Sender:TObject);
  procedure N4Click(Sender:TObject);
  procedure N5Click(Sender:TObject);
 // procedure N6Click(Sender:TObject);
  procedure N7Click(Sender:TObject);
  procedure N8Click(Sender:TObject);
  procedure N9Click(Sender:TObject);
  procedure N10Click(Sender:TObject);
  procedure N11Click(Sender:TObject);
  procedure N12Click(Sender:TObject);
  procedure N13Click(Sender:TObject);
  procedure N3Click(Sender:TObject);
  
 private
 {Private declarations} 
 public
 {Public declarations} 
 end;
var
 Form1:TForm1;
 a,i,cnt:integer;
 x:real;
 max,min,sum,p:real;
 y:mass;
 const
 xmin=0;
 xmax=5;
  delta=0.5;
implementation
 
 {$R *.dfm}
function proverka(a:mass):boolean; //функция проверяет посчитан ли массив
var k:integer;
begin
 k:=0;
 for i:=1 to cnt do
   if a[i]=0 then inc(k);
 if k=cnt then result:=false
 else result:=true;
end;
 procedure TForm1.N1Click(Sender: TObject);//обработчик нажатия кнопки расчет
 begin
   RichEdit1.Clear; //чистка поля для вывода
   x:=xmin;
   i:=0;
   a:=StrToInt(MaskEdit1.Text);
   case a of
   0: begin
        repeat
          begin
            y[i]:=exp(x)-x;
            i:=i+1;
            x:=x+delta;
          end;
        until x>=xmax+delta;
       end;
      -4:begin
       repeat
         begin
           y[i]:=a+ln(x)*ln(x);
           i:=i+1;
           x:=x+delta;
         end;
        until x>=xmax+delta;
       end;
      1:begin
        repeat
       begin
        y[i]:=x/(a-x);
        i:=i+1;
        x:=x+delta;
        end;
      until x>=xmax+delta;
     end;
   end;
  x:=xmin;
  i:=0;
  cnt:=-1;
  repeat //вывод результатов 
  begin
    cnt:=cnt+1;
    RichEdit1.Lines.Add('x='+FloatToStr(x)+';   y='+FloatToStr(y[i]));
    i:=i+1;
x:=x+delta;
end;
  until x>=xmax+delta;
end;
 
procedure TForm1.N4Click(Sender: TObject); //максимальный элемент массива 
begin
if proverka(y) then
 begin
  max:=y[0];
  for i:=0 to cnt do
  if y[i]>max then max:=y[i];
  Application.MessageBox(PChar('Максимальный элемент массива ='+FloatToStr(max)),'',MB_OK);
 end
else MessageDlg('Массив y(i) еще не посчитан',mtConfirmation,[mbYes],0);
end;
 
procedure TForm1.N5Click(Sender: TObject); //минимальный элемент массива
begin 
if proverka(y) then
 begin
  min:=y[0];
  for i:=0 to cnt do
  if y[i]<min then min:=y[i];
  Application.MessageBox(PChar('Минимальный элемент массива = '+FloatToStr(min)),'',MB_OK);
 end
else MessageDlg('Массив y(i) еще не посчитан',mtConfirmation,[mbYes],0);
end;
procedure  TForm1.N7Click(Sender: TObject); //произведение всех элементов массива
begin
 if proverka(y) then begin
 i:=0;
 p:=1;
 repeat
      p:=p*y[i];
      inc(i);
 until(i=cnt+1);
 Application.MessageBox(PChar('Произведение всех элементов массива ='+FloatToStr(p)),'',MB_OK);
 end
else MessageDlg('Массив y(i) еще не посчитан',mtConfirmation,[mbYes],0);
end;
 
procedure TForm1.N8Click(Sender: TObject); //сумма всех отрицательных элементов
begin 
if proverka(y) then
 begin
  sum:=0;
  for i:=0 to cnt do
    if y[i]<0 then sum:=sum+y[i];
  Application.MessageBox(PChar('Сумма всех отрицательных элементов массива ='+FloatToStr(sum)),'',MB_OK);
  end
else MessageDlg('Массив y(i) еще не посчитан',mtConfirmation,[mbYes],0);
end;
 
procedure TForm1.N9Click(Sender: TObject);//произведение всех отрицательных элементов массива
begin
   if proverka(y) then begin
   p:=1;
   sum:=0;
   for i:=0 to cnt do
if y[i]<0 then
  begin
    p:=p*y[i];
    sum:=sum+1;
    end;
if sum>0 then
  Application.MessageBox(PChar('Произведение всех отрицательных элементов массива ='+FloatToStr(p)),'',MB_OK)
else
  Application.MessageBox(PChar('Отрицательные элементы массива отсутсвуют'),'',MB_OK);
end
else MessageDlg('Массив y(i) еще не посчитан',mtConfirmation,[mbYes], 0);
end;
 
procedure TForm1.N10Click(Sender: TObject); //сумма положительных элементв массива  
begin
   if proverka(y) then begin
   sum:=0;
   for i:=0 to cnt do
if y[i]>0 then sum:=sum+y[i];
  Application.MessageBox(PChar('Сумма всех положительных элементов массива ='+FloatToStr(p)),'',MB_OK);
end
else MessageDlg('Массив y(i) еще не посчитан',mtConfirmation,[mbYes], 0);
end;        
 
 
 procedure TForm1.N11Click(Sender: TObject); //произведение всех положительных элементв массива  
begin
   if proverka(y) then begin
   p:=1;
   for i:=0 to cnt do
if y[i]>0 then p:=p*y[i];
  Application.MessageBox(PChar('Произведение всех положительных элементов массива ='+FloatToStr(p)),'',MB_OK);
end
else MessageDlg('Массив y(i) еще не посчитан',mtConfirmation,[mbYes], 0);
end;
        
  
  procedure TForm1.N12Click(Sender: TObject); //вывод положительных элементов массива  
begin
   if proverka(y) then begin
   StringGrid1.Cols[0].Clear;
   StringGrid1.RowCount:=cnt+1;
for i:=0 to cnt do
if y[i]>0 then StringGrid1.Cols[0].Add(FloatToStr(y[i]));
end
else MessageDlg('Массив y(i) еще не посчитан',mtConfirmation,[mbYes], 0);
end;
 
 
procedure TForm1.N13Click(Sender: TObject); //вывод отрицательных элементов массива  
begin
   if proverka(y) then begin
   StringGrid1.Cols[0].Clear;
   StringGrid1.RowCount:=cnt+1;
for i:=0 to cnt do
if y[i]<0 then StringGrid1.Cols[0].Add(FloatToStr(y[i]));
end
else MessageDlg('Массив y(i) еще не посчитан',mtConfirmation,[mbYes], 0);
end;
 
procedure TForm1.N3Click(Sender: TObject);   
begin
 if MessageDlg('Вы действительно хотите закрыть программу?', mtConfirmation, [mbYes, mbNo],0) = mrYes then
 //завершение программы разрешено
 close;
 
end;
end.
0
02.06.2017, 18:15
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.06.2017, 18:15
Привет! Вот еще темы с ответами:

Ошибка в коде - Delphi
Здравствуйте! в программе есть ошибка, к которой придирается Delphi. Помогите пожалуйста. unit Test_po_literature_7_class; ...

Ошибка в коде - Delphi
procedure TForm1.Button1Click(Sender: TObject); var Decision:TDecision; begin Memo1.Lines.Text:=Memo1.Lines.Text+'if...

Ошибка в коде - Delphi
где ошибка? :( image2.Hide; if (form6.Edit1.text=AnsiLowerCase(form6.edit1.text)='написать' then form1.image2.show;

Ошибка в коде - Delphi
Доброго времени суток! Нужно запрограммировать метод квадратного корня для системы 4 на 4. В моём коде что-то не так с циклом, и он...


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

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

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