Programming Forums
User Name Password Register
 

RSS Feed
FORUM INDEX | TODAY'S POSTS | UNANSWERED THREADS | ADVANCED SEARCH

Reply
 
Thread Tools Display Modes
Old Mar 9th, 2007, 9:14 PM   #1
NDawg28
Newbie
 
Join Date: Mar 2007
Posts: 1
Rep Power: 0 NDawg28 is on a distinguished road
VB Phone Number to Name...

I'm doing a problem out of a book I'm self-teaching with, and this particular problem calls for converting a 7 digit phone number into the different combinations of words that can be made from 3 characters corresponding to each of the numbers from 2-9. The code I have so far for this is:
Public Class Form1

Private Sub btnGenerate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGenerate.Click

Dim phoneNumber As String = txtNumber.Text

Dim charNumber2() As Char = {"A", "B", "C"}
Dim charNumber3() As Char = {"D", "E", "F"}
Dim charNumber4() As Char = {"G", "H", "I"}
Dim charNumber5() As Char = {"J", "K", "L"}
Dim charNumber6() As Char = {"M", "N", "O"}
Dim charNumber7() As Char = {"P", "R", "S"}
Dim charNumber8() As Char = {"T", "U", "V"}
Dim charNumber9() As Char = {"W", "X", "Y"}

Dim numberArray(7) As Char

For i As Integer = 0 To 6
numberArray(i) = phoneNumber.Substring(i)
Next

Dim letters1(3) As Char
Dim letters2(3) As Char
Dim letters3(3) As Char
Dim letters4(3) As Char
Dim letters5(3) As Char
Dim letters6(3) As Char
Dim letters7(3) As Char

Select Case numberArray(1)
Case Is = "2"
For k As Integer = 0 To 2
letters1(k) = charNumber2(k)
Next
Case Is = "3"
For k As Integer = 0 To 2
letters1(k) = charNumber3(k)
Next

Case Is = "4"
For k As Integer = 0 To 2
letters1(k) = charNumber4(k)
Next

Case Is = "5"
For k As Integer = 0 To 2
letters1(k) = charNumber5(k)
Next

Case Is = "6"
For k As Integer = 0 To 2
letters1(k) = charNumber6(k)
Next

Case Is = "7"
For k As Integer = 0 To 2
letters1(k) = charNumber7(k)
Next
Case Is = "8"
For k As Integer = 0 To 2
letters1(k) = charNumber8(k)
Next

Case Is = "9"
For k As Integer = 0 To 2
letters1(k) = charNumber9(k)
Next
End Select
Select Case numberArray(2)
Case Is = "2"
For k As Integer = 0 To 2
letters2(k) = charNumber2(k)
Next
Case Is = "3"
For k As Integer = 0 To 2
letters2(k) = charNumber3(k)
Next

Case Is = "4"
For k As Integer = 0 To 2
letters2(k) = charNumber4(k)
Next

Case Is = "5"
For k As Integer = 0 To 2
letters2(k) = charNumber5(k)
Next

Case Is = "6"
For k As Integer = 0 To 2
letters2(k) = charNumber6(k)
Next

Case Is = "7"
For k As Integer = 0 To 2
letters2(k) = charNumber7(k)
Next
Case Is = "8"
For k As Integer = 0 To 2
letters2(k) = charNumber8(k)
Next

Case Is = "9"
For k As Integer = 0 To 2
letters2(k) = charNumber9(k)
Next
End Select
Select Case numberArray(3)
Case Is = "2"
For k As Integer = 0 To 2
letters3(k) = charNumber2(k)
Next
Case Is = "3"
For k As Integer = 0 To 2
letters3(k) = charNumber3(k)
Next

Case Is = "4"
For k As Integer = 0 To 2
letters3(k) = charNumber4(k)
Next

Case Is = "5"
For k As Integer = 0 To 2
letters3(k) = charNumber5(k)
Next

Case Is = "6"
For k As Integer = 0 To 2
letters3(k) = charNumber6(k)
Next

Case Is = "7"
For k As Integer = 0 To 2
letters3(k) = charNumber7(k)
Next
Case Is = "8"
For k As Integer = 0 To 2
letters3(k) = charNumber8(k)
Next

Case Is = "9"
For k As Integer = 0 To 2
letters3(k) = charNumber9(k)
Next
End Select
Select Case numberArray(4)
Case Is = "2"
For k As Integer = 0 To 2
letters4(k) = charNumber2(k)
Next
Case Is = "3"
For k As Integer = 0 To 2
letters4(k) = charNumber3(k)
Next

Case Is = "4"
For k As Integer = 0 To 2
letters4(k) = charNumber4(k)
Next

Case Is = "5"
For k As Integer = 0 To 2
letters4(k) = charNumber5(k)
Next

Case Is = "6"
For k As Integer = 0 To 2
letters4(k) = charNumber6(k)
Next

