Telephone Loop issue

I'm a beginner programmer, this is my fourth program I'm on and I'm stumbled and dumbfounded at this. My issue with this program is that I'm trying to get it to loop until the user chooses to exit the program with a '#'. The program compiles and works when it's just supposed to read a set of seven letters and convert them to numbers. Any help and advice would be much appreciated. Thanks.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
#include <iostream>
#include <iomanip>
#include <string>
using namespace std;


int main()
{
    
    int counter;
    
    char phoneNumber;
    
  
    cout << "\nEnter a phone number in letters only." 
         << endl << endl;
	cout << "If you want to terminate the program, enter #."
		<< endl << endl;

	for (counter = 0; counter < 7; counter ++)
{
     cin >> phoneNumber;

      if(counter == 3)
         cout << "-";
	
     if(phoneNumber >= 'A' && phoneNumber <= 'Z' 
        || phoneNumber >= 'a' && phoneNumber <= 'z')

		{
     switch(phoneNumber)
{
         case 'A':
         case 'a':
         case 'B':
         case 'b':
         case 'C':
         case 'c':
             cout << 2;
             break;
         case 'D':
         case 'd':
         case 'E':
         case 'e':
         case 'F':
         case 'f':
             cout << 3;
             break;
         case 'G':
         case 'g':
         case 'H':
         case 'h':
         case 'I':
         case 'i':
             cout << 4;
             break;
             
         case 'J':
         case 'j':
         case 'K':
         case 'k':
         case 'L':
         case 'l':
             cout << 5;
             break;
         case 'M':
         case 'm':
         case 'N':
         case 'n':
         case 'O':
         case 'o':
             cout << 6;
             break;
         case 'P':
         case 'p':
         case 'Q':
         case 'q':
         case 'R':
         case 'r':
         case 'S':
         case 's':
             cout << 7;
             break;
             
         case 'T':
         case 't':
         case 'U':
         case 'u':
         case 'V':
         case 'v':
             cout << 8;
             break;
             
         case 'W':
         case 'w':
         case 'X':
         case 'x':
         case 'Y':
         case 'y':
         case 'Z':
         case 'z':
             cout << 9;
             break;     
	 }
}
}
	cout << endl << endl;
        return 0;
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
#include <iostream>
#include <iomanip>
#include <string>
#include <ctype.h>
using namespace std;


int main()
{
    
    int counter = 0;
    char phoneNumber;
  
    cout << "If you want to terminate the program, enter #." << endl << endl;
	cout << "\nEnter a phone number in letters only." << endl << endl;
		cin >> phoneNumber;
		phoneNumber = toupper(phoneNumber);    
	
	while (phoneNumber != '#')     

	{
		if(counter == 3)
        cout << "-";
	

	    if(phoneNumber >= 'A' && phoneNumber <='D')
	    {
             cout << 2;
	    }
		else if (phoneNumber >= 'D' && phoneNumber <='F')
	    {
		cout << 3;
		}
		else if (phoneNumber >= 'G' && phoneNumber <='I')
		{
			cout << 4;
		}
        else if (phoneNumber >= 'J' && phoneNumber <='L') 
		{
			cout << 5;
		}
		else if (phoneNumber >= 'M' && phoneNumber <='O')
		{
			cout << 6;
		}
		else if (phoneNumber >= 'P' && phoneNumber <='S')
		{
			cout << 7;
		}
         else if (phoneNumber >= 'T' && phoneNumber <='V')  
		 {
			 cout << 8;
		}
		else if (phoneNumber >= 'W' && phoneNumber <='Z')
		{
            cout << 9;
		 }
		else if (phoneNumber == '#')
		{
			cout << "invalid input";
			break;
		}
		counter++; 
		if (counter == 7)
		{
			cout << endl;
			counter = 0;
		}
		cin >> phoneNumber;
		phoneNumber = toupper(phoneNumber);
	
	}

	
        return 0;

}
- Something like this i suppose

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43

char f;

for( int i=0;i<7;i++)
{
do
{
cout<<"enter phone number in letters"<<endl;
cin>>f;
f= toupper(f);
if (f=="#')
{
break;
}
}
while( f<'A' || 'Z'<f) ;


}
quit= false;

do
{
switch(f)
{

case 'A':

break;

case 'B':

break;

// more of that

case '#':
quit=true;
break;
}
while(!quit)

 
Last edited on
Topic archived. No new replies allowed.