' Visual Basic 2008 9.0 .NET Examples - Introduction to Procedures - Procedures and Functions : Module Example1 Sub Main() Dim menu As Char Dim value As Decimal ' Console.Write("1 centimetres -> inches / 2 - inches -> centimetres : ") menu = Console.ReadLine() Do Until menu = "1"c OrElse menu = "2"c Console.WriteLine("An error occurred, please try again.") Console.Write("1 centimetres -> inches / 2 - inches -> centimetres : ") menu = Console.ReadLine() Loop ' Console.Write("Value : ") value = Console.ReadLine() Do Until value > 0 Console.WriteLine("An error occurred, please try again.") Console.Write("Value : ") value = Console.ReadLine() Loop ' If menu = "1"c Then Console.WriteLine(value & " centimetres is " & value * 0.3937 & " inches") Else Console.WriteLine(value & " inches is " & value * 2.54 & " centimetres") End If ' Console.ReadLine() End Sub End Module Module Example2 Sub Main() Dim menu As Char Dim value As Decimal ' Console.Write("1 centimetres -> inches / 2 - inches -> centimetres : ") menu = Console.ReadLine() Do Until menu = "1"c OrElse menu = "2"c ShowError() Console.Write("1 centimetres -> inches / 2 - inches -> centimetres : ") menu = Console.ReadLine() Loop ' Console.Write("Value : ") value = Console.ReadLine() Do Until value > 0 ShowError() Console.Write("Value : ") value = Console.ReadLine() Loop ' If menu = "1"c Then Console.WriteLine(value & " centimetres is " & value * 0.3937 & " inches") Else Console.WriteLine(value & " inches is " & value * 2.54 & " centimetres") End If ' Console.ReadLine() End Sub Sub ShowError() Console.WriteLine("An error occurred, please try again.") End Sub End Module Module Example3 Sub Main() Dim menu As Char Dim value As Decimal ' Console.Write("1 centimetres -> inches / 2 - inches -> centimetres : ") menu = Console.ReadLine() Do Until menu = "1"c OrElse menu = "2"c ShowMenuError() Console.Write("1 centimetres -> inches / 2 - inches -> centimetres : ") menu = Console.ReadLine() Loop ' Console.Write("Value : ") value = Console.ReadLine() Do Until value > 0 ShowValueError() Console.Write("Value : ") value = Console.ReadLine() Loop ' If menu = "1"c Then Console.WriteLine(value & " centimetres is " & value * 0.3937 & " inches") Else Console.WriteLine(value & " inches is " & value * 2.54 & " centimetres") End If ' Console.ReadLine() End Sub Sub ShowMenuError() Console.WriteLine("An illegal menu option is chosen. Please try again.") End Sub Sub ShowValueError() Console.WriteLine("The value should be above zero. Please try again.") End Sub End Module Module Example4 Sub Main() Dim menu As Char Dim value As Decimal ' Console.Write("1 centimetres -> inches / 2 - inches -> centimetres : ") menu = Console.ReadLine() Do Until menu = "1"c OrElse menu = "2"c ShowError("An illegal menu option is chosen.") Console.Write("1 centimetres -> inches / 2 - inches -> centimetres : ") menu = Console.ReadLine() Loop ' Console.Write("Value : ") value = Console.ReadLine() Do Until value > 0 ShowError("The value should be above zero.") Console.Write("Value : ") value = Console.ReadLine() Loop ' If menu = "1"c Then Console.WriteLine(value & " centimetres is " & value * 0.3937 & " inches") Else Console.WriteLine(value & " inches is " & value * 2.54 & " centimetres") End If ' Console.ReadLine() End Sub Sub ShowError(ByVal message As String) Console.WriteLine(message & " Please try again.") End Sub End Module Module Example5 Sub Main() ShowMenuError() ' Example4.ShowError("message 1") ' Dim someMessage As String = "message 2" Example4.ShowError(someMessage) ' Example4.ShowError("message" & " " & "3") ' Example4.ShowError(Console.ReadLine()) ' Console.ReadLine() End Sub End Module Module Example6 Sub Main() Dim value As Integer = 5 MultiplyBy10(value) Console.WriteLine("Main value : " & value) End Sub Sub MultiplyBy10(ByVal value As Integer) value *= 10 Console.WriteLine("MultiplyBy10 value : " & value) End Sub End Module Module Example7 Sub Main() Dim value As Integer = 5 MultiplyBy10(value) Console.WriteLine("Main value : " & value) ' MultiplyBy10(value + 1) Console.WriteLine("Main value : " & value) End Sub Sub MultiplyBy10(ByRef value As Integer) value *= 10 End Sub End Module Module Example8 Sub Main() ShowSum(1, 2) ' Console.WriteLine() End Sub Sub ShowSum(ByVal value1 As Integer, ByVal value2 As Integer) Console.WriteLine(value1 + value2) End Sub End Module Module Exercise1Task Sub Main() Dim x As Integer = 4 Dim y As Integer = 5 Dim z As Integer = 6 ' Test(x, y, z + 1) ' Console.WriteLine("Main x : " & x) Console.WriteLine("Main y : " & y) Console.WriteLine("Main z : " & z) Console.ReadLine() End Sub Sub Test(ByRef y As Integer, ByVal z As Integer, ByRef x As Integer) z ^= 2 x += z y += z ' Console.WriteLine("Test x : " & x) Console.WriteLine("Test y : " & y) Console.WriteLine("Test z : " & z) End Sub End Module Module Exercise2Task Sub Main() Dim number1, number2 As Integer ' 'Exercise2Solution.Input(number1, "Number 1 ? : ") 'Exercise2Solution.Input(number2, "Number 2 ? : ") ' 'Exercise2Solution.ShowSmallest(number1, number2) ' Console.ReadLine() End Sub End Module Module Exercise2Solution Sub Input(ByRef value As Integer, ByVal message As String) Console.Write(message) value = Console.ReadLine() End Sub Sub ShowSmallest(ByVal value1 As Integer, ByVal value2 As Integer) Dim smallest As Integer = value1 If value2 < smallest Then smallest = value2 Console.WriteLine("Smallest : " & smallest) End Sub End Module ' Visit www.studyvb.com for more examples. Copyright 2003-2008 De Wolf.