Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 24.12.2012, 09:44
Maksuckan Maksuckan вне форума
Прохожий
 
Регистрация: 10.12.2012
Сообщения: 9
Репутация: 10
По умолчанию Прошу помощи с циклом

Стринггрид с неизвестным кол-вом строк.
В столбцах 3, 5, 7- значения для вычислений.
Прошу помочь организовать цикл таким образом, чтобы результат вычисления строки был доступен для последующего обращения к нему (нужен для вывода на печать).
У меня котел не варит...
Ответить с цитированием
  #2  
Старый 24.12.2012, 09:50
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Кол-во строк - grid.RowCount, кол-во столбцов - grid.ColCount.

Цитата:
чтобы результат вычисления строки был доступен для последующего обращения к нему

Не понял.
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #3  
Старый 24.12.2012, 09:55
Maksuckan Maksuckan вне форума
Прохожий
 
Регистрация: 10.12.2012
Сообщения: 9
Репутация: 10
По умолчанию

Проблема с заданием переменной для присвоения результата...
Грубо говоря- для 1 строки будет так:

A:=StrtoFloat(Form1.StringGrid1.Cells[3,1]);
M:=StrtoFloat(Form1.StringGrid1.Cells[5,1]);
P:=StrtoFloat(Form1.StringGrid1.Cells[7,1]);
SUMM1:=A*M*P*((TGVS-TVZ)*K+H*(TGVS-TVL))*0.000001;

переменные а,м,р и соответственно summ1
вопрос, как задать их, чтобы выполнялось для каждой строки?
(остальные переменные в выражении не важны- они статичны и берутся из эдитов)
Ответить с цитированием
  #4  
Старый 24.12.2012, 09:58
Maksuckan Maksuckan вне форума
Прохожий
 
Регистрация: 10.12.2012
Сообщения: 9
Репутация: 10
По умолчанию

Цитата:
Сообщение от M.A.D.M.A.N.

Не понял.

Мне нужно будет потом вывести на печать каждую из полученных переменных- результатов вычислений (summ1 и тд)....
Ответить с цитированием
  #5  
Старый 24.12.2012, 10:34
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Код:
for i := 1 to Form1.StringGrid1.RowCount -1 do
begin
  A:=StrtoFloat(Form1.StringGrid1.Cells[3,i]);
  M:=StrtoFloat(Form1.StringGrid1.Cells[5,i]);
  P:=StrtoFloat(Form1.StringGrid1.Cells[7,i]);
  SUMM1:=A*M*P*((TGVS-TVZ)*K+H*(TGVS-TVL))*0.000001;
end;
Ну как-то так, если Cells[Столбец, Строка].
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #6  
Старый 24.12.2012, 10:45
Maksuckan Maksuckan вне форума
Прохожий
 
Регистрация: 10.12.2012
Сообщения: 9
Репутация: 10
По умолчанию

это для 1 строчки.
Мне нужно в конечном итоге получить рассчет SUMMq, состоящих из SUMM1, SUMM2, SUMM3...SUMMn.

Сначала и полностью:
Есть стринггрид с неизвестным кол-вом строк.
Для каждой строчки:
A:=StrtoFloat(Form1.StringGrid1.Cells[3,1]); //[3,1] - столбец, строка
M:=StrtoFloat(Form1.StringGrid1.Cells[5,1]);
P:=StrtoFloat(Form1.StringGrid1.Cells[7,1]);
SUMM1:=A*M*P*((TGVS-TVZ)*K+H*(TGVS-TVL))*0.000001;

Нужно: Сохранить каждый построчный рассчет для последующего вывода на печать
в поле edit1.text передать SUMM_n=SUMM1+SUMM2+SUMM3...+SUMM_Q , где Q- кол-во строк...

Последний раз редактировалось Maksuckan, 24.12.2012 в 10:50.
Ответить с цитированием
  #7  
Старый 24.12.2012, 11:26
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Да как с неизвестным то?

Грид имеет вполне конечное число строк и столбцов. Я же написал тебе пример, как будет выглядеть цикл, бегающий по всем строчкам в гриде.

Обрати внимание на [3,i].

SUMM1 - объявить как глобальную переменную.
SUMM1:=SUMM1 + (A*M*P*((TGVS-TVZ)*K+H*(TGVS-TVL))*0.000001);
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #8  
Старый 24.12.2012, 12:17
Maksuckan Maksuckan вне форума
Прохожий
 
Регистрация: 10.12.2012
Сообщения: 9
Репутация: 10
По умолчанию

Цитата:
Сообщение от M.A.D.M.A.N.
Да как с неизвестным то?

Грид имеет вполне конечное число строк и столбцов. Я же написал тебе пример, как будет выглядеть цикл, бегающий по всем строчкам в гриде.

Обрати внимание на [3,i].

SUMM1 - объявить как глобальную переменную.
SUMM1:=SUMM1 + (A*M*P*((TGVS-TVZ)*K+H*(TGVS-TVL))*0.000001);

Но в таком случае вопрос, если мне нужно отдельно каждый расчет вывести в отдельный эдит?
Ответить с цитированием
  #9  
Старый 24.12.2012, 12:24
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Это извращение какое-то, можно каждый расчет вывести в ячейку того же грида.

Странный у вас подход к решению задачи.
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 15:03.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025