variables & function calls. overview u variables programmer defined & intrinsic data types...

Post on 13-Dec-2015

217 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Variables & Function Calls

Overview

Variables Programmer Defined & Intrinsic Data Types Calculation issues

Using Functions The val() function The msgbox() function

Types of Data

Numeric Can contain only numbers

Real numbers, integers, currency, dates Used for arithmetic calculations

String (text) May contain any symbol No arithmetic calculations

Append, insert, extract

Variables - The Concept

Variables are named containers of data They are not displayed on a form The contents can change during runtime

Variables vary in size and purpose Some types of data require more memory than others Each variable belongs to a type

The type of a variable determines its size, and what operations (such as add, substract, append) will work on the variable

VB Variables

Variables are not created using the tool box Instead, they are declared within the program Declaring a variable

sets aside memory for the variable assigns a name to that space in memory describes what type of data can be stored there

Variables don’t work with the properties window Changes to a variable must be made in a program

Declaring a Variable

A declaration begins with the Dim statement This alerts VB that a new variable is being defined

A declaration contains a variable name and type Just as each control must have a (name), like lblInput,

and type, like label The form of a declaration: Dim <name> as <type>

For example:

Dim intCount as Integer

Numeric Variable Types

There are several different numeric variable types, each with varying Precision Size Representation scheme

Selecting the wrong type for variables can hurt the performance of a program

Counting Things

Integer types

BYTE Small range of values, 0 to 255

INTEGER -32,768 to +32,767

LONG -2,147,483,648 to +2,147,483,647

Measuring Things

SINGLE Positive or negative As close to zero as 1.401298E-45 As large as 3.402823E38

DOUBLE Positive or negative As close to zero as 4.94065645841247E-327 As large as 1.79769313486232E308

Highest Precision

Scaled integers CURRENCY

+/-922,337,203,685,477.5807 DECIMAL

+/-79,228,162,514,262,337,593,543,950,335 +/-7.9228162514262337593543950335 no rounding, slow but sure

Storage Space & Prefixes

BYTE 1 byte byt INTEGER 2 bytes int LONG 4 bytes lng SINGLE 4 bytes sng DOUBLE 8 bytes dbl BOOLEAN 2 bytes bln CURRENCY 8 bytes cur DECIMAL 14 bytes dec

Establishing Values

Dim intValue as integer

intValue = 12

intValue = ”12”

intValue = 12.5

intValue = 11.51

Due to automatic type conversion, all result in the integer variable intValue being set to 12

Operators & Precedence

1. ^ Exponentiation

2. - Unary Negation

3. * / Multiplication and Division

4. \ Integer Division

5. MOD Remainder

6. + - Addition and Subtraction

(otherwise left to right)

Precedence Examples

sngA = ( 3 + 4 ) / ( 2 - 3 )

results: sngA = -7.00

sngB = ( 3 + 4 ) / 2 - 3

results: sngB = 0.50

sngC = 3 * 4 / 2 * 3

results: sngC = 18.00

sngD = ( 3 * 4 ) / ( 2 * 3 )

results: sngD = 2.00

Real & Integer Arithmetic

sngA = 5 / 2

results: sngA = 2.50

sngB = 5 \ 2

results: sngB = 2.00

intC = 5 MOD 2

results: intC = 1

intD = 5 / 2

results: intD = 2

Text Strings

Used to hold an arbitrary list of characters The size can be predetermined, or allowed to

change as the program runs The .caption property of a label is a string, as is the

text property of a textbox

String Variables

Variable and fixed length strings:Dim strNamer As StringDim strMiddle As String * 1Dim strState As String * 2strNamer = ”Jason Ogelthorpe”strMiddle = ”P”strState = ”WI”

String Variables

Dim strSocSoc As String * 11

Dim strZipCode As String * 10

strSocSoc = ”128-24-1234”

strZipCode = ”53211”

(strZipCode = ”53211 ”)