Case Is = "7"
For k As Integer = 0 To 2
letters4(k) = charNumber7(k)
Next
Case Is = "8"
For k As Integer = 0 To 2
letters4(k) = charNumber8(k)
Next

Case Is = "9"
For k As Integer = 0 To 2
letters4(k) = charNumber9(k)
Next
End Select
Select Case numberArray(5)
Case Is = "2"
For k As Integer = 0 To 2
letters5(k) = charNumber2(k)
Next
Case Is = "3"
For k As Integer = 0 To 2
letters5(k) = charNumber3(k)
Next

Case Is = "4"
For k As Integer = 0 To 2
letters5(k) = charNumber4(k)
Next

Case Is = "5"
For k As Integer = 0 To 2
letters5(k) = charNumber5(k)
Next

Case Is = "6"
For k As Integer = 0 To 2
letters5(k) = charNumber6(k)
Next

Case Is = "7"
For k As Integer = 0 To 2
letters5(k) = charNumber7(k)
Next
Case Is = "8"
For k As Integer = 0 To 2
letters5(k) = charNumber8(k)
Next

Case Is = "9"
For k As Integer = 0 To 2
letters5(k) = charNumber9(k)
Next
End Select
Select Case numberArray(6)
Case Is = "2"
For k As Integer = 0 To 2
letters6(k) = charNumber2(k)
Next
Case Is = "3"
For k As Integer = 0 To 2
letters6(k) = charNumber3(k)
Next

Case Is = "4"
For k As Integer = 0 To 2
letters6(k) = charNumber4(k)
Next

Case Is = "5"
For k As Integer = 0 To 2
letters6(k) = charNumber5(k)
Next

Case Is = "6"
For k As Integer = 0 To 2
letters6(k) = charNumber6(k)
Next

Case Is = "7"
For k As Integer = 0 To 2
letters6(k) = charNumber7(k)
Next
Case Is = "8"
For k As Integer = 0 To 2
letters6(k) = charNumber8(k)
Next

Case Is = "9"
For k As Integer = 0 To 2
letters6(k) = charNumber9(k)
Next
End Select
Select Case numberArray(7)
Case Is = "2"
For k As Integer = 0 To 2
letters7(k) = charNumber2(k)
Next
Case Is = "3"
For k As Integer = 0 To 2
letters7(k) = charNumber3(k)
Next

Case Is = "4"
For k As Integer = 0 To 2
letters7(k) = charNumber4(k)
Next

Case Is = "5"
For k As Integer = 0 To 2
letters7(k) = charNumber5(k)
Next

Case Is = "6"
For k As Integer = 0 To 2
letters7(k) = charNumber6(k)
Next

Case Is = "7"
For k As Integer = 0 To 2
letters7(k) = charNumber7(k)
Next
Case Is = "8"
For k As Integer = 0 To 2
letters7(k) = charNumber8(k)
Next

Case Is = "9"
For k As Integer = 0 To 2
letters7(k) = charNumber9(k)
Next
End Select

For a As Integer = 0 To 2
For b As Integer = 0 To 2
For c As Integer = 0 To 2
For d As Integer = 0 To 2
For z As Integer = 0 To 2
For f As Integer = 0 To 2
For g As Integer = 0 To 2
txtNames.Text += letters1(a) + letters2(b) + letters3(c) + letters4(d) + letters5(z) + letters6(f) + letters7(g)
txtNames.Text &= vbTab
Next
Next
Next
Next
Next
Next
Next
End Sub
End Class

I know that the case structures could have been condensed into one, but I was trying to minimize the memory usage and processing time. My problem is this: Instead of outputing - abcdefg...abcdefh...abcdefi - it will output - abcdefg...abcdefg...abcdefg -, repeating the same combination three times before moving on to the next combination. Anyone know why?
P.S.-- I know this code may be terribly written, so any suggestions for improving the code for better memory usage, etc. would be appreciated.
NDawg28 is offline   Reply With Quote
Old Mar 9th, 2007, 10:27 PM   #2
DaWei
Resident Grouch
 
DaWei's Avatar
 
Join Date: Jun 2005
Posts: 6,453
Rep Power: 10 DaWei is on a distinguished road
Please read the forum's rules/FAQ and the "How to Post a Question" thread. Things like that should come before your first post.
__________________
Abstraction doesn't make it impossible to write bad code; it makes it possible to write superior code.
Contributor's Corner: Grumpy on C++ Exceptions DaWei on Pointers
DaWei is offline   Reply With Quote
Old Mar 10th, 2007, 11:10 AM   #3
Ooble
I eat cake for breakfast.
 
Ooble's Avatar
 
Join Date: Jul 2004
Location: In my box.
Posts: 4,434
Rep Power: 9 Ooble is on a distinguished road
The goggles... they do nothing!

In all seriousness, I recommend listening to DaWei, especially when it comes to the part in the rules about [code] tags.
__________________
Me :: You :: Them
Ooble is offline   Reply With Quote
Old Mar 10th, 2007, 12:24 PM   #4
AICkieran
Programmer
 
