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

Delphi Sources



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

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 03.03.2013, 12:50
Dikey Dikey вне форума
Прохожий
 
Регистрация: 03.03.2013
Сообщения: 4
Репутация: 10
По умолчанию Суммировать строки таблицы

Добрый день ребят. В программке есть такая процедура.
Вся эта процедура выводит расчеты в таблицу. Как мне реализовать чтобы в конце таблицы добавлялась строка "Итого" и суммировала все строки из столбца
Код:
procedure Dif(summa, stavka, mesplatej: real; month: integer);
var
 i: integer;
 ostn, ostk, vplpr, pgdolg: real;
begin
  FCalc.SG.RowCount := month + 1;
  for i := 1 to month do begin
    if i = 1 then ostn := summa else ostn := ostk; 
    vplpr := ostn * stavka / 12;
    pgdolg := summa/month;
    ostk := ostn - pgdolg;
    mesplatej:=vplpr+pgdolg;
    FCalc.SG.Cells[0,i]:= inttostr(i); 
    FCalc.SG.Cells[1,i]:= floattostrf(vplpr,ffFixed,6,2);
    FCalc.SG.Cells[2,i]:= floattostrf(pgdolg,ffFixed,6,2);
    FCalc.SG.Cells[3,i]:= floattostrf(mesplatej,ffFixed,6,2);
    FCalc.SG.Cells[4,i]:= floattostrf(ostn,ffFixed,8,2);
    FCalc.SG.Cells[5,i]:= floattostrf(ostk,ffFixed,8,2);
  end;
end;
procedure TFCalc.BRaschClick(Sender: TObject);

   function PMT(IR, NP, PV: real): real;
   begin
   result := (PV * IR) / (1 - power(1 + IR, -NP));
  end;
 var
  sum, stavka: extended;
  month: integer;
  Ejrasch: extended;
 begin
if (EMonth.Text='') or (EStavka.Text='') or  (Esum.Text='') then ShowMessage ('Íåîáõîäèìî çàïîëíèòü âñå ïîëÿ')
else
begin  SG.visible:=True ;
  sum := StrToFloat(ESum.Text);
  stavka := StrToFloat(EStavka.Text) * 0.01;
  month := StrToInt(Emonth.Text);
    if RBAn.Checked=true then begin  
    Ejrasch := Pmt(stavka / 12, month, sum);
    Annuite(sum, stavka, Ejrasch, month);
  end
  else begin   
  Ejrasch := Pmt(stavka / 12, month, sum);
    Dif(sum, stavka, Ejrasch, month);
  end;
  end;
end;

Ответить с цитированием
  #2  
Старый 03.03.2013, 13:16
Аватар для 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
Репутация: выкл
По умолчанию

Код:
  sum1 ;= 0;
  for i := 1 to month do begin
    if i = 1 then ostn := summa else ostn := ostk; 
    vplpr := ostn * stavka / 12;
    pgdolg := summa/month;
    ostk := ostn - pgdolg;
    mesplatej:=vplpr+pgdolg;
    FCalc.SG.Cells[0,i]:= inttostr(i); 
    FCalc.SG.Cells[1,i]:= floattostrf(vplpr,ffFixed,6,2);
    sum1 := sum1 + vplpr;
    FCalc.SG.Cells[2,i]:= floattostrf(pgdolg,ffFixed,6,2);
    FCalc.SG.Cells[3,i]:= floattostrf(mesplatej,ffFixed,6,2);
    FCalc.SG.Cells[4,i]:= floattostrf(ostn,ffFixed,8,2);
    FCalc.SG.Cells[5,i]:= floattostrf(ostk,ffFixed,8,2);
  end;
ну как-то так наверное.
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #3  
Старый 03.03.2013, 13:22
Dikey Dikey вне форума
Прохожий
 
Регистрация: 03.03.2013
Сообщения: 4
Репутация: 10
По умолчанию

А как выводить sum1?
Ответить с цитированием
  #4  
Старый 03.03.2013, 13:27
Аватар для 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, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #5  
Старый 03.03.2013, 13:36
Dikey Dikey вне форума
Прохожий
 
Регистрация: 03.03.2013
Сообщения: 4
Репутация: 10
По умолчанию

первый столбец "Месяц" непостоянен зависит от "Срока кредита" т.е если вводимый срок 6 месяцев то и строк будет 6 , 24 месяца = 24 строки. но Строка "Итого" должна быть постоянной в конце и в этой строке должна выводиться сумма столбца. вот
Ответить с цитированием
  #6  
Старый 03.03.2013, 13:53
Аватар для 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
Репутация: выкл
По умолчанию

Я показал как суммировать, на твой вопрос ответил, как вывести - уже думаем сами, или ждем Alegun или Freeman, они на пальцах объяснят.
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


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


Delphi Sources

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

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

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

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


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


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

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

ВКонтакте   Facebook   Twitter