Наш старый знакомый вася решил проверить, насколько хорошо вы освоили функции и стандартные библиотеки. первым вашим испытанием является написание собственной ( странной) функции random_format(string, **kwargs), которая занимается форматированием строк. параметр string — строка, которую требуется отформатировать. параметры, указанные в **kwargs, описывают требуемые замены. каждое значение параметра описывается кортежем из двух элементов. замена производится на случайное число из диапазона, выраженного переданным кортежем (включая границы), причём для каждого упоминания такого параметра случайное число нужно сгенерировать заново. для примера возьмём вызов функции: random_format('first+second+first*second=', first=(5, 10), second=(1, 4)) результатом работы функции может стать строка: 7+4+10*2= формат ввода функция не должна ничего считывать. формат вывода функция не должна ничего выводить.
procedure PrintMatrix(a: array[,] of integer);
begin
for var i := a.GetLowerBound(0) to a.GetUpperBound(0) do
begin
writeln;
for var j := a.GetLowerBound(1) to a.GetUpperBound(1) do
write(a[i, j], ' ');
end;
writeln;
end;
begin
var a := MatrixRandom(9, 9, 10, 99);
PrintMatrix(a);
var i := (a.GetLowerBound(0) + a.GetUpperBound(0)) div 2 + (a.GetLowerBound(0) + a.GetUpperBound(0)) mod 2;
var j := (a.GetLowerBound(1) + a.GetUpperBound(1)) div 2 + (a.GetLowerBound(1) + a.GetUpperBound(1)) mod 2;
writeln('A[', i, ', ', j, '] = ', a[i, j]);
end.
#include <iomanip>
int main()
{
using namespace std;
const int N = 4;
const int M = 4;
int Y[N][M];
//как-нибудь заполняем матрицу
for (int i = 0; i < N; ++i)
for (int j = 0; j < M; ++j)
Y[i][j] = (i + 1) * (j + 1);
//выведем её на экран
for (int i = 0; i < N; ++i)
{
for (int j = 0; j < M; ++j)
cout << setw(3) << Y[i][j];
cout << endl;
}
//находим сумму элементов побочной диагонали
int S = 0;
for (int i = 0; i < N; ++i)
for (int j = 0; j < M; ++j)
if (j == M - 1 - i)
S = S + Y[i][j];
cout << "Sum of adverse diagonal of array: " << S << endl;
//находим сумму всех элементов матрицы
int Sum = 0;
for (int i = 0; i < N; ++i)
for (int j = 0; j < M; ++j)
Sum = Sum + Y[i][j];
cout << "Sum of all elements of array: " << Sum << endl;
return 0;
}