Join Date: Jan 2006
Location: UK
Posts: 55
Rep Power: 3 AICkieran is on a distinguished road
Would there be no way to create a mod/simple regx for VBul that puts code into code tags
AICkieran is offline   Reply With Quote
Old Mar 10th, 2007, 1:31 PM   #5
DaWei
Resident Grouch
 
DaWei's Avatar
 
Join Date: Jun 2005
Posts: 6,453
Rep Power: 10 DaWei is on a distinguished road
I would suggest that a person seeking free, contributory help could politely aid the process by reading faqs, rules, and "How to Post" threads.
__________________
Abstraction doesn't make it impossible to write bad code; it makes it possible to write superior code.
Contributor's Corner: Grumpy on C++ Exceptions DaWei on Pointers
DaWei is offline   Reply With Quote
Old Mar 10th, 2007, 5:08 PM   #6
AICkieran
Programmer
 
Join Date: Jan 2006
Location: UK
Posts: 55
Rep Power: 3 AICkieran is on a distinguished road
Aye, I get that, any question [as far as i know] I have ever come here to seek answers for has been properly formed and asked in the best way I possibly could.


It was just a suggestion that may, or may not make peoples lives easier :-)

Thanks

Kieran.
AICkieran is offline   Reply With Quote
Old Mar 10th, 2007, 7:58 PM   #7
DaWei
Resident Grouch
 
DaWei's Avatar
 
Join Date: Jun 2005
Posts: 6,453
Rep Power: 10 DaWei is on a distinguished road
It isn't terribly difficult or time-consuming to type "[ code ][ /code ]"; particulary when you parcel it out among the questioners, rather than require the administrator to revise the software package. Perhaps there's some truth to the recent research that suggests a significant percentage of younger generations have an undue sense of entitlement. Not every thing in life comes "easier" or on a gilded platter. On the other hand, perhaps here's the chance to go write a code-bot to replace budding code-monkeys. What could be easier than standing in the unemployment line.
__________________
Abstraction doesn't make it impossible to write bad code; it makes it possible to write superior code.
Contributor's Corner: Grumpy on C++ Exceptions DaWei on Pointers
DaWei is offline   Reply With Quote
Old Mar 10th, 2007, 8:32 PM   #8
AICkieran
Programmer
 
Join Date: Jan 2006
Location: UK
Posts: 55
Rep Power: 3 AICkieran is on a distinguished road
While I agree with most of what you said, I personally disagree with the last part about younger generations expecting everything for nothing, I'm 17 and live in the UK, i messed up high school for personal reasons and as a result I'm working my ass off (both in a job and in college) trying to better myself and put myself in a situation where i can contribute to society rather than leech, as are many of my friends.

Have their not been lazy people in all generations? Just because there are a few lazy, leeching, idiots that aren't worth the oxygen they intake doesn't mean to say we all [or as a majority] are.

Just my two cents.

Thanks.
AICkieran is offline   Reply With Quote
Old Mar 10th, 2007, 9:19 PM   #9
DaWei
Resident Grouch
 
DaWei's Avatar
 
Join Date: Jun 2005
Posts: 6,453
Rep Power: 10 DaWei is on a distinguished road
I would never maintain that all young people are lazy. There are too many exceptions right here on this board. I also can't substantiate the second-hand report of the study I recently saw, which is why I used the word, 'perhaps'. I can, however, observe tendencies for myself, and draw reasonable conclusions.
__________________
Abstraction doesn't make it impossible to write bad code; it makes it possible to write superior code.
Contributor's Corner: Grumpy on C++ Exceptions DaWei on Pointers
DaWei is offline   Reply With Quote
Old Mar 10th, 2007, 9:40 PM   #10
AICkieran
Programmer
 
Join Date: Jan 2006
Location: UK
Posts: 55
Rep Power: 3 AICkieran is on a distinguished road
In that case, i fully agree with you.

About my previous post, i suggested the mod as a possible solution to people who didn't read the rules before posting (many don't, as most forum rules are generic, at best) it wasn't to help the lazy be lazier, looking back, yeah, i agree, they should read the rules and do their best to make a question understandable.

Thanks.
AICkieran is offline   Reply With Quote
Reply

Bookmarks

« Previous Thread in Forum | Next Thread in Forum »

Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
c-unix-childprocesses-random number programmingnoob C 7 Feb 6th, 2007 8:39 PM
Jython Jessehk Coder's Corner Lounge 2 Feb 5th, 2006 4:35 AM
[tutorial] Python for programming beginners coldDeath Python 30 Dec 14th, 2005 11:35 AM
FiveDigit + RandomeNumber Game. TecBrain Java 0 Nov 18th, 2005 2:53 PM
Number Systems... Ade Coder's Corner Lounge 7 Jan 19th, 2005 5:32 AM




DaniWeb IT Discussion Community
All times are GMT -5. The time now is 7:30 PM.

Powered by vBulletin® Version 3.7.0, Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Copyright ©2007 DaniWeb® LLC