 # lesson 8 Understanding Data

We deal with many kinds of data in our daily life. For example, we need to handle data like names, phone number, addresses, money, date, stock and more every day. Similarly, in Visual Basic 2013, we have to deal with all sorts of data In Visual Basic 2013, data can be stored as variables, constants or arrays. The value of a variable always changes, just like the contents of a mailbox or the storage bin. The value of a constant remains the same throughout. An array comprises rows and columns of variables or constant.

### 8.1 Visual Basic 2013 Data Types

Visual Basic 2013 classifies information into two major data types,  the numeric data type, and the non-numeric data type

#### 8.1.1 Numeric Data Types

Numeric data types comprise numbers that can be calculated arithmetically using standard operators such as addition, subtraction, multiplication, division and more. Examples of numeric data types are examination marks, height, body weight, the number of customers, stock price, price of goods, bills, bus fares and more. In Visual Basic 2013, numeric data are divided into seven types based on the range of values they can store. Calculations that only involve round figures that do not need high precision can use Integer or Long integer. On the other hand, high precision calculation requires the use Single and Double precision data types, they are also called floating point numbers. For currency calculation, you use the currency data types. if even more precision is required to perform calculations, you can use the decimal data types. These data types are summarized in Table 8.1

Table 8.1: Numeric Data Types
Type Storage Range of Values
Byte  1 byte   0 to 255
Integer  2 bytes   -32,768 to 32,767
Long  4 bytes  -2,147,483,648 to 2,147,483,648
Single  4 bytes -3.402823E+38 to -1.401298E-45 for negative values 1.401298E-45 to 3.402823E+38 for positive values.
Double  8 bytes -1.79769313486232e+308 to -4.94065645841247E-324 for negative values 4.94065645841247E-324 to 1.79769313486232e+308 for positive values.
Currency  8 bytes -922,337,203,685,477.5808 to 922,337,203,685,477.5807
Decimal  12 bytes +/- 79,228,162,514,264,337,593,543,950,335 if no decimal is use +/- 7.9228162514264337593543950335 (28 decimal places).

#### 8.1.2 Non-numeric Data Types

Non-numeric data types are data that cannot be manipulated using standard arithmetic operators. They comprise the string data types, the Date data types, the Boolean data types that store only two values (true or false), Object data type and Variant data type.They are summarized in Table 8.2

Table 8.2: Non-numeric Data Types
Type Storage Range
String(fixed length) Length of string 1 to 65,400 characters
String(variable length) Length + 10 bytes 0 to 2 billion characters
Date  8 bytes January 1, 100 to December 31, 9999
Boolean  2 bytes True or False
Object  4 bytes Any embedded object
Variant(numeric)  16 bytes Any value as large as Double
Variant(text) Length+22 bytes Same as variable-length string

#### 8.1.3 Suffixes for Literals

Literals are values that you assign to data. In some cases, we need to add a suffix behind a literal so that VB can handle the calculation more accurately. For example, we can use num=1.3089# for a Double type data. The suffixes are summarized in Table 8.3.

Table 8.3
Suffix Data Type
& Long
! Single
# Double
@ Currency

In addition, we need to enclose string literals within two quotations and date and time literals within two # sign. Strings can contain any characters, including numbers. The following are few examples:

```memberName="Turban, John."
TelNumber="1800-900-888-777"
LastDay=#31-Dec-00#
ExpTime=#12:00 am#
```