Главная страница
    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.47 MB
Время: 0.05 c
8-1109168540
Fenik
2005-02-23 17:22
2005.06.14
Аппроксимация экспериментальных данных.


14-1117005456
Igorek
2005-05-25 11:17
2005.06.14
Как установить на клавиатуру индикатор раскладки?


3-1115333334
rosl
2005-05-06 02:48
2005.06.14
tree


14-1117056082
Fredy314
2005-05-26 01:21
2005.06.14
Типа пришёл я хвалится(а). И Очень мне хочется поздравлений


14-1116964346
Bolt
2005-05-24 23:52
2005.06.14
Задача на Pascal





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский