Изменить значения в двумерном массиве - C#

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

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

У меня есть двумерный(квадратный) массив double заполненный нулями и единицами, кто подскажет, как изменить значения в матрице на значения от 0 до 1, величина которых зависит от удаленности от 1?, чтобы получилось что-то вроде этого:

Решение задачи: «Изменить значения в двумерном массиве»

textual
Листинг программы
static void Main(string[] args)
        {
            int n;
            int.TryParse(Console.ReadLine(), out n);
            double[,] ar = new double[n, n];
            CreateArray(ar);
            ShowArray(ar);
            Console.WriteLine();
            ArrayTransform(ar);
            ShowArray(ar);
            Console.ReadKey();
        }
        static void CreateArray(double[,] ar)
        {
            for (int i = 0; i < ar.GetLength(0); i++)
            {
                for (int j = 2; j < ar.GetLength(1)-2; j++)
                {
                    if (i == j)
                        ar[i, j] = 1;
                }
            }
        }
        static void ShowArray(double[,] ar)
        {
            for (int i = 0; i < ar.GetLength(0); i++)
            {
                for (int j = 0; j < ar.GetLength(1); j++)
                {
                    Console.Write($"{ar[i, j]}     ");
                }
                Console.WriteLine();
            }
 
        }
        static void ArrayTransform(double[,] ar)
        {
            for (int i = 0; i < ar.GetLength(0); i++)
            {
                for (int j = 0; j < ar.GetLength(1); j++)
                {
                    if (ar[i, j] == 1)
                    {
                        if (ar[i - 1, j - 1] != 0.9 )
                        {
                            ar[i - 1, j - 1] = 0.3;
                        }
                        if (ar[i +1, j + 1] != 1)
                        {
                            ar[i +1, j + 1] = 0.3;
                        }
                        ar[i,j]=0.9;
                        ar[i -1,j] = 0.6;
                        ar[i+1,j] = 0.6;
                        ar[i,j+1] = 0.6;
                        ar[i, j-1] = 0.6;
                        ar[i - 2, j] = 0.3;
                        ar[i + 2, j] = 0.3;
                        ar[i, j + 2] = 0.3;
                        ar[i, j - 2] = 0.3;
 
                    }
                 
                }
         
            }
        }
    }

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


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

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

13   голосов , оценка 3.923 из 5
Похожие ответы