// Сортировка двумерного массива пузырьком по возрастанию
for (int i = 0; i < arr.Length - 1; i++)
{
for (int j = 0; j < arr.Length - i - 1; j++)
{
if (arr[j / M, j % M] > arr[(j + 1) / M, (j + 1) % M])
{
int temp = arr[j / M, j % M];
arr[j / M, j % M] = arr[(j + 1) / M, (j + 1) % M];
arr[(j + 1) / M, (j + 1) % M] = temp;
}
}
}
// Вывод массива на экран
for (int i = 0; i < N; i++)
{
for (int j = 0; j < M; j++)
{
Console.Write(arr[i, j] + "\t");
}
Console.WriteLine();
}
Console.WriteLine();
Console.ReadKey();
}
}
0 votes Thanks 1
Starlik69
int N = 7, M = 5; int[,] arr = new int[N, M]; Random random = new Random(); for (int i = 0; i < N; i++) { for (int j = 0; j < M; j++) { arr[i, j] = random.Next(10, 51); // от 10 до 50 Console.Write(arr[i, j] + "\t"); } Console.WriteLine(); } Console.WriteLine(); for (int i = 0; i < N; i++) Console.WriteLine(string.Join("\t", Enumerable.Range(0, arr.GetLength(1)).Select(x => arr[i, x]).OrderBy(x => x).ToArray()));
Answers & Comments
using System;
class Program
{
static void Main()
{
int N = 7, M = 5;
int[,] arr = new int[N, M];
Random random = new Random();
// Заполнение массива
for (int i = 0; i < N; i++)
{
for (int j = 0; j < M; j++)
{
arr[i, j] = random.Next(10, 51); // от 10 до 50
}
}
// Вывод массива на экран
for (int i = 0; i < N; i++)
{
for (int j = 0; j < M; j++)
{
Console.Write(arr[i, j] + "\t");
}
Console.WriteLine();
}
Console.WriteLine();
// Сортировка двумерного массива пузырьком по возрастанию
for (int i = 0; i < arr.Length - 1; i++)
{
for (int j = 0; j < arr.Length - i - 1; j++)
{
if (arr[j / M, j % M] > arr[(j + 1) / M, (j + 1) % M])
{
int temp = arr[j / M, j % M];
arr[j / M, j % M] = arr[(j + 1) / M, (j + 1) % M];
arr[(j + 1) / M, (j + 1) % M] = temp;
}
}
}
// Вывод массива на экран
for (int i = 0; i < N; i++)
{
for (int j = 0; j < M; j++)
{
Console.Write(arr[i, j] + "\t");
}
Console.WriteLine();
}
Console.WriteLine();
Console.ReadKey();
}
}
int[,] arr = new int[N, M];
Random random = new Random();
for (int i = 0; i < N; i++)
{
for (int j = 0; j < M; j++)
{
arr[i, j] = random.Next(10, 51); // от 10 до 50
Console.Write(arr[i, j] + "\t");
}
Console.WriteLine();
}
Console.WriteLine();
for (int i = 0; i < N; i++)
Console.WriteLine(string.Join("\t", Enumerable.Range(0, arr.GetLength(1)).Select(x => arr[i, x]).OrderBy(x => x).ToArray()));