# Visual Basic 2017 Lesson 18: Mathematical Functions

#### [Lesson 17] << [Contents] >>[Lesson 19]

In Visual Basic 2017, we can write codes that can perform arithmetic operations using standard arithmetic operators. However, for more complex mathematical calculations, we shall use the built-in mathematical functions in Visual Basic 2017. There are numerous built-in mathematical functions in Visual Basic 2017. Among them are Abs, Exp, Fix, Int, Rnd, Round, sqrt and more. We shall deal with trigonometric functions and Financial Functions in coming lessons. Most mathematical functions belong to the Math class in Visual Basic 2015. However, not all mathematical functions belong to the Math class.

### 18.1 The Abs function

In Visual Basic 2017, the Abs function returns the absolute value of a given number.The syntax is
Math. Abs (Number)
Example 18.1

In this example, we shall add a text box control for the user to input his or her number and a label control to display the absolute value of the number. We need to use the Val function to convert text to a numeric value. Rename the textbox as TxtNum and the label as LblAbs.

The Code

```Private Sub BtnComp_Click(sender As Object, e As EventArgs) Handles BtnComp.Click
LblAbs.Text = Math.Abs(Val(TxtNum.Text))
End Sub
```

#### The output Figure 18.1

### 18.2 The Exp function

In Visual Basic 2017, the Exp function returns the exponential value of a given number. For example, Exp(1)=e=2.71828182

The syntax is

Math.Exp (Number)

#### Example 18.2

In this example, we shall add a text box control for the user to input his or her number and a label control to display the exponential value of the number. Rename the textbox as TxtNum and the label as LblAbs.

#### The Code

```Private Sub BtnComp_Click(sender As Object, e As EventArgs) Handles BtnComp.Click
LblExp.Text = Math.Exp(Val(TxtNum.Text))
End Sub
```

* We use the Val function to convert a string to numeric value

The Output Figure 18.2

### 18.3 The Fix Function

The Fix function truncates the decimal part of a positive number and returns the largest integer smaller than the number. However, when the number is negative, it returns the smallest integer larger than the number. Fix does not belong to the Math class, therefore, we do not use the Math keyword. the syntax is

Fix(number)

#### Example 18.3

```Private Sub BtnComp_Click(sender As Object, e As EventArgs) Handles BtnComp.Click
LblFixNum1.Text = Fix(Val(TxtPosNum.Text))
LblFixNum2.Text = Fix(Val(TxtNegNum.Text))
End Sub
```

The Output Figure 18.3

### 18.4 The Int Function

The Int is a function that converts a number into an integer by truncating its decimal part and the resulting integer is the largest integer that is smaller than he number. Int also does not belong to the Math class so there is no need to use the Math keyword.

For example

Int(2.4)=2, Int(6.9)=6 , Int(-5.7)=-6, Int(-99.8)=-100

### 18.5 The Log Function

The Log function is the function that returns the natural logarithm of a number.

The syntax is

Math.Log(Number)

#### Example 18.4

```Private Sub BtnComp_Click(sender As Object, e As EventArgs) Handles BtnComp.Click
LblLog.Text = Math.Log(Val(TxtNum.Text))
End Sub
```

The Output Figure 18.4

### 18.6 The Rnd( ) Function

Rnd is a very useful function in Visual Basic 2017. We use the Rnd function to write code that involves chance and probability. The Rnd function returns a random value between 0 and 1. Random numbers in their original form are not very useful in programming until we convert them to integers. For example, if we need to obtain a random output of 6 integers ranging from 1 to 6, which makes the program behave like a virtual dice, we need to convert the random numbers to integers using the formula Int(Rnd*6)+1.

The Rnd() function belongs to the VBMath class in Visual Basic 2015. The syntax is

VBMath.Rnd()*Number

#### Example 18.5

```Private Sub BtnGen_Click(sender As Object, e As EventArgs) Handles BtnGen.Click
LblRnd.Text = Int(VBMath.Rnd() * 6) + 1
End Sub
```

Notice that the Rnd() function belongs to the VBMath class in Visual Basic 2015.

In this example, Int(Rnd*6) will generate a random integer between 0 and 5 because the function Int truncates the decimal part of the random number and returns an integer. After adding 1, you will get a random number between 1 and 6 every time you click the command button. For example, let say the random number generated is 0.98, after multiplying it by 6, it becomes 5.88, and using the integer function Int(5.88) will convert the number to 5, and after adding 1 you will get 6.

The Output Figure 18.5

*We shall learn  how to create an animated dice using a Timer control in later lesson

## 18.7 The Round Function

The Round function is the function that rounds up a number to a certain number of decimal places. The syntax  is

Math.Round (number, m)

which means to round a number to m decimal places.

For example, Math.Round (7.2567, 2) =7.26

Example 18.6

```Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Label1.Text = Math.Round(Val(TextBox1.Text), 2)
End Sub
```

The Output Figure 18.6

## 18.8 The Sqrt Function

The sqrt returns the square root of a number. The syntax is as follows:

Math.Sqrt(Number)

#### Example 18.7

```Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
MsgBox(Math.Sqrt(400))
End Sub
```

The result is 20