duminică, 4 noiembrie 2012

Sa se genereze cuvintele de k litere care incep cu o vocala si se termina cu o consoana.

# include <iostream.h>
# include <stdio.h>
# include <string.h>
int v[100],k,i,n;
char a[100],b[100];
void afisare (int k)
{for(i=1; i<=k; i++)
{b[i-1]=a[v[i]-1];
b[k]=0;}
if(strchr("aeiouAEIOU",b[0])!=0&&strchr("gtbcfhjklmnpqrsvwxyzBCDFGHJKLMNPQRSTVWXYZ",b[k-1])!=0)
            if(strlen(b)>=2)
cout<<b;
cout<<endl;}
int cont (int k)
{for(i=1; i<=k-1; i++)
            if(v[i]==v[k])
                        return 0;

return 1;}
void back(int k)
{int i;
for(i=1; i<=n; i++)
{v[k]=i;
if(cont(k))
{afisare(k);
if(k<n)
            back(k+1);}}}
int main ()
{cin>>a;
n=strlen(a);
back(1);}

Niciun comentariu:

Trimiteți un comentariu