(note |1234567890|)

Concatenation of Strings

strSamp = ”Hi” & ” There”

(strSamp = ”Hi There”)

strSamp = ”Value” & 27

(strSamp = ”Value27”)

strSamp = ”Value” & str(27)

(strSamp = ”Value 27”)

Long Strings

strSamp = ”We can build ” _ & ”a very, very, very, ” _ & ”long string.”

(a concatenated string can be split over several lines, note underscore characters and note spaces contained within the quoted areas.)

Naming VB Variables

Programmer defined Don’t use reserved words

Type names, control names, keywords (DIM or end) Make the name meaningful

intNum vs intNumberOfGroceries Capitalize first character after prefix

If multiple words, capitalize the 1st character of each use standard prefixes

Naming VB Variables

Are these valid names? int Number Sub MinimumRate Caption CarCount intNumberofcars

VB Constants Types of Constants

Literals sngTaxRate = .075 txtName = “Smith”

Symbolic programmer defined with Const keyword const <name> as <type> = <value> Const sngTaxRate as Single = .075 Some are defined by VB

• vbRed • vbCenter

What are benefits of symbolic constants? Why avoid literals in code?

Working with Variables

Declaring Variables Dim statement, short for Dimension,

Sets aside memory Labels the memory Initializes variable based upon type

Dim intPhone as Integer Creates variable that can store an integer number

Dim strLastName as String Creates variable that can store a string (of variable length)

Dim strLastName as String * 5 Creates variable that can store a string of 5 characters.

Working with Variables Assignment Statement

Each statement in Experiment 3 was an assignment statements

Basic format <name> = <expression>

Use an = (equals sign – read “is assigned”) VB evaluates the expression to the right of the equal sign If necessary, that value is converted so that it has the same type as the variable The value is copied in to the variable – old data is overwritten

For Numeric Data Types A = B + 8*C (Variable A is assigned the value of the resolved expression)

For String Data Types strFull = strFirst & strLast (The right side is concatenated and assigned into strFull)

Working with Variables

Control Properties are Variables lblName.Caption = “My label”

Type MismatchintNumber = strLastName

Misspellings Use OPTION EXPLICIT statement to make the

computer find errors If a variable used in an assignment is not in a DIM

statement, then VB does not allow the program to compile

Using Functions

Some activities are common in programming tasks Converting a string to a number Pop up a warning message for the user Extracting a substring from a string

Rather than forcing programmers to re-write the code which handles these activities each time they are needed, we can write one reusable function

Functions have names, like variables, and parameter lists

The form of a function call

The general form of a function call is <function name> ( <parameter 1>, <parameter 2>, … )

Functions take input values, called parameters, and produce an output value which can be assigned to a variable dblValue = squareRoot(intCount)

Visual Basic includes many functions we can use We will learn how to create our own functions

Chapter 6

The VAL Function

This function allows conversion between string filled variables and numeric variables.

It works by “scanning” the characters of the string filled variable and builds a numeric value until the end-of-string or a non numeric is found.

A Simple Program

Private Sub cmdComnd_Click()

Label1.Caption = Val(Text1.Text)

End Sub

We can enter character strings into the box “Text1”, press the command button, and look at what appears in the box “Label1”.

Some Examples

The Message Box

VB allows the user to generate message boxes as a part of a user program. When invoked they look something like this:

Format of MsgBox

In its simplest form the MsgBox is called by this command:

Dim intX As Integer

intX = MsgBox("Read the Password")

The Details

Dim intX As Integer

intX = MsgBox("Do this now", _

vbCritical, "Prompting Issue")

Response Choices

The value of “intZ” above depends on which response is chosen. “Yes” - intZ = 6“No” - intZ = 7(the numerical values are defined by Visual Basic.)

Dim intZ As IntegerintZ = MsgBox(“Should I Do This”, _ vbYesNo ,”Prompting Issue”)

Icon Choices

top related