Nível 10.8 do livro de exercícios Rust

Задание 1

Escreva um programa que verifique se é possível obter uma string a partir de outra reorganizando suas letras.

Задание 2

Implemente o algoritmo "Crivo de Eratóstenes" para buscar números primos em um intervalo determinado.

Задание 3

Dada uma matriz bidimensional arbitrária:

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

Troque a posição de duas linhas especificadas:

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

Dada uma matriz bidimensional arbitrária:

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

Obtenha a soma das colunas desta matriz. Apresente o resultado na forma de um array de somas:

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

Dada uma string contendo qualquer quantidade de parênteses circulares pares aninhados. Escreva um código que verifique se os parênteses estão dispostos corretamente.

Assim está correto:

rust"()()"

Assim está correto:

rust"(())"

Assim está incorreto, pois a quantidade de parênteses abertos não coincide com a quantidade de fechados:

rust"())"

Assim está incorreto, pois, embora a quantidade de parênteses abertos coincida com a quantidade de fechados, a ordem deles está errada:

rust"))(("