Программа рассчитывает сумму элементов с четной суммой индексов в двух матрицах - C#

Узнай цену своей работы

Формулировка задачи:

Программа рассчитывает сумму элементов с четной суммой индексов в двух матрицах, которые хранятся в разных файлах. Помогите плиз.

Решение задачи: «Программа рассчитывает сумму элементов с четной суммой индексов в двух матрицах»

textual
Листинг программы
  1. using System;
  2. using System.Linq;
  3. using System.IO;
  4.  
  5. namespace CyberForum
  6. {
  7.     class Program
  8.     {
  9.         //Считывает размер матрицы из файла
  10.         public static int GetMatrixSize(string fileWithMatrix)
  11.         {
  12.             string[] arr = File.ReadAllLines(fileWithMatrix);
  13.  
  14.             return Convert.ToInt32(arr[0]);
  15.         }
  16.  
  17.         //Считивает матрицу из файла
  18.         public static int[,] MyMatrix(string fileWithMatrix, int size)
  19.         {
  20.             string[] arr = File.ReadAllLines(fileWithMatrix);
  21.            
  22.             int[,] matrix = new int[size, size];
  23.  
  24.             for (int i = 0; i < size; i++)
  25.             {
  26.                 var tmp = arr[i + 1].Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries).Select(int.Parse).ToArray();
  27.  
  28.                 for (int j = 0; j < tmp.Length; j++)
  29.                     matrix[i, j] = tmp[j];
  30.             }
  31.  
  32.             return matrix;
  33.         }
  34.  
  35.         //Выводит матрицу на экран
  36.         public static void DisplayMatrix(int[,] matrix, int size, string fileWithMatrix)
  37.         {
  38.             Console.WriteLine("Матрица из файла {0}: ", fileWithMatrix);
  39.             for (int i = 0; i < size; i++)
  40.             {
  41.                 for (int j = 0; j < size; j++)
  42.                 {
  43.                     Console.Write(matrix[i, j] + " ");
  44.                 }
  45.                 Console.WriteLine();
  46.             }
  47.         }
  48.  
  49.         //Считает сумму элементов, где сумма индексов четная
  50.         public static int CalculateSum(int[,] matrix, int size)
  51.         {
  52.             int sum = 0;
  53.             for(int i=0; i<size; i++)
  54.                 for (int j = 0; j < size; j++)
  55.                     sum += (i + j)%2 == 0 ? matrix[i, j] : 0;
  56.             return sum;
  57.         }
  58.         static void Main(string[] args)
  59.         {
  60.             int n=GetMatrixSize("D:/MatrixA.txt");
  61.             int[,] matrixA=new int[n,n];
  62.             Array.Copy(MyMatrix("D:/MatrixA.txt", n), matrixA, n*n);
  63.             DisplayMatrix(matrixA, n, "D:/MatrixA.txt");
  64.             Console.WriteLine("Сумма элементов, где есть четная сумма индексов, равна: " + CalculateSum(matrixA, n));
  65.             Console.WriteLine();
  66.            
  67.  
  68.             int m = GetMatrixSize("D:/MatrixB.txt");
  69.             int[,] matrixB = new int[m, m];
  70.             Array.Copy(MyMatrix("D:/MatrixB.txt", m), matrixB, m*m);
  71.             DisplayMatrix(matrixB, m, "D:/MatrixB.txt");
  72.             Console.WriteLine("Сумма элементов, где четная сумма индексов, равна: " + CalculateSum(matrixB, m));
  73.  
  74.             Console.ReadKey();
  75.         }
  76.  
  77.     }
  78. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 4.333 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы