Написать программу вычисления вектора Z = X + Y с использованием процедур - C#
Формулировка задачи:
условия задание :
Написать программу, осуществляющую заданные вычисления с использованием процедур. Вид используемых классов и методов определить самостоятельно.
Заданы две матрицы А (4, 4) и В (4, 4). Написать программу вычисления вектора Z = X + Y, где X - строка матрицы А, включающая минимальный элемент ее главной диагонали, Y - то же для матрицы В.
у меня получилась только заполнить 2 матрицы все ок но отдельно вывести с табуляции не получается
по этому не могу продолжить решать
namespace ConsoleApplication7
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Введите размерность А");
int n=Convert.ToInt32( Console.ReadLine());
Console.WriteLine("введите элименты матрицы");
matr zz = new matr();
zz.vv(n);
Console.WriteLine("Введите размерность B");
int n1 = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("введите элименты матрицы");
matr zz1 = new matr();
zz1.vv(n1);
Console.ReadKey();
}
}
class matr
{
public void vv(int rz)
{
int[,] matrix = new int[rz, rz];
int i; int j;
for (i = 0; i < rz; i++)
{
for (j = 0; j < rz; j++)
{
matrix[i, j] = Convert.ToInt32(Console.ReadLine());
}
}
}
public void zzz1(int rz)
{
}
}
}Решение задачи: «Написать программу вычисления вектора Z = X + Y с использованием процедур»
textual
Листинг программы
using System;
using System.Linq;
using System.Collections.Generic;
class Program
{
private static int RowMinDiagonal(int[,] matrix)
{
return Enumerable.Range(0, Math.Min(matrix.GetLength(0), matrix.GetLength(1))).OrderBy(i => matrix[i, i]).First();
}
private static List<int> SumRows(int[,] matrix1, int row1, int[,] matrix2, int row2)
{
return Enumerable.Range(0, Math.Min(matrix1.GetLength(1), matrix2.GetLength(1))).Select(i => matrix1[row1, i] + matrix2[row2, i]).ToList();
}
public static void Main()
{
Random RND = new Random();
int[,] a = new int[4, 4];
int[,] b = new int[4, 4];
for (int i = 0; i < 4; i++)
{
for (int j = 0; j < 4; j++)
{
Console.Write(a[i, j] = RND.Next(10));
Console.Write(b[i, j] = RND.Next(10));
}
}
Console.WriteLine(String.Join(", ", SumRows(a, RowMinDiagonal(a), b, RowMinDiagonal(b))));
}
}