Program that i am having trouble with having hard time how to figure out to assign non-zero digit to a variable!

Create a variable first as integer 
Assign first non‐zero digit of your V‐number to the variable first 
Create a variable last as integer 
Assign last non‐zero digit of your V‐number to the variable last 
Multiply first number last times
Display the result 

Dim first As Integer
Dim last As Integer
Console.WriteLine(" Enter in your V number ")
first = Console.ReadLine
last = Console.ReadLine

Perhaps the most useful tip you can know in learning to program, though you won't find it in a book, is to ask for help, giving _all_ information about the problem, whether you think it's useful of not! :-)

You've posted the problem code. This is good. You haven't specified what the error appears to be, nor which version of VB you're using. This is not so good, because we have to guess a bit.

When posting on technical forums, other programmers will often look at such a question, think "insufficient information to draw a conclusion" and not answer. They have lots to do, and they're usually not going to post a question and wait for you to get around to answering, so that they can consider the question again. Don't give them that excuse!

Microsoft have changed VB quite a bit between versions, and without knowing which version, and what error, exactly, the compiler is giving you, or what wrong result your program is coming up with, there's a wide field to choose from - though MathMate may have a better understanding of where you're at. :-)

For me, reading that, I would first suspect your use of Console.ReadLine in two ways:
1. Should it be Console.ReadLine() or Console.ReadLine(name_of_stream_to_read)?
2. What does Console.ReadLine return? You've declared first and last as integers, but readline type functions commonly return strings.

Your "non-zero" remark makes me think maybe the program is working, but always leaving you with zero in first and last? If so, it could be that Console.ReadLine is returning a string, so the value isn't getting into the integer; you need to get the string's value before you can assign it.

Maybe.

You might check your language reference help for the formal definition of Console.ReadLine and see what it is actually doing.

I just read your question again, and I now think that, given an input string, you want to find the first non-zero digit in it. Though again, I could be wrong.

So if the input is "A046", you want "4", and if it's "0.0029x" you want "2".

If that's the question, then your approach should be:

1. Read in a string.
2. Using a loop, read each character along the string from left to right until you come to a digit "1" through "9" inclusive.
3. Return that digit, or capture it in a variable.

I used the very verty old version of BASIC on my PC to write this up:

Print "Enter a string containing at least one digit 1 through 9"

input Instring$

REM starting at the left, walk along the string until we find what we're looking for

posn=1

while (posn < len(Instring$) and (mid$(Instring$, posn,1)<"1" or mid$(Instring$, posn,1)>"9"))
posn=posn+1
wend

REM posn is now either pointing to what we want, or there isn't one
REM we need to distinguish between the two cases

if mid$(Instring$, posn,1)>="1" and mid$(Instring$, posn,1)<="9" then
print "We got one - ";mid$(Instring$, posn,1)
else
print "there isn't a usable digit here!"
end if

sorry for not gving enough information but i did end up getting it.

To assign the non-zero digit of a number to a variable, you can use the following steps:

1. Ask the user to enter their V-number.
2. Read the input from the user and store it in a variable (let's call it `vNumber`).
3. Create a variable `first` of type `Integer` to store the first non-zero digit.
4. Create a variable `last` of type `Integer` to store the last non-zero digit.
5. Convert the `vNumber` to a string to make it easier to process.
6. Iterate through each character in the `vNumber` string until you find the first non-zero digit.
7. Convert the first non-zero digit found to an integer and assign it to the `first` variable.
8. Iterate through each character in the `vNumber` string starting from the end until you find the last non-zero digit.
9. Convert the last non-zero digit found to an integer and assign it to the `last` variable.
10. Multiply the values of `first` and `last` together and store the result in a variable (let's call it `result`).
11. Display the result to the user.

Here's an example implementation in VB.NET:

```vb
Dim vNumber As Integer
Dim first As Integer
Dim last As Integer

Console.WriteLine("Enter your V-number: ")
vNumber = Console.ReadLine()

Dim vNumberString As String = vNumber.ToString()

For Each digit As Char In vNumberString
If digit <> "0" Then
first = Integer.Parse(digit.ToString())
Exit For
End If
Next

For i As Integer = vNumberString.Length - 1 To 0 Step -1
Dim digit As Char = vNumberString(i)
If digit <> "0" Then
last = Integer.Parse(digit.ToString())
Exit For
End If
Next

Dim result As Integer = first * last

Console.WriteLine("Result: " & result)
```

This code prompts the user to enter their V-number, then it finds the first and last non-zero digits in the number and multiplies them together. Finally, it displays the result to the user.