
Помогите пожалуйста с решением... Заполнить массив [X,Y] случайными двузначными числами,
распечатать в табличном виде, а затем транспонировать (строки сделать столбцами, а столбцы строками) и распечатать рядом с первым массивом. Язык C# Напишите пожалуйста под неё программу

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

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(10,99);
}
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();
}
}
}




Конечно! Вот пример программы на C#, которая заполняет массив случайными двузначными числами, выводит его в табличном виде, затем транспонирует его и выводит рядом с исходным массивом:
csharpusing System;
class Program
{
static void Main()
{
// Размерность массива
int rows = 5;
int columns = 3;
// Создание массива и заполнение случайными числами
int[,] array = new int[rows, columns];
Random random = new Random();
for (int i = 0; i < rows; i++)
{
for (int j = 0; j < columns; j++)
{
array[i, j] = random.Next(10, 100);
}
}
// Вывод исходного массива в табличном виде
Console.WriteLine("Исходный массив:");
PrintArray(array);
// Транспонирование массива
int[,] transposedArray = TransposeArray(array);
// Вывод транспонированного массива рядом с исходным массивом
Console.WriteLine("\nТранспонированный массив:");
PrintArraySideBySide(array, transposedArray);
}
static void PrintArray(int[,] array)
{
int rows = array.GetLength(0);
int columns = array.GetLength(1);
for (int i = 0; i < rows; i++)
{
for (int j = 0; j < columns; j++)
{
Console.Write($"{array[i, j],3} ");
}
Console.WriteLine();
}
}
static int[,] TransposeArray(int[,] array)
{
int rows = array.GetLength(0);
int columns = array.GetLength(1);
int[,] transposedArray = new int[columns, rows];
for (int i = 0; i < rows; i++)
{
for (int j = 0; j < columns; j++)
{
transposedArray[j, i] = array[i, j];
}
}
return transposedArray;
}
static void PrintArraySideBySide(int[,] array1, int[,] array2)
{
int rows = array1.GetLength(0);
int columns = array1.GetLength(1);
for (int i = 0; i < rows; i++)
{
for (int j = 0; j < columns; j++)
{
Console.Write($"{array1[i, j],3} ");
}
Console.Write(" ");
for (int j = 0; j < rows; j++)
{
Console.Write($"{array2[i, j],3} ");
}
Console.WriteLine();
}
}
}
Программа создает двумерный массив array
заданной размерности (rows
строк и columns
столбцов), заполняет его случайными двузначными числами и выводит на экран в табличном виде. Затем она транспонирует массив с помощью метода TransposeArray
и выводит транспонированный массив рядом с исходным массивом с помощью метода PrintArraySideBySide
.
Пожал


Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili