Ниво 10.8 на задачата Rust

Задание 1

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

Задание 2

Реализирайте алгоритъма "Решето на Ератостен" за намиране на прости числа в зададен интервал.

Задание 3

Даден е произволен двумерен масив:

rust[
  [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],
}

Разменете два зададени реда:

rust[
  [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

Даден е произволен двумерен масив:

rust[
  [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],
}

Получете сумата на колоните на този масив. Резултатът представете като масив от суми:

rust[
  5, 10, 15, 20, 25
}
Задание 5

Даден е низ, съдържащ произволен брой вложени двойки кръгли скоби. Напишете код, който ще провери дали скобите са разположени коректно.

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

rust"()()"

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

rust"(())"

Така е некоректно, тъй като броят отворени скоби не съвпада с броя затворени:

rust"())"

Така е некоректно, тъй като, въпреки че броят отворени скоби съвпада с броя затворени, те са в неправилен ред:

rust"))(("