Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.06.14;
Скачать: [xml.tar.bz2];

Вниз

"is not a valid integer value"   Найти похожие ветки 

 
Erick ©   (2005-05-24 23:11) [0]

procedure TForm1.Button2Click(Sender: TObject);
var
i,j,number,number1,number2:integer;
d,max,min1,min2,min:extended;
kernel_mas:array [1..100] of integer;
x,y,rd,color:integer;
begin
color:=1;

for j:=1 to vcount do begin
x:=StrToInt(StringGrid1.Cells[1,j]);
y:=StrToInt(StringGrid1.Cells[2,j]);
Image1.Canvas.Ellipse(x-5,y-5,x+5,y+5);
Image1.Canvas.TextOut(x+5,y+5,IntToStr(j));
end;
Randomize;
j:=random(vcount);
x:=StrToInt(StringGrid1.Cells[1,j]);
y:=StrToInt(StringGrid1.Cells[2,j]);
Image1.Canvas.Brush.Color:=color;
Image1.Canvas.Ellipse(x-5,y-5,x+5,y+5);

max:=0;
//Memo1.Lines.Add("N1=X(1)");
//вычисляем расстояния от первого ядра до остальных объектов. N2-оъект с мах
//расстоянием до первого ядра.
for i:=2 to vcount do
begin
d:=evclid(j,i);
if d>max then begin
max:=d;
number:=i;
end;
end;
//Блок 3
x:=StrToInt(StringGrid1.Cells[1,j+1]);
y:=StrToInt(StringGrid1.Cells[2,i+1]);
Image1.Canvas.Brush.Color:=2;
Image1.Canvas.Ellipse(x-5,y-5,x+5,y+5);

end;

При нажатии на эту кнопку, вылазит диалоговое окно, на котором написано "is not a valid integer value". В чём ошибка? Без того, что помечено как "Блок 3" работает нормально.
Заранее благодарен.


 
raidan ©   (2005-05-24 23:23) [1]

у тебя числа в stringgrig все целые?


 
Yanis ©   (2005-05-24 23:25) [2]


> В чём ошибка?

В блоке 3.


 
Erick ©   (2005-05-24 23:39) [3]

у тебя числа в stringgrig все целые?
Целые.

В блоке 3.
Почему? Он аналогичен первому и второму.


 
raidan ©   (2005-05-24 23:43) [4]

>Erick ©   (24.05.05 23:39) [3]
Нет, он не аналогичен.
В третьем блоке сначала j+1, а потом i+1.


 
Yanis ©   (2005-05-24 23:44) [5]

Содержимое ячеек меняется.


 
Yanis ©   (2005-05-24 23:45) [6]

т.е. не меняется.


 
Virgo_Style ©   (2005-05-24 23:45) [7]

Erick ©   (24.05.05 23:11)

Сообщение должно выглядить так:
... "значение" is not a valid integer value...

Чему равно "значение"? Я подозреваю, что пустой строке.


 
Erick ©   (2005-05-25 00:17) [8]

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

procedure TForm1.Button2Click(Sender: TObject);
var
i,j,number,number1,number2:integer;
d,max,min1,min2,min:extended;
kernel_mas:array [1..100] of integer;
x,y,rd,color:integer;
begin
color:=1;
{x:=StrToInt(StringGrid1.Cells[1,1]);
y:=StrToInt(StringGrid1.Cells[2,1]); }
for j:=1 to vcount do begin
x:=StrToInt(StringGrid1.Cells[1,j]);
y:=StrToInt(StringGrid1.Cells[2,j]);
Image1.Canvas.Ellipse(x-5,y-5,x+5,y+5);
Image1.Canvas.TextOut(x+5,y+5,IntToStr(j));
end;
Randomize;
j:=random(vcount);
x:=StrToInt(StringGrid1.Cells[1,j]);
y:=StrToInt(StringGrid1.Cells[2,j]);
Image1.Canvas.Brush.Color:=color;
Image1.Canvas.Ellipse(x-5,y-5,x+5,y+5);

max:=0;
//Memo1.Lines.Add("N1=X(1)");
//вычисляем расстояния от первого ядра до остальных объектов. N2-оъект с мах
//расстоянием до первого ядра.
for i:=2 to vcount do
begin
d:=evclid(j,i);
if d>max then begin
max:=d;
number:=i;
end;
end;
x:=StrToInt(StringGrid1.Cells[1,i]);
y:=StrToInt(StringGrid1.Cells[2,i]);
Image1.Canvas.Brush.Color:=clRed;
Image1.Canvas.Ellipse(x-5,y-5,x+5,y+5);

end;


Функция evclid:

function evclid(i:integer;j:integer):extended;
var
k,rez,_sqr:integer;
begin
rez:=0;
for k:=1 to kcount do
begin
_sqr:=sqr(StrToInt(Form1.StringGrid1.Cells[k,i])-StrToInt(Form1.StringGrid1.Cells[k,j]));
rez:=rez+_sqr;
end;


 
evvcom ©   (2005-05-25 09:04) [9]

Кроме сообщения об ошибке Delphi указывает еще и строку, в которой эта ошибка произошла. Еще в IDE есть такие понятия как точки останова и пошаговая отладка, а еще Watches (Ctrl+F5). Попробуй с ними подружиться.


 
alex_***   (2005-05-25 09:58) [10]

еще неплохо бы научиться форматировать текст, для лучшего переваривания



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2005.06.14;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.037 c
4-1114382085
Кайфолом
2005-04-25 02:34
2005.06.14
Как обработать системные сообщения Формы ?


1-1117050450
Борыч
2005-05-25 23:47
2005.06.14
Создание MDI-Child окна в режиме Visible=false (реанимация)


1-1116994888
Denizzz
2005-05-25 08:21
2005.06.14
Строка из текстового файла


4-1113737504
volser
2005-04-17 15:31
2005.06.14
Генерация Hardware ID


10-1093435544
Dima
2004-08-25 16:05
2005.06.14
Количество подключений через SocketServer





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский