vladbardin2014p7d85b
Любой символ может бить представлен числом, по таблице ASCII
vladbardin2014p7d85b
не совсем понимаю суть вопроса, объясните, пожалуйста что вы имеете ввиду по заголовочной частью
vladbardin2014p7d85b
Это не мой код, но фактически, любой символ - это число, поэтому логично сделать каст символа к числу и их отсортировать, а при выводе сделать обратный каст. Это если не менять переведённый выше код. Или же второй вариант - написать изначально код для сортировки символов. Но на практике можно использовать оба варианта
vladbardin2014p7d85b
Ну число будет, абстрактно ровно настолько, насколько абстрактен символ, а то что решение будет в три строки я согласен.
Answers & Comments
Ответ:
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()));
===== PascalABC.NET =====
begin
var h: HashSet<char> := ['A'..'Z', 'a'..'z', '0'..'9', 'А'..'Я', 'а'..'я', 'Ё', 'ё'];
var a := h.ToArray;
var n := a.Length - 1;
var b := MatrGen(5, 5, (i, j) -> a[Random(0, n)]);
b.Println(3);
Writeln;
var t := b.ElementsByRow.Sorted.ToArray;
b := MatrGen(5, 5, (i, j)-> t[5 * i + j]);
b.Print(3)
end.