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

Задание 1

Через консоль спросите у пользователя длинное слово. Выведите список слов, которые можно составить из букв введенного слова.

Задание 2

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

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

Обнулите элементы, находящиеся ниже главной диагонали:

cpp{
  {11, 12, 13, 14, 15},
  { 0, 22, 23, 24, 25},
  { 0,  0, 33, 34, 35},
  { 0,  0,  0, 44, 45},
  { 0,  0,  0,  0, 55},
}
Задание 3

Дан некоторый URL:

cppstd::string url = "http://test.com/dir1/dir2/dir3/page.html";

Даны переменные:

cppint num = 2;
std::string val = "eee";

Замените в URL папку с номером num на значение val:

cpp"http://test.com/dir1/eee/dir3/page.html"