Уровень 10.8 задачника Dart

Задание 1

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

Задание 2

Реализуйте алгоритм "Решето Эратосфена" для поиска простых чисел в заданном промежутке.

Задание 3

Дан произвольный двухмерный список:

dartList<List<int>> lst = [
  [11, 12, 13, 14, 15],
  [21, 22, 23, 24, 25],
  [31, 32, 33, 34, 35],
  [41, 42, 43, 44, 45],
  [51, 52, 53, 54, 55],
];

Переставьте местами два заданных ряда:

dartList<List<int>> lst = [
  [51, 52, 53, 54, 55],
  [21, 22, 23, 24, 25],
  [31, 32, 33, 34, 35],
  [41, 42, 43, 44, 45],
  [11, 12, 13, 14, 15],
];
Задание 4

Дан произвольный двухмерный список:

dartList<List<int>> lst = [
  [1, 2, 3, 4, 5],
  [1, 2, 3, 4, 5],
  [1, 2, 3, 4, 5],
  [1, 2, 3, 4, 5],
  [1, 2, 3, 4, 5],
];

Получите сумму столбцов этого списка. Результат представьте в виде списка сумм:

dartList<int> [
  5, 10, 15, 20, 25
]
Задание 5

Дана строка, содержащая в себе любое количество вложенных парных круглых скобок. Напишите код, который проверит, что скобки расположены корректно.

Так корректно:

dart'()()'

Так корректно:

dart'(())'

Так некорректно, так как количество открытых скобок не совпадает с количеством закрытых:

dart'())'

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

dart'))(('