/** libraries */
#include <iostream>
#include <cmath>
#include <vector>
#include <map>
#include <set>
#include <queue>
#include <stack>
#include <algorithm>
/** libraries */
using namespace std;
/** defines */
#define ll long long
#define ld long double
#define yes cout << "YES" << "\n"
#define no cout << "NO" << "\n"
/** defines */
signed main() {
ios_base::sync_with_stdio(false);
cin.tie(nullptr);
cout.tie(nullptr);
ld x;
cin >> x;
if(x < 5)
cout << sin(2*x + 3);
else if(x < 8)
cout << 3*x + 2 * pow(x,3);
else
cout << (3*x-2)/(1 + pow(x,2));
}
Объяснение:
Для этого нужно использовать динамические массивы.
var m: array of array of integer; означает массив массивов integer.
SetLength(m, n, n); инициализирует двумерный массив m размерностью n•n.
Но при использовании динамических массивов изменяется принцип обращения к элементам: если ранее (в статических массивах) нумерация шла с 1, то сейчас с 0. Также изменилось условие окончания цикла (ранее было до n, сейчас до n - 1)
Полный код:
var
n, i, j: integer;
m: array of array of integer;
begin
writeln('Введите размерность матрицы');
read(n);
SetLength(m, n, n);
for i:=0 to n-1 do
begin
for j:=0 to n-1 do
read(m[i,j]);
end;
for i:=0 to n-1 do
begin
for j:=0 to n-1 do
write(m[i,j]:5);
writeln();
end;
end.