Ripensandoci forse ho capito cosa intendi, e soprattutto ho deciso di aiutarti dal momento che sei uno studente e che stai facendo i primi passi nel forum. Comunque attenzione, non sarò sempre così benevolo..
Il tuo compito, se ho capito bene, è questo:
es. N = 3 --> 000 001 010 011 100 101 110 111
Se è così questo è il codice ricorsivo: ovviamente sta alla tua *onestà intellettuale* studiarlo a fondo (
, è semplicissimo..) e non limitarli a scopiazzarlo; in caso contrario tutto sarà vano.
codice:
#include<iostream>
#include <string>
using namespace std;
void printBit( int num, string binary){
if ( n==0 ){
cout << binary << endl;}
else{
printBit( num-1, binary + "0" );
printBit( num-1, binary + "1" );
}
}
int main(){
string binary="";
int n;
cin >> num;
printBit(num, binary);
system("pause");
return 0;
}
Ciao