Главная > Other > Вычислить сумму и количество положительных элементов каждого столбца матрицы А [5] [4]. Результаты напечатать в виде двух строк.

Вычислить сумму и количество положительных элементов каждого столбца матрицы А [5] [4]. Результаты напечатать в виде двух строк.

Вопрос с ГОСа..

#include <vcl.h>
#pragma hdrstop
 
#include "MyUnit.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
// Делаем надписи на втором StringGridе
 StringGrid2->Cells[0][0]="Sum";
 StringGrid2->Cells[0][1]="k";
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
// Формируем матрицу из случайных чисел
 randomize();
 for (int i=0;i<StringGrid1->ColCount;i++)
  for (int j=0;j<StringGrid1->RowCount;j++)
   StringGrid1->Cells[i][j] = IntToStr(random(10)-5);
 
 Button1->Enabled=false;
 Button2->Enabled=true;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
 int Sum=0, k=0;
 
 for (int i=0;i<StringGrid1->ColCount;i++)    // Во внешнем цикле перебираем столбцы
  {
   for (int j=0;j<StringGrid1->RowCount;j++)    // Во внутреннем цикле перебираем строки
     if (StrToInt(StringGrid1->Cells[i][j]) > 0)        // Если ел-т строки положительный
      {
       Sum+=StrToInt(StringGrid1->Cells[i][j]); // То суммируем его
       k++;
      }
// Выводим сумму и количество положительных эл-в и обнуляем переменные
   StringGrid2->Cells[i+1][0]=IntToStr(Sum);
   StringGrid2->Cells[i+1][1]=IntToStr(k);
   Sum=0; k=0;
  }
 
 Button2->Enabled=false;
 Button3->Enabled=true;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button3Click(TObject *Sender)
{
// Очищаем StringGridы
 for (int i=0;i<StringGrid1->ColCount;i++)
  for (int j=0;j<StringGrid1->RowCount;j++)
   {
    StringGrid1->Cells[i][j]="";
    StringGrid2->Cells[i+1][j]="";
   }
 
 Button3->Enabled=false;
 Button1->Enabled=true;
}
//---------------------------------------------------------------------------
Categories: Other Tags:
  1. Пока что нет комментариев.