// PascalABC.NET 3.3, сборка 1611 от 06.01.2018 // Внимание! Если программа не работает, обновите версию!
begin var (m,n):=ReadInteger2('Количество строк и столбцов в матрице:'); Writeln('*** Исходная матрица ***'); var a:=MatrRandom(m,n,-99,99); a.Println(4); Writeln(4*a.ColCount*'-'); var d:=a.ElementsWithIndexes.Where(t->t[1]=t[2]).ToArray; Writeln('Сумма элементов на главной диагонали: ',d.Sum(t->t[0])); var q:=d.Min; Writeln('Минимальный элемент [',q[1]+1,',',q[2]+1,']=',q[0]); end.
max = a[0]+a[n-1]; min = a[0]*a[n/2]; for (int i = 1; i<n/2; i++){ if (a[i]+a[n-i-1] > max) max = a[i]+a[n-i-1]; if (a[i]*a[n/2+i] < min) min = a[i]*a[n/2+i]; } cout << "max = " << max << "\n"; cout << "min = " << min << "\n"; return 0; }
Пример (для n=10): -19.29 30.99 -15.37 26.41 3.65 13.45 29.28 4.28 30.51 -10.36 max = 61.50 min = -259.43
// Внимание! Если программа не работает, обновите версию!
begin
var (m,n):=ReadInteger2('Количество строк и столбцов в матрице:');
Writeln('*** Исходная матрица ***');
var a:=MatrRandom(m,n,-99,99);
a.Println(4); Writeln(4*a.ColCount*'-');
var d:=a.ElementsWithIndexes.Where(t->t[1]=t[2]).ToArray;
Writeln('Сумма элементов на главной диагонали: ',d.Sum(t->t[0]));
var q:=d.Min;
Writeln('Минимальный элемент [',q[1]+1,',',q[2]+1,']=',q[0]);
end.
Пример
Количество строк и столбцов в матрице: 5 6
*** Исходная матрица ***
-5 -34 -95 -24 -22 -24
16 -43 -57 -55 44 -34
-89 26 -25 26 63 75
-53 53 23 -43 -65 -29
12 -74 -39 71 84 12
Сумма элементов на главной диагонали: -32
Минимальный элемент [2,2]=-43
#include <iostream>
#include <iomanip>
using namespace std;
int main() {
const int n = 30;
double a[n];
double max, min;
srand(time(0));
for (int i = 0; i < n; i++) {
a[i]=-20 + (51.0 / RAND_MAX) * rand();
cout << fixed << setw (7) << setprecision (2) << a[i];
}
cout <<"\n";
max = a[0]+a[n-1];
min = a[0]*a[n/2];
for (int i = 1; i<n/2; i++){
if (a[i]+a[n-i-1] > max) max = a[i]+a[n-i-1];
if (a[i]*a[n/2+i] < min) min = a[i]*a[n/2+i];
}
cout << "max = " << max << "\n";
cout << "min = " << min << "\n";
return 0;
}
Пример (для n=10):
-19.29 30.99 -15.37 26.41 3.65 13.45 29.28 4.28 30.51 -10.36
max = 61.50
min = -259.43