Úroveň 10.5 úloh C++

Задание 1

Je dáno číslo. Vypište na obrazovku proces rozkladu čísla na prvočísla, jako ve škole.

Задание 2

Je dáno libovolné dvourozměrné pole:

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

Vynulujte prvky její hlavní diagonály:

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

Vytvořte funkci, která bude nastavovat správný tvar podstatného jména po čísle. Tak by měla funkce pracovat:

cppfunc(1, "jablko", "jablka", "jablek"); // vypíše "1 jablko"
func(2, "jablko", "jablka", "jablek"); // vypíše "2 jablka"
func(3, "jablko", "jablka", "jablek"); // vypíše "3 jablka"
func(4, "jablko", "jablka", "jablek"); // vypíše "4 jablka"
func(5, "jablko", "jablka", "jablek"); // vypíše "5 jablek"

Příklad pro dvouciferná čísla:

cppfunc(11, "jablko", "jablka", "jablek"); // vypíše "11 jablek"
func(12, "jablko", "jablka", "jablek"); // vypíše "12 jablek"
func(21, "jablko", "jablka", "jablek"); // vypíše "21 jablko"
func(23, "jablko", "jablka", "jablek"); // vypíše "23 jablka"

Naše metoda musí fungovat pro čísla libovolné délky:

cppfunc(1223421, "jablko", "jablka", "jablek"); // vypíše "1223421 jablko"