Дана целочисленная квадратная матрица, элементы которой вносятся вручную. написать программу, которая подсчитывает количество четных элементов матрицы, расположенных в первой и последней строке, а также в первом и последнем столбце
PascalABC.NET 3.4.0, сборка 1672 от 10.06.2018 Внимание! Если программа не работает, обновите версию!
begin var n:=ReadInteger('Количество строк/столбцов в матрице:'); Writeln('*** Вводите элементыв построчнон через пробел ***'); var a:=ReadMatrInteger(n,n); Writeln(4*a.ColCount*'-'); Writeln('Количество четных элементов в первой и последней строке: ', a.Row(0).Where(t->t.IsEven).Count+ a.Row(n-1).Where(t->t.IsEven).Count); Writeln('Количество четных элементов в первом и последнем столбце: ', a.Col(0).Where(t->t.IsEven).Count+ a.Col(n-1).Where(t->t.IsEven).Count); end.
Console.Write("Введите количество строк: "); int rows = Convert.ToInt32(Console.ReadLine()); Console.Write("Введите количество столбцов: "); int columns = Convert.ToInt32(Console.ReadLine());
int[,] matrix = new int[rows, columns];
int sumRows = 0; int sumColumns = 0;
for (int i = 0; i < rows;i++) { for (int j = 0; j < columns;j++) { Console.Write($"Введите элемент [{i},{j}]: ");
int number = Convert.ToInt32(Console.ReadLine());
matrix[i, j] = number; if (i == 0 || i == rows - 1) sumRows += number; if (j == 0 || j == columns - 1) sumColumns += number; } }
for (int i = 0; i < rows;i++) { for (int j = 0; j < columns;j++) { Console.Write($"{matrix[i, j]}\t"); } Console.WriteLine(); }
Console.WriteLine($"Сумма элементов на первой и последней строке: {sumRows}"); Console.WriteLine($"Сумма элементов на первом и последнем столбце: {sumColumns}");
Внимание! Если программа не работает, обновите версию!
begin
var n:=ReadInteger('Количество строк/столбцов в матрице:');
Writeln('*** Вводите элементыв построчнон через пробел ***');
var a:=ReadMatrInteger(n,n);
Writeln(4*a.ColCount*'-');
Writeln('Количество четных элементов в первой и последней строке: ',
a.Row(0).Where(t->t.IsEven).Count+
a.Row(n-1).Where(t->t.IsEven).Count);
Writeln('Количество четных элементов в первом и последнем столбце: ',
a.Col(0).Where(t->t.IsEven).Count+
a.Col(n-1).Where(t->t.IsEven).Count);
end.
Вот C#
Console.Write("Введите количество строк: ");
int rows = Convert.ToInt32(Console.ReadLine());
Console.Write("Введите количество столбцов: ");
int columns = Convert.ToInt32(Console.ReadLine());
int[,] matrix = new int[rows, columns];
int sumRows = 0;
int sumColumns = 0;
for (int i = 0; i < rows;i++)
{
for (int j = 0; j < columns;j++)
{
Console.Write($"Введите элемент [{i},{j}]: ");
int number = Convert.ToInt32(Console.ReadLine());
matrix[i, j] = number;
if (i == 0 || i == rows - 1) sumRows += number;
if (j == 0 || j == columns - 1) sumColumns += number;
}
}
for (int i = 0; i < rows;i++)
{
for (int j = 0; j < columns;j++)
{
Console.Write($"{matrix[i, j]}\t");
}
Console.WriteLine();
}
Console.WriteLine($"Сумма элементов на первой и последней строке: {sumRows}");
Console.WriteLine($"Сумма элементов на первом и последнем столбце: {sumColumns}");
Console.ReadLine();