Показать сообщение отдельно
  #22  
Старый 11.06.2010, 09:12
Аватар для Mad programmer
Mad programmer Mad programmer вне форума
Прохожий
 
Регистрация: 11.05.2010
Сообщения: 23
Репутация: 10
По умолчанию

Сумма всех элементов произвольной матрицы
Код:
var Summ:real; //сумма
    col:integer; //столбец
    row:integer; //строка
begin
  Summ:=0;
  for row := 1 to StringGrid1.RowCount do
    begin
      for col := 1 to StringGrid1.ColCount do
        //если ячейка не пустая то суммируем ее
        if StringGrid1.Cells[col,row]<>'' then
          begin
           try
             Summ:=Summ+strtofloat(StringGrid1.Cells[col,row]);
           Except
              MessageDlg('Ошибка. Данные введены не правильно',mtError,[mbOK],0);
           end;
          end;
    end;
  Label1.Caption:='Сумма: '+floattostr(Summ);


Вот код. считает суммы если матрица 3 на 3. 
.....
var SummR1:real; //сумма строки 1
    SummR2:real; //сумма строки 2
    SummR3:real; //сумма строки 3
    col:integer; //столбец
    row:integer; //строка
begin
  SummR1:=0;
  SummR2:=0;
  SummR3:=0;

  for col := 1 to 3 do
    begin
       //если ячейка не пустая то суммируем ее
        if StringGrid1.Cells[col,1]<>'' then
          begin
           try
             SummR1:=SummR1+strtofloat(StringGrid1.Cells[col,1]);
           Except
              MessageDlg('Ошибка. Данные введены не правильно',mtError,[mbOK],0);
           end;
          end;

        if StringGrid1.Cells[col,2]<>'' then
          begin
           try
             SummR2:=SummR2+strtofloat(StringGrid1.Cells[col,2]);
           Except
              MessageDlg('Ошибка. Данные введены не правильно',mtError,[mbOK],0);
           end;
          end;


        if StringGrid1.Cells[col,3]<>'' then
          begin
           try
             SummR3:=SummR3+strtofloat(StringGrid1.Cells[col,3]);
           Except
              MessageDlg('Ошибка. Данные введены не правильно',mtError,[mbOK],0);
           end;
          end;

    end;
  Label1.Caption:='Сумма стр. 1: '+floattostr(SummR1);
  Label2.Caption:='Сумма стр. 2: '+floattostr(SummR2);
  Label3.Caption:='Сумма стр. 3: '+floattostr(SummR3);
end;
Admin: Пользуемся тегами для оформления кода, при рецедиве - БАН.
Ответить с цитированием