Padre_Mortius писал(а):dima,
что вы пытаетесь сделать в процедурах Button2Click и Button3Click?
Тут нет вычисления суммы столбца или строки. Тут вычисляется сумма диагонали.
Не диагонали, а всех элементов.
В приведённой задаче нет места, где вводится сумму какого столбца или какой строки посчитать. Полагаю задача чужая и вопрос не "помогите с задачей", а "сделайте за меня"
Хотя тут:
- Код: Выделить всё
procedure TForm1.Button3Click(Sender: TObject);
var k:integer;
begin
k:=0;
for j:=0 to StringGrid1.ColCount-1 do
begin
for i:=0 to StringGrid1.RowCount-1 do
with StringGrid1 do
k:=k+strtoint(Cells[i,j]);
Edit2.text:=Edit2.text+' '+inttostr(k);
k:=0;
end;
end;
Написано всё правильно. На выходе получается строка сумм элементов столбцов через пробел. Только Edit2.Text обнулять стоит в начале процедуры.
Раз уж таки начал решать, то строку сумм элементов строк можно получить элементарной переменой мест двух строк кода (заодно k:=0; на более правильное место поставил и Edit обнулил):
- Код: Выделить всё
procedure TForm1.Button2Click(Sender: TObject);
var k:integer;
begin
Edit1.text:='';
for i:=0 to StringGrid1.RowCount-1 do
begin
k:=0;
for j:=0 to StringGrid1.ColCount-1 do
with StringGrid1 do
k:=k+strtoint(Cells[i,j]);
Edit1.text:=Edit1.text+' '+inttostr(k);
end;
end;