Chapter#8 General Procedures

Slides:



Advertisements
Similar presentations
Chapter 6, Slide 1Starting Out with Visual Basic 3 rd Edition Chapter 6 Sub Procedures And Functions.
Advertisements

Sub and Function Procedures
1 5.3 Sub Procedures, Part II Passing by Value Passing by Reference Sub Procedures that Return a Single Value Debugging.
Microsoft Visual Basic 2010: Reloaded Fourth Edition Chapter Eight Sub and Function Procedures.
1.
1 Chapter 5 - General Procedures 5.1 Function Procedures 5.2 Sub Procedures, Part I 5.3 Sub Procedures, Part II 5.4 Modular Design.
Chapter 4 General Procedures
IS 1181 IS 118 Introduction to Development Tools VB Chapter 06.
Chapter 4 - Visual Basic Schneider
Chapter 4 (cont) Sec. 4.1, 4.2, 4.4 Procedures (User-defined)
Chapter 4 - VB.Net by Schneider1 Chapter 4 General Procedures 4.1 Sub Procedures, Part I 4.2 Sub Procedures, Part II 4.3 Function Procedures 4.4 Modular.
Chapter 41 Sub Procedures, Part II Passing by Value Passing by Reference Local Variables Class-Level Variables Debugging.
Chapter 41 Sub Procedures, Part II (Continue). Chapter 42 Local Variable A variable declared inside a Sub procedure with a Dim statement Space reserved.
Chapter 41 Function Procedures (Continue I). Chapter 42 Lab Sheet 4.7: Code Private Sub btnCalculate_Click(...) _ Handles btnCalculate.Click Dim a, b.
Chapter 4 - Visual Basic Schneider1 Chapter 4 General Procedures.
Chapter 41 General Procedures Sub Procedures, Part I Sub Procedures, Part II Function Procedures.
Apply Sub Procedures/Methods and User Defined Functions
1 INF110 Visual Basic Programming AUBG Spring semester 2011 Reference books: Schneider D., An Introduction to Programming Using Visual Basic, Prentice.
Subroutines and Functions Chapter 6. Introduction So far, most of the code has been inside a single method for an event –Fine for small programs, but.
Chapter 5 - VB 2008 by Schneider1 Chapter 5 - General Procedures 5.1 Sub Procedures, Part I 5.2 Sub Procedures, Part II 5.3 Function Procedures 5.4 Modular.
Why to Create a Procedure
1 Chapter 5 - General Procedures 5.1 Function Procedures 5.2 Sub Procedures, Part I 5.3 Sub Procedures, Part II 5.4 Modular Design.
T ODAY ’ S Q UOTE “Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are–by.
1 Chapter 6 – Repetition 6.1 Do Loops 6.2 For...Next Loops 6.3 List Boxes and Loops.
CSCI 3327 Visual Basic Chapter 6: Methods: A Deeper Look UTPA – Fall 2011.
PROGRAMMING Functions. Objectives Understand the importance of modular programming. Know the role of functions within programming. Use functions within.
1 Chapter 5 - General Procedures 5.1 Function Procedures 5.2 Sub Procedures, Part I 5.3 Sub Procedures, Part II 5.4 Modular Design.
Microsoft Visual Basic 2005: Reloaded Second Edition Chapter 7 Sub and Function Procedures.
Subroutines and Functions. Introduction So far, most of the code has been inside a single method for an event –Fine for small programs, but inconvenient.
110-G1 Motivation: Within a program, may have to perform the same computation over and over Many programs share the same computation (e.g. sorting) To.
Chapter 4 - Visual Basic Schneider1 Chapter 4 General Procedures.
© 2006 ITT Educational Services Inc. Introduction to Computer Programming: Unit 10: Chapter 6: Slide 1 Unit 10 Sub Procedures and Functions Chapter 6 Sub.
6c – Function Procedures Lingma Acheson Department of Computer and Information Science, IUPUI CSCI N331 VB.NET Programming.
Created by Alia Al-Abdulkarim 2008 Visual Basic Vs. Java.
1Edited By Maysoon Al-Duwais. 2 General Procedures Function Procedure Sub Procedures, Part I Sub Procedures, Part II Modular Design Edited By Maysoon.
Chapter 5 : Methods Part 2. Returning a Value from a Method  Data can be passed into a method by way of the parameter variables. Data may also be returned.
Chapter 4 - Visual Basic Schneider1 Chapter 4 General Procedures.
General Procedures Chapter 4. Different Procedures 4.1 Sub Procedures, Part I 4.2 Sub Procedures, Part II 4.3 Function Procedures 4.4 Modular Design (not.
Starting Out with Visual Basic.NET 2 nd Edition Chapter 6 Sub Procedures And Functions.
Subroutines and Functions Chapter 6. Introduction So far, all of the code you have written has been inside a single procedure. –Fine for small programs,
1Edited By Maysoon Al-Duwais. 2 Devices for Modularity Visual Basic has two ways for breaking problems into smaller pieces: Sub procedures Function procedures.
Chapter 5 - VB 2008 by Schneider1 Chapter 5 – Repetition 5.1 Do Loops 5.2 Processing Lists of Data with Do Loops 5.3 For...Next Loops.
1Lect7 GC20111/2/ General Procedures Function Procedure Sub Procedures, Part I Sub Procedures, Part II Modular Design Lect7 GC20111/2/2015.
CS0004: Introduction to Programming
Sub Procedures And Functions
Subprograms Functions Procedures.
A variable is a name for a value stored in memory.
Lesson 16 Sub Procedures Lesson 17 Functions
Functions Chapter 6-Part 2.
Method.
Chapter 6 – Repetition 6.1 Do Loops 6.2 For...Next Loops
Chapter 6 – Repetition 6.1 Do Loops 6.2 For...Next Loops
Starting Out with Java: From Control Structures through Objects
Chapter 4 - Visual Basic Schneider
Chapter 6 Sub Procedures
5.2 Sub Procedures, Part I Defining and Calling Sub Procedures
Starting Out with Java: From Control Structures through Objects
Procedures and Functions
Introduction to Visual Programming
Chapter 5: Methods Starting Out with Java: From Control Structures through Objects Third Edition by Tony Gaddis.
Chapter#8 General Procedures
Chapter 7: Using Functions, Subs, and Modules
Chapter 5 - General Procedures
CSCI 3327 Visual Basic Chapter 6: Methods: A Deeper Look
Chapter 6 – Methods Topics are:
Chapter 5 - General Procedures
Fundamental Programming
STARTING OUT WITH Visual Basic 2008
Chapter 4 General Procedures
Standard Version of Starting Out with C++, 4th Edition
Presentation transcript:

Chapter#8 General Procedures Edited By Maysoon Al-Duwais

Devices for Modularity Visual Basic has two ways for breaking problems into smaller pieces: Sub procedures Function procedures Edited By Maysoon Al-Duwais

General Form of Sub Procedure Edited By Maysoon Al-Duwais

Calling a Sub Procedure The statement that invokes /calls a Sub procedure is referred to as a calling statement. A calling statement looks like this: ProcedureName(arg1, arg2,..., argN) Edited By Maysoon Al-Duwais

Naming Sub Procedures The rules for naming Sub procedures are the same as the rules for naming variables. Edited By Maysoon Al-Duwais

Passing Values DisplaySum( 2, 3 ) Sub DisplaySum(ByVal num1 As Double, ByVal num2 _ As Double) Dim z As Double z = num1 + num2 TextBox1.Text= "The sum of " & num1 & " and " & num2 & " is " & z & "." End Sub In the Sub procedure, 2 will be stored in num1 and 3 will be stored in num2 Edited By Maysoon Al-Duwais

Arguments and Parameters Sum(2, 3) Sub DisplaySum(ByVal num1 As Double, ByVal num2 _ As Double) arguments parameters displayed automatically Edited By Maysoon Al-Duwais

Several Calling Statements DisplaySum(2, 3) DisplaySum(4, 6) DisplaySum(7, 8) Output: The sum of 2 and 3 is 5. The sum of 4 and 6 is 10 The sum of 7 and 8 is 15. Edited By Maysoon Al-Duwais

Passing Strings and Numbers Demo("CA", 38) Sub Demo(ByVal state As String, ByVal pop _ As Double) TextBox1.Text = state & " has population " & pop & " million." End Sub Note: The statement Demo(38, "CA") would not be valid. The types of the arguments must be in the same order as the types of the parameters. Edited By Maysoon Al-Duwais

Variables and Expressions as Arguments Dim s As String = "CA" Dim p As Double = 19 Demo(s, 2 * p) Sub Demo(ByVal state As String, ByVal pop As Double) TextBox1.Text = state &" has population " & pop & "million." End Sub Note: The argument names need not match the parameter names. For instance, s versus state. Edited By Maysoon Al-Duwais

Sub Procedure Having No Parameters Sub DescribeTask() lstBox.Items.Clear() msgbox("This program displays the name and population of a state.") End Sub Edited By Maysoon Al-Duwais

Sub Procedure Calling Another Sub Procedure Private Sub btnDisplay_Click(...) Handles _ btnDisplay.Click Demo("CA", 37) End Sub Sub Demo(ByVal state As String, ByVal pop _ As Double) DescribeTask() TextBox1.Text = state &" has population " & pop & "million." Edited By Maysoon Al-Duwais

Output This program displays the name and population of a state. CA has population 37 million. Edited By Maysoon Al-Duwais

ByVal and ByRef Parameters in Sub procedure headers are proceeded by ByVal or ByRef ByVal stands for By Value ByRef stands for By Reference Edited By Maysoon Al-Duwais

Passing by Value When a variable argument is passed to a ByVal parameter, just the value of the argument is passed. After the Sub procedure ends, the variable has its original value. Edited By Maysoon Al-Duwais

Example Output: Public Sub btnOne_Click (...) Handles _btnOne.Click Dim n As Double = 4 Triple(n) txtBox1.Text = “n = “ & n End Sub Sub Triple(ByVal num As Double) num = 3 * num txtBox2.Text = “num = “ & num Output: num = 12 n = 4 Argument name (n) is different than parameter name (num) Memory (RAM): 12 4 num n Edited By Maysoon Al-Duwais

Passing by Reference When a variable argument is passed to a ByRef parameter, the parameter is given the same memory location as the argument. After the Sub procedure terminates, the variable has the value of the parameter. Edited By Maysoon Al-Duwais

Example Output: 4 12 Public Sub btnOne_Click (...) Handles _ Dim num As Double = 4 Triple(num) txtBox2.Text = “2. num = “ & num End Sub Sub Triple(ByRef num As Double) num = 3 * num txtBox1.Text = “1. num = “ & num Output: 1. num = 12 2. num = 12 Argument name (num) is the same as parameter name (num) Memory (RAM): 4 12 X num Edited By Maysoon Al-Duwais

Most Common Use of ByRef: Get Input (Read Input) Sub InputData(ByRef wage As Double, ByRef hrs As Double) wage = txtWage.Text hrs = txtHours.Text End Sub Edited By Maysoon Al-Duwais

Function Procedures User-Defined Functions Having One Parameter User-Defined Functions Having Several Parameters User-Defined Functions Having No Parameters User-Defined Boolean-Valued Functions Edited By Maysoon Al-Duwais

Some Built-In Functions Function: Int Example: Int(2.6) is 2 Input: number Output: number Function: Math.Round Example: Math.Round(1.23, 1) is 1.2 Input: number, number Edited By Maysoon Al-Duwais

Some Built-In Functions (continued) Function: FormatPercent Example: FormatPercent(0.12, 2) is 12.00% Input: number, number Output: string Function: FormatNumber Example: FormatNumber(12.62, 1) is 12.6 Edited By Maysoon Al-Duwais

Function Procedures Function procedures (aka user-defined functions) always return one value Syntax: Function FunctionName(ByVal var1 As Type1, ByVal var2 As Type2, ...) As ReturnDataType statement(s) Return expression End Function Edited By Maysoon Al-Duwais

Example With One Parameter Function FtoC(ByVal t As Double) As Double 'Convert Fahrenheit temp to Celsius Return (5 / 9) * (t - 32) End Function Edited By Maysoon Al-Duwais

Header of the FtoC Function Procedure Edited By Maysoon Al-Duwais

Example 1: Form txtTempF txtTempC Edited By Maysoon Al-Duwais

Example 1: Code Using Function Private Sub Convert _Click(...) Handles btnCnvrt.Click Dim fTemp, cTemp As Double fTemp = txtTempF.Text cTemp = FtoC(fTemp) txtTempC.Text = cTemp End Sub Function FtoC(ByVal t As Double) As Double Return (5 / 9) * (t - 32) End Function Edited By Maysoon Al-Duwais

Example 1: Code Without Using Function Private Sub btnConvert_Click(...) _Handles btnConvert.Click Dim fTemp, cTemp As Double fTemp = txtTempF.Text cTemp = (5 / 9) * (fTemp - 32) txtTempC.Text = cTemp End Sub Edited By Maysoon Al-Duwais

Example 1: Output Edited By Maysoon Al-Duwais

User-Defined Function Having Several Parameters Function Pay(ByVal wage As Double, ByVal hrs As Double) As Double Dim amt As Double ‘ Total amount of salary Select Case hrs Case Is <= 40 amt = wage * hrs Case Is > 40 ‘the wage (salary/hour) increases 50% per every extra hour (extra hours >40) amt = wage * 40 +(0.5 * wage * (hrs – 40)) End Select Return amt End Function Edited By Maysoon Al-Duwais

Example 3: Form txtWage txtHours txtEarnings Edited By Maysoon Al-Duwais

Example 3: Partial Code Private Sub btnCalculate_Click(...) _ Handles btnCalculate.Click Dim hourlyWage, hoursWorkded As Double hourlyWage = txtWage.Text hoursWorked = txtHours.Text txtEarnings.Text = Pay(hourlyWage, hoursWorked) End Sub Function call Edited By Maysoon Al-Duwais

Example 3: Output Edited By Maysoon Al-Duwais

User-Defined Function Having No Parameters Function CostOfItem() As Double Dim price As Double = txtPrice.Text Dim quantity As Integer =txtQuantity.Text Dim cost = price * quantity Return cost End Function Edited By Maysoon Al-Duwais

User-Defined Boolean-Valued Function Function IsVowelWord(ByVal word As String) As Boolean If word.IndexOf("A") = -1 Then Return False End If . If word.IndexOf("U") = -1 Then Return True End Function Edited By Maysoon Al-Duwais

Functions vs. Sub procedures Both can perform similar tasks Both can call other procedures Use a function when you want to return one and only one value Edited By Maysoon Al-Duwais