Вопрос задан 09.03.2021 в 22:37. Предмет Информатика. Спрашивает Кабакова Кристина.

ПОМОГИТЕ ПОЖАЛУЙСТА решить задачу на двумерный массив - Язык C#. Я написал задачу, но нужно

подправить её"/*Заполнить массив [X,Y] случайными двузначными числами, распечатать в табличном виде, а затем транспонировать (строки сделать столбцами, а столбцы строками) и распечатать рядом с первым массивом.*/ Console.Write("Введите диапазон массива x = "); int x = Convert.ToInt32(Console.ReadLine()); Console.Write("Введите диапазон массива y = "); int y = Convert.ToInt32(Console.ReadLine()); int[,] m = new int[x,y]; Random r = new Random(); for (int j = 0; j < y; j++) { for (int i = 0; i < x; i++) { m[i, j] = r.Next(10, 99); Console.Write(m[i, j] + "\t"); } Console.WriteLine(); } Console.WriteLine(); for (int i = 0; i < x; i++) { for (int j = 0; j < y; j++) { Console.Write(m[j, i] + "\t"); } Console.WriteLine(); } Console.ReadKey();"
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Кукса Владислав.

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;


namespace KekTus

{

   class Program

   {

       static void PrintArr(int[][] arr)

       {

           foreach (var str in arr)

           {

               foreach (var el in str)

                   Console.Write($"{el}\t");

               Console.WriteLine();

           }

       }


       static void Main(string[] args)

       {

           int M;

           int N;


           try

           {

               Console.Write("M = "); M = int.Parse(Console.ReadLine());

               Console.Write("N = "); N = int.Parse(Console.ReadLine());

           }

           catch

           {

               Console.WriteLine("Ошибка ввода");

               return;

           }


           if (N < 0 || M < 0)

           {

               Console.WriteLine("Ошбка ввода");

               return;

           }


           Console.WriteLine("M = {0}; N = {1}.", M, N);

           int[][] Arr    = new int[M][];

           var rand = new Random();

           for(int i = 0; i < M; ++i)

           {

               Arr[i] = new int[N];

               for (int j = 0; j < N; ++j)

                   Arr[i][j] = rand.Next() % 500;

           }

           Console.WriteLine("Исходный массив:");

           PrintArr(Arr);

           Console.WriteLine();


           int[][] Buffer = new int[N][];

           for (int j = 0; j < N; ++j)

               Buffer[j] = new int[M];


           for (int i = 0; i < M; ++i)

               for (int j = 0; j < N; ++j)

                   Buffer[j][i] = Arr[i][j];

           Arr = Buffer;

           Console.WriteLine("Преобразованный:");

           PrintArr(Arr);

           Console.WriteLine();

       }

   }

}



0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Вот исправленный код для вашей задачи:

csharp
Console.Write("Введите диапазон массива x = "); int x = Convert.ToInt32(Console.ReadLine()); Console.Write("Введите диапазон массива y = "); int y = Convert.ToInt32(Console.ReadLine()); int[,] m = new int[x, y]; Random r = new Random(); // Заполнение и вывод исходного массива for (int i = 0; i < x; i++) { for (int j = 0; j < y; j++) { m[i, j] = r.Next(10, 99); Console.Write(m[i, j] + "\t"); } Console.WriteLine(); } Console.WriteLine(); // Транспонирование и вывод массива int[,] transposed = new int[y, x]; for (int j = 0; j < y; j++) { for (int i = 0; i < x; i++) { transposed[j, i] = m[i, j]; Console.Write(transposed[j, i] + "\t"); } Console.WriteLine(); } Console.ReadKey();

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

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос