# Уровень 10.5 задачника C++

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

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

`{ {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}, }`

Обнулите элементы его главной диагонали:

`{ { 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}, }`

Сделайте функцию, которая будет устанавливать правильную форму существительного после числа. Вот как должна работать эта функция:

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

Вот пример для для двухзначных чисел:

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

Наш метод должен работать для чисел любой длины:

`func(1223421, "яблоко", "яблока", "яблок"); // выведет "1223421 яблоко"`
← →
↑