#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
void Set (double **a, int n, int m)
{
for (int i = 0; i < n; i++)
for (int j=0; j < m; j++)
a[i][j]=rand()%9 + 1;
}
void Top (double **a, int n, int m)
{
for (int i=0; i<n; i++)
for (int j=i+1; j<n; j++)
a[i][j] = 0;
}
void Bottom (double **a, int n, int m, double &sum)
{
sum=0.0;
for (int i=0; i<n; i++)
for(int j = 0; j <= i; j++)
sum+=a[i][j];
}
void Print (double **a, int n, int m)
{
for (int i = 0; i < n; i++)
{
for (int j=0; j < m; j++)
cout << a[i][j] << " ";
cout << "\n";
}
}
int main()
{
int n, m;
double sum;
cout << "n="; cin >> n;
cout << "m="; cin >> m;
double **a = new double*[n];
for (int i = 0; i < n; i++)
a[i]=new double[m];
Set(a,n,m);
cout << "Matrix:\n";
Print(a,n,m);
Top(a,n,m);
Bottom(a,n,m,sum);
cout << "Modified matrix:\n";
Print(a,n,m);
cout << "Summ\n"<<sum;
for (int i = 0; i < n; i++)
delete[]a[i];
delete[]a;
system("pause");
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y3N0ZGxpYj4KI2luY2x1ZGUgPGN0aW1lPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwp2b2lkIFNldCAoZG91YmxlICoqYSwgaW50IG4sIGludCBtKQp7CiAgICBmb3IgKGludCBpID0gMDsgaSA8IG47IGkrKykKICAgICAgICBmb3IgKGludCBqPTA7IGogPCBtOyBqKyspCiAgICAgICAgYVtpXVtqXT1yYW5kKCklOSArIDE7Cn0KIAp2b2lkIFRvcCAoZG91YmxlICoqYSwgaW50IG4sIGludCBtKQp7CmZvciAoaW50IGk9MDsgaTxuOyBpKyspCiAgICAgICAgZm9yIChpbnQgaj1pKzE7IGo8bjsgaisrKQogICAgICAgICAgICBhW2ldW2pdID0gMDsKfQogCnZvaWQgQm90dG9tIChkb3VibGUgKiphLCBpbnQgbiwgaW50IG0sIGRvdWJsZSAmc3VtKQp7CiAgICBzdW09MC4wOwogICAgZm9yIChpbnQgaT0wOyBpPG47IGkrKykKICAgICAgICBmb3IoaW50IGogPSAwOyBqIDw9IGk7IGorKykKICAgICAgICAgICAgc3VtKz1hW2ldW2pdOwp9CiAKdm9pZCBQcmludCAoZG91YmxlICoqYSwgaW50IG4sIGludCBtKQp7CiAgICBmb3IgKGludCBpID0gMDsgaSA8IG47IGkrKykKICAgIHsKICAgICAgICBmb3IgKGludCBqPTA7IGogPCBtOyBqKyspCiAgICAgICAgICAgIGNvdXQgPDwgYVtpXVtqXSA8PCAiICI7CiAgICAgICAgY291dCA8PCAiXG4iOwogICAgfQp9CiAKaW50IG1haW4oKQp7CiAgICBpbnQgbiwgbTsKICAgIGRvdWJsZSBzdW07CiAgICBjb3V0IDw8ICJuPSI7IGNpbiA+PiBuOwogICAgY291dCA8PCAibT0iOyBjaW4gPj4gbTsKIAogICAgICBkb3VibGUgKiphID0gbmV3IGRvdWJsZSpbbl07CiAgICBmb3IgKGludCBpID0gMDsgaSA8IG47IGkrKykKICAgICAgIGFbaV09bmV3IGRvdWJsZVttXTsKIAogICAgU2V0KGEsbixtKTsKICAgIGNvdXQgPDwgIk1hdHJpeDpcbiI7CiAgICBQcmludChhLG4sbSk7CiAgICBUb3AoYSxuLG0pOwogICAgQm90dG9tKGEsbixtLHN1bSk7CiAgICBjb3V0IDw8ICJNb2RpZmllZCBtYXRyaXg6XG4iOwogICAgUHJpbnQoYSxuLG0pOwogICAgY291dCA8PCAiU3VtbVxuIjw8c3VtOwogICAgZm9yIChpbnQgaSA9IDA7IGkgPCBuOyBpKyspCiAgICBkZWxldGVbXWFbaV07CiAgICBkZWxldGVbXWE7CnN5c3RlbSgicGF1c2UiKTsKcmV0dXJuIDA7Cn0=