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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.09.2011, 14:54   #1
Multiman
Пользователь
 
Регистрация: 13.10.2010
Сообщений: 91
По умолчанию Расчет дирекционного угла в StringGrid

Здравствуйте. Нужно рассчитать значения дирекционного угла в столбиках стринггрида. Одно значение я рассчитываю так
Код:
procedure TForm1.Button4Click(Sender: TObject);
var
  rez:real;
begin
 rez:=(StrtoFloat(StringGrid1.Cells[3,1]))-(StrToFloat(StringGrid1.Cells[1,2])*60+StrtoFloat(StringGrid1.Cells[2,2]))+10800;
 StringGrid1.Cells[3,3]:=FloatToStr(rez);
end;

end.
Формула дирекционного угла: дирекцинный угол-внутренний гол+180 градусов.
Каждый последующий угол рассчитывается из предыдущего.Первый угол задается пользователем.

12934-(225*60+48)+10800=10186 Пока результат храню в минутах( не знаю пока как перевести точно)

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

Заранее благодарен.
Изображения
Тип файла: jpg Дирекционный угол.jpg (28.1 Кб, 141 просмотров)
Multiman вне форума Ответить с цитированием
Старый 27.09.2011, 17:52   #2
Lesha
Форумчанин
 
Аватар для Lesha
 
Регистрация: 30.01.2009
Сообщений: 418
По умолчанию

а можно формулой записать?

типа такой



чтобы было понятно что за формула, а то у вас одни определения и непонятно что к чему

или файл екселя с таблицей ваших углов

Последний раз редактировалось Lesha; 27.09.2011 в 17:55.
Lesha вне форума Ответить с цитированием
Старый 27.09.2011, 19:28   #3
Multiman
Пользователь
 
Регистрация: 13.10.2010
Сообщений: 91
По умолчанию

Я в delphi программу пишу...
Multiman вне форума Ответить с цитированием
Старый 28.09.2011, 12:17   #4
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,882
По умолчанию

Дельфи - не дельфи, какая разница ? язык математики один и тот же ! Вас же попросили формулу (в экселе её просто можно достаточно наглядно выразить)

Чтобы автоматически вычислялись результаты, надо написать функцию, вычисляющую вашу формулу независимо от ячеек грида ! в эту функцию вы будете передавать числа из ячеек грида, функция их считает, и выдает ответ, который вы записываете в нужную Вам клетку грида.
Автоматизма отображения можно добиться, но Вы малость не объяснили по какому событию должны активироваться расчеты, скорее всего, Вы ждете, чтобы работало как в экселе - нажал энтер после ввода числа и произошёл расчет (я предполагаю). Так вот это можно сделать по событию OnSetEditText - в нем указывается клетка которая вызвала событие - вот эту клетку и надо передать в функцию, она возвратит значение, которое Вы впишете в нужную клетку (это может быть клетка справа, тогда её индекс в данном событии будет [aCol +1, Arow]
Удачи !
phomm вне форума Ответить с цитированием
Старый 28.09.2011, 13:16   #5
Multiman
Пользователь
 
Регистрация: 13.10.2010
Сообщений: 91
По умолчанию

Мне надо чтобы на кнопочку нажал пользователь и все рассчиталось. Я всего лишь хотел узнать как выше приведенный код сделать не для одного угла а для неопределенного количества, т.е. сколько измерений внутренних углов по каждому пункту ввел пользователь столько и дирекционных углов в итоге рассчиталось...
Multiman вне форума Ответить с цитированием
Старый 28.09.2011, 13:50   #6
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,527
По умолчанию

Цитата:
Я всего лишь хотел узнать как выше приведенный код сделать не для одного угла а для неопределенного количества,
совсем для неопределенного нельзя, а вот для числа заданного пользовтелем можно
Код:
n2:=strtoint(edi1.text);
for j:=1 to n2 do begin
 расчет одного угла
end;
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Старый 28.09.2011, 13:53   #7
Multiman
Пользователь
 
Регистрация: 13.10.2010
Сообщений: 91
По умолчанию

ок. а как вывести как у меня на рисунке, между строчек?
Multiman вне форума Ответить с цитированием
Старый 28.09.2011, 14:11   #8
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
ок. а как вывести как у меня на рисунке, между строчек?
у Вас нет "между строчек", у Вас в строчках, расположенным между нужными строчками.

Как сделать? Да просто вставляйте нужные строки в нужное место.
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вычисление угла Fazotron Microsoft Office Excel 4 20.10.2010 21:00
Расчет угла поворота evg08 Помощь студентам 3 24.09.2010 23:34
Нахождение тангенса угла. mosk3 Общие вопросы Delphi 0 08.09.2010 21:31
Биссектрисса угла треугольника Igoressicus Помощь студентам 3 19.05.2010 09:20