Recursão de for's
Eu tentei descobrir como fazer isso por um bom tempo e não está funcionando como planejado; Estou escrevendo um código onde há 1 a k números, preciso encontrar todas as combinações possíveis sem repetições. por exemplo. para 3: 1, 2, 3, 12, 13.
Exemplo para contar números de 4 dígitos com 1, 2, 3, 4, 5.
int k = 5;
for (int p = 0; p < k; p++)
{
for (int i = p+1; i < k; i++)
{
for (int j = i + 1; j < k; j++)
{
for (int h = j + 1; h < k; h++)
{
cout << p + 1 << i + 1 << j + 1 << h + 1 << endl;
}
}
}
}
E há um exemplo para o número de 3 dígitos com 1, 2, 3.
int k = 4
for (int p = 0; p < k; p++)
{
for (int i = p+1; i < k; i++)
{
for (int j = i + 1; j < k; j++)
{
cout << p + 1 << i + 1 << j + 1 << endl;
}
}
}
Penso que, para contar a posição possível de n dígitos, sem repetir, preciso de n para. E eu não sei como fazê-lo sem recursão, que não funciona quando eu faço. Meu objetivo é obter uma recursão que conte e imprima possíveis posições para n dígitos.