Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.11.2014, 19:13   #31
newerow1989
Я самый любопытный
Участник клуба
 
Аватар для newerow1989
 
Регистрация: 24.07.2012
Сообщений: 1,987
По умолчанию

Цитата:
StringGrid1.RowCount-2
Пояснение:
а) нумерация с нуля;
б) StringGrid1.Cells[0,StringGrid1.RowCount] не существует
в) StringGrid1.Cells[0,StringGrid1.RowCount-1] существует
г) поэтому переменная i в пределах [0..StringGrid1.RowCount-1], но!
д) в формуле StringGrid1.Cells[1,i+1] i+1, следовательно, StringGrid1.RowCount уменьшить еще на 1 => получается StringGrid1.RowCount-2

Цитата:
Почему то, я выделяю одну площадь, и получаются каждый раз разные значения, странно???
Возможная причина заключается в том, что координаты точек разные! Даже если в первый раз, к примеру, получилась координата (10, 54), а другой - (11, 54). Поэтому разница в 1 приводит разные результаты

Код:
procedure TForm1.Button1Click(Sender: TObject);
var i,n:integer;
    s:real;
    x,y:array of real;
begin
   s:=0;
   n:=StringGrid1.RowCount;
   SetLength(x,n);
   SetLength(y,n);
   For i:=1 to n-1 do
   begin
      x[i]:=StrToFloat(StringGrid1.Cells[0,i]);
      y[i]:=StrToFloat(StringGrid1.Cells[1,i]);
   end;
   For i:=1 to n-1 do
      s:=s+x[i]*y[i+1]-y[i]*x[i+1];
   s:=Abs(s/2);
end;
А это с массивом!
С запрограммированным приветом, Неверов Евгений!
Сайт: http://newerow1989.ru
[Паскаль] [Delphi]

Последний раз редактировалось Stilet; 19.11.2014 в 20:19.
newerow1989 вне форума Ответить с цитированием
Старый 19.11.2014, 19:23   #32
type_Oleg
Старожил
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Сообщений: 2,504
По умолчанию

Аника Янковская, введите в StringGrid1 вручную координаты какого нибудь прямоугольного треугольника и проверьте.
Треугольник - это же тоже многоугольник.
type_Oleg вне форума Ответить с цитированием
Старый 19.11.2014, 19:33   #33
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Киса, я в соседнем вопросе тебя умолял не использовать визуальные компоненты для хранения данных, даже пример с исходником, красивый и живой, подарил, а ты?!!...
ну посмотри какой геморрой развела, и чем дальше, тем хуже! и этот геморрой – ещё одно доказательство, что я, таки, прав.

Ну зачем, зачем (!!!) делать что-то заведомо неправильно, долго и муторно, когда можно сделать быстро, красиво и хорошо?

....я не понимаю....
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 20.11.2014, 15:23   #34
Аника Янковская
Пользователь
 
Регистрация: 23.10.2014
Сообщений: 58
По умолчанию

newerow1989, спасибо большое Вам за помощь.
Аника Янковская вне форума Ответить с цитированием
Старый 20.11.2014, 16:29   #35
newerow1989
Я самый любопытный
Участник клуба
 
Аватар для newerow1989
 
Регистрация: 24.07.2012
Сообщений: 1,987
По умолчанию

Пожалуйста!
С запрограммированным приветом, Неверов Евгений!
Сайт: http://newerow1989.ru
[Паскаль] [Delphi]
newerow1989 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
работа с элементами массива aenk Помощь студентам 0 05.12.2011 12:48
[C#] Работа с элементами массивов Doublefaced Помощь студентам 1 18.06.2009 15:34
Работа с матрицами (StringGrid, Delphi) Ратмир Помощь студентам 2 04.04.2009 13:41
Работа с однотипными элементами Bonifacyi Общие вопросы Delphi 3 26.01.2009 00:22
Delphi:Работа с Listbox и StringGrid Shaitan Помощь студентам 2 11.11.2008 21:04