• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Люди, помогите разобраться

  • Автор темы Guest11
  • Дата начала
G

Guest11

Есть таблица StringGrid 5*5 (1-ая строка - название колонок), в ней нужно перемножить 2-ой и 3-ий столбец, результат вывести в 4-ом. Затем необходимо проссумировать получившиеся значения в 4-ом столбце и вывести в Edit3. Написала код, но на этапе суммирования в поле Edit3 выводится значение последней ячейки 4-ого столбца...
Кто может, помогите пожалуйста исправить это :(


procedure TForm1.Button1Click(Sender: TObject);
var
a,b,sum:real;
i:byte;
begin
for i:=1 to StringGrid1.RowCount-1 do
begin
a:=StrToInt(StringGrid1.Cells[2,i])*StrToFloat(StringGrid1.Cells[3,i]);
StringGrid1.Cells[4,i]:=FloatToStr(a);
sum:=0;
sum:=sum+StrToFloat(StringGrid1.Cells[4,i]);
Edit3.Text:=FloatToStr(sum);
end;
end;
 
V

Vadik(R)

Попробуй так:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
a,b,sum:real;
i:byte;
begin
sum:=0;
for i:=1 to StringGrid1.RowCount-1 do
begin
a:=StrToInt(StringGrid1.Cells[2,i])*StrToFloat(StringGrid1.Cells[3,i]);
StringGrid1.Cells[4,i]:=FloatToStr(a);
sum:=sum+StrToFloat(StringGrid1.Cells[4,i]);
Edit3.Text:=FloatToStr(sum);
end;
end;
 
G

Guest11

Спасибо большое!!! :( работает, такая мелочь и такие ошибки получаются... ещё раз спасибо :)
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!