Задача:
1. Пусть задана матрица A, размерностью n x n. Необходимо построить матрицу В, причем элементы матрицы строятся по следующей формуле Нажмите для просмотра прикрепленного файла где область указана рисунке Нажмите для просмотра прикрепленного файла
Пример задачи:
Рис:Нажмите для просмотра прикрепленного файла
Код
#include "stdafx.h"
#include "stdio.h"
#include "conio.h"
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
int const nmax=15;
double a[nmax][nmax],b[nmax][nmax];
int i,j,k,n,l;
cout<<"n=";
cin>>n;
cout<<"Matrix A:"<<endl;
for (i=0;i<n;i++)
{
for (j=0;j<n;j++)
cin>>a[i][j];
cout<<endl;
}
for (i=0;i<n;i++)
for (j=0;j<n;j++)
{
b[i][j]=1e20;
for (k=0;k<n;k++)
for (l=0;l<n;l++)
if (k<=i&&l<=j-(k-i)&&l>=j-(i-k))
if (b[i][j]>a[k][l])
b[i][j]=a[k][l];
}
cout<<"matrix B"<<endl;
for (i=0;i<n;i++)
{
for (j=0;j<n;j++)
printf("%7.2f",b[i][j]);
printf("\n");
}
return 0;
}
#include "stdio.h"
#include "conio.h"
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
int const nmax=15;
double a[nmax][nmax],b[nmax][nmax];
int i,j,k,n,l;
cout<<"n=";
cin>>n;
cout<<"Matrix A:"<<endl;
for (i=0;i<n;i++)
{
for (j=0;j<n;j++)
cin>>a[i][j];
cout<<endl;
}
for (i=0;i<n;i++)
for (j=0;j<n;j++)
{
b[i][j]=1e20;
for (k=0;k<n;k++)
for (l=0;l<n;l++)
if (k<=i&&l<=j-(k-i)&&l>=j-(i-k))
if (b[i][j]>a[k][l])
b[i][j]=a[k][l];
}
cout<<"matrix B"<<endl;
for (i=0;i<n;i++)
{
for (j=0;j<n;j++)
printf("%7.2f",b[i][j]);
printf("\n");
}
return 0;
}
Заранее спасибо!