790 likes | 813 Views
Microsoft Visual Basic 2010: Reloaded Fourth Edition. Chapter Three Memory Locations and Calculations. Objectives. After studying this chapter, you should be able to: Declare variables and named constants Assign data to an existing variable
E N D
Microsoft Visual Basic 2010: ReloadedFourth Edition Chapter Three Memory Locations and Calculations
Objectives After studying this chapter, you should be able to: • Declare variables and named constants • Assign data to an existing variable • Convert data to the appropriate type using the TryParse method and the Convert class methods • Write arithmetic expressions • Understand the scope and lifetime of variables and named constants Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Objectives (cont'd.) • Understand the purpose of the Option statements • Use a TOE chart, pseudocode, and a flowchart to code an application • Clear the contents of a control’s Text property during run time • Send the focus to a control during run time • Explain the difference between syntax errors and logic errors • Format an application’s numeric output Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Internal Memory • Internal memory: a component inside a computer comprised of memory locations • Each memory location has a unique numeric address and can hold only one item at a time • A programmer can reserve memory locations for a program by assigning each location a name, a data type, and an initial value • Data type: indicates the type of data the memory location will store • Two types of memory locations that a programmer can declare: variables and constants Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Internal Memory (cont'd.) Figure 3-1: Illustration of storage bins Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Variables • Variables: computer memory locations used to temporarily store data while an application is running • Contents can change during run time • Use a meaningful variable name that reflects the purpose of the variable • Use camel casing for variable identifiers • Variable names should conform to naming rules Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Figure 3-2: How to name a variable Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Variables (cont'd.) • Each variable must be assigned a data type, which determines the memory location’s data type • Each data type is a class • Integer, Long, or Short data types can store integers (whole numbers) • Decimal, Double, and Single data types: store real numbers (numbers with a decimal place) • Char data type: stores one Unicode character • String data type: stores multiple Unicode characters Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Variables (cont'd.) • Unicode: • Universal coding scheme for characters that assigns a unique numeric value to each character • Other data types • Boolean data type: stores a value of True or False • Date data type: stores date and time information • Object data type: stores any type of data • Computer must determine the data type at run time, making it more inefficient Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Figure 3-3: Basic data types in Visual Basic Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Declaring a Variable in Code • Declaration statement: used to declare, or create, a variable • Declaration statement includes: • Scope keyword: Dim, Private, or Static • Name of the variable and data type • Initial value (optional) • Initialization • Numeric data types: automatically initialized to 0 • String data type: automatically initialized to Nothing • Boolean data type: initialized to False Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Declaring a Variable in Code (cont’d.) Figure 3-4: How to declare a variable Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Declaring a Variable in Code (cont’d.) Figure 3-4: How to declare a variable (cont’d.) Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Assigning Data to an Existing Variable • Assignment statement: • Used to assign values to properties of controls • Used to assign values to variables • Assignment operator(=): • Expression on the right of the = operator is assigned to the variable on the left of the = operator • Expression: can contain literal constants, object properties, variables, keywords, or arithmetic operators Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Assigning Data to an Existing Variable (cont'd.) • Literal constant: • An item of data whose value does not change while the application is running • Can be a numeric or a string literal constant • A numeric literal without a decimal place is treated as an integer • A numeric literal with a decimal place is treated as a Double type • String literals are enclosed in quotation marks Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Assigning Data to an Existing Variable (cont'd.) Figure 3-5: How to assign a value to a variable Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Assigning Data to an Existing Variable (cont'd.) Figure 3-5: How to assign a value to a variable (cont’d.) Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Using the TryParse Method • Method: a specific portion of a class’s instructions that performs a task for the class • TryParse method: • Part of every numeric data type’s class • Used to convert a string to that numeric data type • Argument: a value that is provided to a method • Basic syntax of TryParse method has two arguments: • String: string value to be converted • Variable: location to store the result Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Using the TryParse Method (cont'd.) • If TryParse conversion is successful, the method stores the value in the variable • If unsuccessful, a 0 is stored in the numeric variable Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Figure 3-6: How to use the basic syntax of the TryParse method Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Using the TryParse Method (cont'd.) Figure 3-7: Result of the TryParse method for the Double, Decimal, and Integer data types Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Using the Convert Class Methods • Convert class: • Contains methods for converting numeric values to specific data types • Commonly used methods of the Convert class include: • ToDouble • ToDecimal • ToInt32 • ToString Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Using the Convert Class Methods (cont’d.) Figure 3-8: How to use the Convertclass methods Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Including Variables in Arithmetic Expressions • Arithmetic operators: used to perform calculations • Precedence number: indicates the order in which an operation in an expression is performed • If an expression has two operators with the same precedence, they are evaluated from left to right • Use parentheses to change the order of evaluation • Integer division operator (\): divides two integers and returns an integer value • Modulus arithmetic operator (Mod): divides two numbers and returns the remainder Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Including Variables in Arithmetic Expressions (cont'd.) Figure 3-9: Most commonly used arithmetic operators Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Including Variables in Arithmetic Expressions (cont'd.) Figure 3-10: How to use the integer division and Mod operators Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Including Variables in Arithmetic Expressions (cont'd.) Figure 3-11: Expressions containing more than one operator having the same precedence Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Figure 3-12: How to use variables and arithmetic operators Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Including Variables in Arithmetic Expressions (cont'd.) Figure 3-12: How to use variables and arithmetic operators (cont’d.) Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Arithmetic Assignment Operators • Arithmetic assignment operators: abbreviate an assignment statement that contains an arithmetic operator for specific cases • Statement must be of the form: variableName = variableName arithmeticOperator value Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Arithmetic Assignment Operators (cont’d.) Figure 3-13: How to use the arithmetic assignment operators Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Figure 3-13: How to use the arithmetic assignment operators (cont’d.) Microsoft Visual Basic 2010: Reloaded, Fourth Edition
The Scope and Lifetime of a Variable • Scope: indicates where the variable can be used • Lifetime: indicates how long the variable remains in memory • Variables can have module scope, procedure scope, or block scope • A variable’s scope and lifetime are determined by where you declare the variable • Variables declared in the form’s Declarations section have class scope • Variables declared within a procedure have either procedure scope or block scope Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Variables with Procedure Scope • Procedure-level variable: declared within a procedure • Use the Dim keyword in the declaration • Procedure scope: only the procedure can use the variable • With procedure-level scope, two procedures can each use the same variable names • Comments: • Used to internally document the procedure • Are ignored by the compiler • Appear in green in the Code Editor Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Figure 3-14: The MainForm in the Sales Tax application Figure 3-15: Examples of using procedure-level variables Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Variables with Procedure Scope (cont’d.) Figure 3-15: Examples of using procedure-level variables (cont’d.) Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Variables with Class Scope • Class scope:variable can be used by all procedures in the form • Class-level variable: • Declared in the form’s Declarations section • Use Private keyword in declaration • Class-level variables retain their values until the application ends Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Figure 3-17: Example of using a class-level variable Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Static Variables • Static variable: • Procedure-level variable that remains in memory and retains its value even after the procedure ends • Retains its value until the application ends (like a class-level variable), but can only be used by the procedure in which it is declared • A static variable has: • Same lifetime as a class-level variable • Narrower scope than a class-level variable • Declared using the Static keyword Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Static Variables (cont’d.) Figure 3-18: Example of using a static variable Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Named Constants • Named constant: memory location whose value cannot be changed while the application is running • Declared using the Const keyword • Good programming practice to specify the data type as well • Many programmers use Pascal case for named constants • Literal type character: forces a literal constant to assume a specific data type • Named constants help to document the program code Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Figure 3-19: How to declare a named constant Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Figure 3-20: Area Calculator application’s interface Figure 3-21: Example of using a named constant Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Option Explicit, Option Infer, and Option Strict • Undeclared variable: a variable that does not appear in a declaration statement (such as Dim) • Is assigned a data type of Object • Misspelling a variable name can result in an undeclared variable unless Option Explicit is on • Option Explicit On statement • Appears in the General Declarations section of the Code Editor window (above Public Class statement) • Enforces that all variables must be declared before being used Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Option Explicit, Option Infer, and Option Strict (cont'd.) • Option Infer Off statement: ensures that every variable is declared with a data type • Implicit type conversion: occurs when you attempt to assign data of one type to a variable of another type without explicitly attempting to convert it • If converted to a data type that can store larger numbers, the value is said to be promoted • If converted to a data type that can store only smaller numbers, the value is said to be demoted • Can cause truncation and loss of precision Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Figure 3-22: Rules and examples of type conversions Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Option Explicit, Option Infer, and Option Strict (cont'd.) • Option Strict On statement: ensures that values cannot be converted from one data type to a narrower data type, resulting in lost precision Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Option Explicit, Option Infer, and Option Strict (cont'd.) Figure 3-23: Option statements entered in the General Declarations section Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Coding the Sunshine Cellular Application Figure 3-24: Sunshine Cellular interface from Chapter 2 Microsoft Visual Basic 2010: Reloaded, Fourth Edition
Coding the Sunshine Cellular Application (cont'd.) Figure 3-25: Sunshine Cellular TOE chart from Chapter 2 Microsoft Visual Basic 2010: Reloaded, Fourth Edition