I am trying to write a program that takes a number sequence and converts it to a
ID: 3555041 • Letter: I
Question
I am trying to write a program that takes a number sequence and converts it to a word. All letters of the alphabet as assigned numbers the same as found on a telephone. I have written the program so far to do one letter at a time, but I need it to do an entire word and then display the number sequence. Please, when you answer, don't just give the answer. Explain why it is. This is what I have so far.
#include <iostream> //Includes library file for input / output functionality
#include <cstdlib>
#include <cmath>
using namespace std;
int main()
{
//Declaration of variables
char cCharacter = 0; // User inputed character
int cNumber = 0; // Converted numbers from inputed characters
//Beginning of main program
cout << "This program converts inputted characters into numbers"<<endl;
cout<<"based on the telephone digit scheme"; //Explanation of program
while ( cCharacter != '0')
{
cout << endl <<"Please hit 0 to exit, or enter a word one character at a time: ";
cin >> cCharacter;
cCharacter = toupper (cCharacter);
if (cCharacter == '0')
{
break;
}
switch (cCharacter)
{
case 'A':
case 'B':
case 'C':
cNumber = 2;
break;
case 'D':
case 'E':
case 'F':
cNumber = 3;
break;
case 'G':
case 'H':
case 'I':
cNumber = 4;
break;
case 'J':
case 'K':
case 'L':
cNumber = 5;
break;
case 'M':
case 'N':
case 'O':
cNumber = 6;
break;
case 'P':
case 'Q':
case 'R':
case 'S':
cNumber = 7;
break;
case 'T':
case 'U':
case 'V':
cNumber = 8;
break;
case 'W':
case 'X':
case 'Y':
case 'Z':
cNumber = 9;
break;
}
cout << "The number associated with the letter "<< cCharacter <<" is: "<<cNumber <<endl;
}
return 0;
}
Explanation / Answer
#include <iostream> //Includes library file for input / output functionality
#include <cstdlib>
#include <cmath>
#include<cstring>
using namespace std;
int main()
{
//Declaration of variables
char cCharacter = 0; // User inputed character
int cNumber = 0; // Converted numbers from inputed characters
//Beginning of main program
cout << "This program converts inputted characters into numbers"<<endl;
cout<<"based on the telephone digit scheme"; //Explanation of program
cout<<endl<<"enter a word and hit 'ENTER' to end inputting : ";
string str;
cin>>str;
int l;
l=str.length();
int data[l];
int j=0;
while ( j!=l)
{
cCharacter=str[j];
cCharacter = toupper (cCharacter);
if (cCharacter == '0')
{
break;
}
switch (cCharacter)
{
case 'A':
case 'B':
case 'C':
cNumber = 2;
break;
case 'D':
case 'E':
case 'F':
cNumber = 3;
break;
case 'G':
case 'H':
case 'I':
cNumber = 4;
break;
case 'J':
case 'K':
case 'L':
cNumber = 5;
break;
case 'M':
case 'N':
case 'O':
cNumber = 6;
break;
case 'P':
case 'Q':
case 'R':
case 'S':
cNumber = 7;
break;
case 'T':
case 'U':
case 'V':
cNumber = 8;
break;
case 'W':
case 'X':
case 'Y':
case 'Z':
cNumber = 9;
break;
}
data[j]=cNumber;
j++;
}
cout<<endl;
for(j=0;j<l;j++)
cout<<data[j];
}
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.