#include <iostream>
#include <vector>
using namespace std;
float summatrix(vector < vector<float>>& v) {
float s=0;
for (int i = 0; i < v.size(); i++) {
for (int j = 0; j < v[i].size(); j++) {
if (j > i) s += v[i][j];
}
}
return s;
}
float mulmatrix(vector < vector<float>>& v) {
float s = 1;
for (int i = 0; i < v.size(); i++) {
for (int j = 0; j < v[i].size(); j++) {
if (i > j) s *= v[i][j];
}
}
return s;
}
int main()
{
//создадим матрицу 5 на 5 и заполним ее случайными числами
vector < vector<float>> v1(5,vector<float>(5));
for (auto& it1 : v1) {
for (auto& it2 : it1) {
it2 = float(rand()%100+1)/10.0;
}
}
//создадим матрицу 8 на 8 и заполним ее случайными числами
vector < vector<float>> v2(8, vector<float>(8));
for (auto& it1 : v2) {
for (auto& it2 : it1) {
it2 = float(rand()%100+1) / 10.0;
}
}
//Выведем матрицы на экран
for (auto& it1 : v1) {
for (auto& it2 : it1) {
cout << it2 << " ";
}
cout << endl;
}
cout << endl;
for (auto& it1 : v2) {
for (auto& it2 : it1) {
cout << it2 << " ";
}
cout << endl;
}
cout << endl;
cout << "sum v1=" << summatrix(v1)<<endl;
cout << "sum v2=" << summatrix(v2) << endl;
cout << "mul v1=" << mulmatrix(v1) << endl;
cout << "mul v2=" << mulmatrix(v2) << endl;
}
Объяснение:
a : array [1..5, 1..5] of integer;
i, j : integer;
begin
randomize;
for i := 1 to 5 do
begin
for j := 1 to 5 do
begin
a[i, j] := random (1000);
write (a[i, j], ' ');
end;
writeln;
end;
for i := 1 to 5 do
for j := 1 to 5 do
if i > j then a[i, j] := 1
else if j > i then a[i, j] := 0;
for i := 1 to 5 do
begin
for j := 1 to 5 do
write (a[i, j], ' ');
writeln;
end;
end.
var
a : array [1..4, 1..5] of integer;
i, j, m, c : integer;
begin
randomize;
m := 1000;
for i := 1 to 4 do
begin
for j := 1 to 5 do
begin
a[i, j] := random (1000);
if a[i, j] < m then m := a[i, j];
write (a[i, j], ' ');
end;
writeln;
end;
c := 0;
for i := 1 to 4 do
for j := 1 to 5 do
if a[i, j] = m then
c := c + 1;
writeln (m, ' ', c);
end.
var
a : array [1..4, 1..4] of integer;
i, j, p : integer;
begin
randomize;
for i := 1 to 4 do
begin
for j := 1 to 4 do
begin
a[i, j] := random (10);
write (a[i, j], ' ');
end;
writeln;
end;
p := 1;
for i := 1 to 4 do
begin
if a[i, i] <> 0 then p := p * a[i, i];
if a[i, 5 - i] <> 0 then p := p * a[i, 5 - i];
end;
writeln (p);
end.