Livello 10.5 del libro di problemi C++

Задание 1

Dato un numero. Visualizza sullo schermo il processo di scomposizione del numero in fattori primi, come si fa a scuola.

Задание 2

Data una matrice bidimensionale arbitraria:

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

Azzera gli elementi della sua diagonale principale:

cpp{
  { 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

Crea una funzione che imposterà la forma corretta del sostantivo dopo il numero. Ecco come dovrebbe funzionare questa funzione:

cppfunc(1, "mela", "mele", "mele"); // visualizzerà "1 mela"
func(2, "mela", "mele", "mele"); // visualizzerà "2 mele"
func(3, "mela", "mele", "mele"); // visualizzerà "3 mele"
func(4, "mela", "mele", "mele"); // visualizzerà "4 mele"
func(5, "mela", "mele", "mele"); // visualizzerà "5 mele"

Ecco un esempio per numeri a due cifre:

cppfunc(11, "mela", "mele", "mele"); // visualizzerà "11 mele"
func(12, "mela", "mele", "mele"); // visualizzerà "12 mele"
func(21, "mela", "mele", "mele"); // visualizzerà "21 mela"
func(23, "mela", "mele", "mele"); // visualizzerà "23 mele"

Il nostro metodo dovrebbe funzionare per numeri di qualsiasi lunghezza:

cppfunc(1223421, "mela", "mele", "mele"); // visualizzerà "1223421 mela"