Узровень 10.5 задачніка Rust

Задание 1

Дадзены лік. Выведзіце на экран працэс раскладання ліку на простыя множнікі, як у школе.

Задание 2

Дадзены адвольны двухмерны масіў:

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[
  [ 0, 12, 13, 14, 15],
  [21,  0, 23, 24, 25],
  [31, 32,  0, 34, 35],
  [41, 42, 43,  0, 45],
  [51, 52, 53, 54,  0],
}
Задание 3

Зрабіце функцыю, якая будзе ўстанаўліваць правільную форму назоўніка пасля ліку. Вось як павінна працаваць гэтая функцыя:

rustfunc(1, "яблоко", "яблока", "яблок"); // выведзе "1 яблоко"
func(2, "яблоко", "яблока", "яблок"); // выведзе "2 яблока"
func(3, "яблоко", "яблока", "яблок"); // выведзе "3 яблока"
func(4, "яблоко", "яблока", "яблок"); // выведзе "4 яблока"
func(5, "яблоко", "яблока", "яблок"); // выведзе "5 яблок"

Вось прыклад для двухзначных лікаў:

rustfunc(11, "яблоко", "яблока", "яблок"); // выведзе "11 яблок"
func(12, "яблоко", "яблока", "яблок"); // выведзе "12 яблок"
func(21, "яблоко", "яблока", "яблок"); // выведзе "21 яблоко"
func(23, "яблоко", "яблока", "яблок"); // выведзе "23 яблока"

Наш метад павінен працаваць для лікаў любой даўжыні:

rustfunc(1223421, "яблоко", "яблока", "яблок"); // выведзе "1223421 яблоко"