Зеркально отразить элементы матрицы относительно горизонтальной оси симметрии - C#

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

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

Дана матрица размера M × N. Зеркально отразить ее элементы относительно горизонтальной оси симметрии матрицы (при этом поменяются местами строки с номерами 1 и M, 2 и M – 1 и т. д.).

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

textual
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Collections;
  6.  
  7. namespace ConsoleApplication1
  8. {
  9.     class Program
  10.     {
  11.         static void Main(string[] args)
  12.         {
  13.             int[,] a;
  14.             int m = 0, n = 0,tmp = 0;
  15.             Random r = new Random();
  16.  
  17.             while(n <= 0)
  18.             {
  19.                 Console.Write("N = ");
  20.                 n = Convert.ToInt32(Console.ReadLine());
  21.             }
  22.             while (m <= 0)
  23.             {
  24.                 Console.Write("M = ");
  25.                 m = Convert.ToInt32(Console.ReadLine());
  26.             }
  27.             a = new int[n, m];
  28.  
  29.             Console.WriteLine("Исходная матрица");
  30.             for (int i = 0; i < n; i++)
  31.             {
  32.                 for (int j = 0; j < m; j++)
  33.                 {
  34.                     a[i, j] = r.Next(10);
  35.                     Console.Write("{0} ",a[i,j]);
  36.                 }
  37.                 Console.WriteLine();
  38.             }
  39.  
  40.             for (int i = 0; i < (n/2) ;i++ )
  41.             {
  42.                 for (int j = 0; j < m; j++)
  43.                 {
  44.                     tmp = a[i, j];
  45.                     a[i, j] = a[(n - i - 1), j];
  46.                     a[(n - i - 1), j] = tmp;
  47.                 }
  48.             }
  49.  
  50.             Console.WriteLine("Зеркальная матрица");
  51.             for (int i = 0; i < n; i++)
  52.             {
  53.                 for (int j = 0; j < m; j++)
  54.                 {
  55.                     Console.Write("{0} ", a[i, j]);
  56.                 }
  57.                 Console.WriteLine();
  58.             }
  59.                
  60.             Console.ReadKey();
  61.         }
  62.     }
  63. }

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


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

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

7   голосов , оценка 4.286 из 5

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

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

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