I'm new to C++, coming from a Python background. I wrote the following
code in C++ based on the Python code found here:

http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/302478

//beginning

#include <vector>
#include <iostream.h>
using namespace std;

void looper(vector <vector<int> > nseq, vector<int> comb);
vector <vector<int> > master;

int main() {
        int n, C;
        vector <vector<int> > seq;
        vector<int> holder;
        cout << "Enter constant: ";
        cin >> C;
        cout << "Enter n: ";
        cin >> n;
        for(i=0; i<=n; i++) {
                vector <int> tmp;
                for(int j=0; j<=C; j++) {
                        tmp.push_back(j);
                }
                seq.push_back(tmp);
        }
        looper(seq, holder);
        return 0;
}

void looper(vector <vector<int> > nseq, vector<int> comb) {
        if(nseq.size()>0) {
                vector<int> tseq = nseq.at(0);
                for(int i=0; i<tseq.size(); i++) {
                        vector <vector<int> > gseq = nseq;
                        vector<int> tcomb = comb;
                        gseq.erase(0);
                        tcomb.push_back(tseq[i]);
                        looper(gseq, tcomb);
                }
        } else {
                master.push_back(comb);
        }
}

// end

The program dies on the line:

tcomb.push_back(tseq[i]);

in the recursive function. Is my C++ translation accurate from the
original Python?

-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to