创建 N 个嵌套的 for 循环

2021-12-11 00:00:00 递归 algorithm for-loop nested-loops c++

有没有办法创建表单的for循环

Is there a way to create for-loops of a form

for(int i = 0; i < 9; ++i) {
    for(int j = 0; j < 9; ++i) {
    //...
        for(int k = 0; k < 9; ++k) { //N-th loop

在编译时不知道 N.理想情况下,如果一定数量的数字被不同的数字替换,我试图找出一种方法来循环遍历数字向量的单独元素以创建每个可能的数字.

without knowing N at the compile time. Ideally I'm trying to figure out a way to loop through separate elements of a vector of digits to create each possible number if a certain amount of digits is replaced with different digits.

推荐答案

您可以使用递归代替基本条件 -

You may use recursion instead with a base condition -

void doRecursion(int baseCondition){

   if(baseCondition==0) return;

   //place your code here

   doRecursion(baseCondition-1);
}  

现在您不需要在编译时提供 baseCondition 值.您可以在调用 doRecursion() 方法时提供它.

Now you don't need to provide the baseCondition value at compile time. You can provide it while calling the doRecursion() method.

相关文章