Помогите, две недели мучаюсь
Задана матрица размером NxM. Получить массив B, присвоив его k-му элементу значение 0, если все элементы k-го столбца матрицы нулевые, и значение 1 в противном случае.
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1mass.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
const Nmax=10;
typedef double mas2[Nmax][Nmax];
typedef double mas1[Nmax];
int n;
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
Edit1->Text=FloatToStr
;
StringGrid1->ColCount=n+1;
StringGrid1->RowCount=n+1;
StringGrid2->RowCount=n+1;
StringGrid1->Cells[0][0]="Массив А";
StringGrid2->Cells[0][0]="Массив Б";
for(int i=1; i<=n; i++)
{
StringGrid1->Cells[0]="i="+IntToStr(i);
StringGrid1->Cells[0]="k="+IntToStr(i);
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
n=StrToInt(Edit1->Text);
StringGrid1->ColCount=n+1;
StringGrid1->RowCount=n+1;
StringGrid2->RowCount=n+1;
StringGrid1->Cells[0][0]="Массив А";
StringGrid2->Cells[0][0]="Массив Б";
for(int i=1; i<=n; i++)
{
StringGrid1->Cells[0]="i="+IntToStr(i);
StringGrid1->Cells[0]="k="+IntToStr(i);
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
mas2 a;
mas1 b;
int i,k;
for(i=0;i<n;i++)
for(k=0;k<n;k++)
a[k]=StrToFloat(StringGrid1->Cells[i+1][k+1]);
int s=0,p=1;
for(k=0;k<n;k++)
for(i=0;i<n;i++)
{
s=s+a[k];
p*=a[k];
}
if(p*=0) b=0;
else b=1;
for(i=0;i<n;i++)
StringGrid2->Cells[0][k+1]=FloatToStr(b);
}
//---------------------------------------------------------------------------
:tehnari_ru_281:
Задана матрица размером NxM. Получить массив B, присвоив его k-му элементу значение 0, если все элементы k-го столбца матрицы нулевые, и значение 1 в противном случае.
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1mass.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
const Nmax=10;
typedef double mas2[Nmax][Nmax];
typedef double mas1[Nmax];
int n;
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
Edit1->Text=FloatToStr
StringGrid1->ColCount=n+1;
StringGrid1->RowCount=n+1;
StringGrid2->RowCount=n+1;
StringGrid1->Cells[0][0]="Массив А";
StringGrid2->Cells[0][0]="Массив Б";
for(int i=1; i<=n; i++)
{
StringGrid1->Cells[0]="i="+IntToStr(i);
StringGrid1->Cells[0]="k="+IntToStr(i);
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
n=StrToInt(Edit1->Text);
StringGrid1->ColCount=n+1;
StringGrid1->RowCount=n+1;
StringGrid2->RowCount=n+1;
StringGrid1->Cells[0][0]="Массив А";
StringGrid2->Cells[0][0]="Массив Б";
for(int i=1; i<=n; i++)
{
StringGrid1->Cells[0]="i="+IntToStr(i);
StringGrid1->Cells[0]="k="+IntToStr(i);
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
mas2 a;
mas1 b;
int i,k;
for(i=0;i<n;i++)
for(k=0;k<n;k++)
a[k]=StrToFloat(StringGrid1->Cells[i+1][k+1]);
int s=0,p=1;
for(k=0;k<n;k++)
for(i=0;i<n;i++)
{
s=s+a[k];
p*=a[k];
}
if(p*=0) b=0;
else b=1;
for(i=0;i<n;i++)
StringGrid2->Cells[0][k+1]=FloatToStr(b);
}
//---------------------------------------------------------------------------
:tehnari_ru_281: