#include char W[8][4]={"ABC","DEF","GHI","JKL","MNO","PRS","TUV","XYZ"}; char ord[100],t[100]; void MLX(int k, int pos){ if(ord[k]==0){ //Vi har natt slutet pa den inmatade sifferfoljden. t[pos]=0; //Markera ett slut pa det bildade ordet och skriv ut det. printf("%s\n", t); return; } t[pos]=W[ord[k]-'2'][0]; MLX(k+1,pos+1); //En siffra ger en bokstav if(ord[k+1]==ord[k]) { t[pos]=W[ord[k]-'2'][1]; MLX(k+2,pos+1); //Tva siffror ger en bokstav if(ord[k+2]==ord[k]) { t[pos]=W[ord[k]-'2'][2]; MLX(k+3,pos+1); //Tre siffror ger en bokstav } } } int main() { printf("Siffersekvens ? "); scanf("%s", ord); MLX(0,0); return 0; }