/****************************************************************************** * Decode a text in morse * * --------------------------------------------------------------------------- * * SAMPLE RUN: * * File morse.dat contains: * *.--- . ...-.- ... ..- .. ... ...-.- -.-. --- -. - . -. - ...-.- -.. . ...-.- * *...- --- ..- ... ...-.- ...- --- .. .-. -.-.- ...-.- * *.--- . .- -. -....- .--. .. . .-. .-. . ...-.- -- --- .-. . .- ..- ...-.- * *...--- * * * * Screen output: * *.--- . ...-.- ... ..- .. ... ...-.- -.-. --- -. - . -. - ...-.- -.. . ...-.- * * je suis content de * *...- --- ..- ... ...-.- ...- --- .. .-. -.-.- ...-.- * * vous voir. * *.--- . .- -. -....- .--. .. . .-. .-. . ...-.- -- --- .-. . .- ..- ...-.- * * jean-pierre moreau * *...--- * * * * Program terminated. * * * * C++ Release By Jean-Pierre Moreau, Paris. * * (www.jpmoreau.fr) * ******************************************************************************/ #include #include typedef char Str6[7]; Str6 morse[46]; char alpha[46]; char ligne[81], decodee[81]; Str6 mot; FILE *fp1; void main() { unsigned int i; int count, j, jj; // initialize table of morse signs strcpy(morse[0],"."); strcpy(morse[1],"-"); strcpy(morse[2],".."); strcpy(morse[3],".-"); strcpy(morse[4],"-."); strcpy(morse[5],"--"); strcpy(morse[6],"..."); strcpy(morse[7],"..-"); strcpy(morse[8],".-."); strcpy(morse[9],".--"); strcpy(morse[10],"-.."); strcpy(morse[11],"--."); strcpy(morse[12],"-.-"); strcpy(morse[13],"---"); strcpy(morse[14],"...."); strcpy(morse[15],"...-"); strcpy(morse[16],"..-."); strcpy(morse[17],".-.."); strcpy(morse[18],".-.-"); strcpy(morse[19],".--."); strcpy(morse[20],"..--"); strcpy(morse[21],".---"); strcpy(morse[22],"-..."); strcpy(morse[23],"-.-."); strcpy(morse[24],"-..-"); strcpy(morse[25],"--.."); strcpy(morse[26],"---."); strcpy(morse[27],"--.-"); strcpy(morse[28],"-.--"); strcpy(morse[29],".----"); strcpy(morse[30],"..---"); strcpy(morse[31],"...--"); strcpy(morse[32],"....-"); strcpy(morse[33],"....."); strcpy(morse[34],"-...."); strcpy(morse[35],"--..."); strcpy(morse[36],"---.."); strcpy(morse[37],"----."); strcpy(morse[38],"-----"); strcpy(morse[39],"-.-.-"); strcpy(morse[40],"--..--"); strcpy(morse[41],"---..."); strcpy(morse[42],"-....-"); strcpy(morse[43],"--..--"); strcpy(morse[44],"...-.-"); strcpy(morse[45],"\n"); // initialize table of alphanumeric characters alpha[0]='e'; alpha[1]='t'; alpha[2]='i'; alpha[3]='a'; alpha[4]='n'; alpha[5]='m'; alpha[6]='s'; alpha[7]='u'; alpha[8]='r'; alpha[9]='w'; alpha[10]='d'; alpha[11]='g'; alpha[12]='k'; alpha[13]='o'; alpha[14]='h'; alpha[15]='v'; alpha[16]='f'; alpha[17]='l'; alpha[18]='*'; alpha[19]='p'; alpha[20]='*'; alpha[21]='j'; alpha[22]='b'; alpha[23]='c'; alpha[24]='x'; alpha[25]='z'; alpha[26]='*'; alpha[27]='q'; alpha[28]='y'; alpha[29]='1'; alpha[30]='2'; alpha[31]='3'; alpha[32]='4'; alpha[33]='5'; alpha[34]='6'; alpha[35]='7'; alpha[36]='8'; alpha[37]='9'; alpha[38]='0'; alpha[39]='.'; alpha[40]=','; alpha[41]=':'; alpha[42]='-'; alpha[43]='?'; alpha[44]=' '; alpha[45]='\n'; fp1 = fopen("morse.dat","r"); strcpy(decodee,""); while (!(feof(fp1))) { fgets(ligne,81,fp1); printf("%s", ligne); jj=0; count=0; for (i=0; i