Você está na página 1de 1

#include<fstream>

using namespace std;


ifstream f("morse.in");
ofstream g("morse.out");
int n, k, i, x[10], am, ev;
char a[20]={" -."};
int mult_val()
{if(x[k]<2)
{x[k]++;
return 1;
}
return 0;
}
int validare()
{if(x[1]==2||x[n]==2)
return 0;
return 1;}
void tipar()
{for(i=1;i<=k;i++)
g<<a[x[i]]<<' ';
g<<endl;}
void generare()
{k=1;x[k]=0;
while(k>0)
{ do
{am=mult_val();
ev=validare();
}while(am&&!ev);
if(am)
if(k==n)
tipar();
else
{k++;
x[k]=0;}
else
k--;}
}
main()
{f>>n;
generare();
f.close();
g.close();
}

Você também pode gostar