1 Computer Programming Andres, Wen-Yuan Liao Department of Computer Science and Engineering De Lin Institute of Technology

Slides:



Advertisements
Similar presentations
Etter/Ingber Engineering Problem Solving with C Fundamental Concepts Chapter 2 Simple C Programs.
Advertisements

Types and Arithmetic Operators
Dale/Weems/Headington
Data Types in Java Data is the information that a program has to work with. Data is of different types. The type of a piece of data tells Java what can.
©2004 Brooks/Cole Chapter 2 Variables, Values and Operations.
1 Lecture 6 Chapter 3 Numeric Types, Expressions, and Output Dale/Weems/Headington.
1 Chapter 3 Arithmetic Expressions. 2 Chapter 3 Topics l Overview of Java Data Types l Numeric Data Types l Declarations for Numeric Expressions l Simple.
COMPSCI 125 Spring 2005 ©TheMcGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 3: Numeric Data *Variables *Numeric data.
© Janice Regan, CMPT 102, Sept CMPT 102 Introduction to Scientific Computer Programming Expressions and Operators Program Style.
1 Fundamental Data Types. 2 Outline  Primitive Data Types  Variable declaration  Numbers and Constants  Arithmetic Operators  Arithmetic Operator.
Chapter 4 Numeric Types.
ECE122 L3: Expression Evaluation February 6, 2007 ECE 122 Engineering Problem Solving with Java Lecture 3 Expression Evaluation and Program Interaction.
Chapter 3 Numerical Data. Topics Variables Numeric data types Assignment Expressions.
Data types and variables
1 Chapter 3 Topics Constants of Type int and float l Evaluating Arithmetic Expressions l Implicit Type Coercion and Explicit Type Conversion l Calling.
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Adrian Ilie COMP 14 Introduction to Programming Adrian Ilie June 27, 2005.
Chapter 2 Data Types, Declarations, and Displays
CSci 142 Data and Expressions. 2  Topics  Strings  Primitive data types  Using variables and constants  Expressions and operator precedence  Data.
1 Lecture 7 Chapter 3 Numeric Types, Expressions, and Output Dale/Weems/Headington.
Data Types, Expressions and Functions (part I)
What is a variable?  A variable holds data in memory so the program may use that data, or store results.  Variables have a data type. int, boolean, char,
1 Chapter Two Using Data. 2 Objectives Learn about variable types and how to declare variables Learn how to display variable values Learn about the integral.
Objectives You should be able to describe: Data Types
EG280 - CS for Engineers Chapter 2, Introduction to C Part I Topics: Program structure Constants and variables Assignment Statements Standard input and.
 Value, Variable and Data Type  Type Conversion  Arithmetic Expression Evaluation  Scope of variable.
Java Primitives The Smallest Building Blocks of the Language (corresponds with Chapter 2)
Chapter 2: Basic Elements of Java J ava P rogramming: From Problem Analysis to Program Design, From Problem Analysis to Program Design, Second Edition.
1 Numeric Types, Expressions, and Output. 2 Chapter 3 Topics  Constants of Type int and float  Evaluating Arithmetic Expressions  Declaration for Numeric.
Numeric Types, Expressions, and Output 1. Chapter 3 Topics Constants of Type int and float Evaluating Arithmetic Expressions Implicit Type Coercion and.
1 Chapter 3 Numeric Types, Expressions, and Output Dale/Weems.
1 Chapter 3 Numeric Types, Expressions, and Output Dale/Weems.
1 Chapter 3 Numeric Types, Expressions, and Output CS185/09 - Introduction to Programming Caldwell College.
Numeric Types, Expressions, and Output ROBERT REAVES.
Chapter 3 Processing and Interactive Input. 2 Assignment  The general syntax for an assignment statement is variable = operand; The operand to the right.
CH2 – Using Data. Constant Something which cannot be changed Data Type Format and size of a data item Intrinsic Data Types Pg. 47 – Table 2-1 Basic ones.
Input, Output, and Processing
Chapter 2: Using Data.
1 Chapter 3 Numeric Types, Expressions, and Output Dale/Weems/Headington.
Lecture no 3 Control statements.
1 Chapter 3 Numeric Types, Expressions, and Output Dale/Weems/Headington.
Java Programming: From Problem Analysis to Program Design, 4e Chapter 2 Basic Elements of Java.
CPS120: Introduction to Computer Science Operations Lecture 9.
Copyright © 2012 Pearson Education, Inc. Publishing as Pearson Addison-Wesley C H A P T E R 2 Input, Processing, and Output.
1 Chapter 3 Numeric Types, Expressions, and Output.
Chapter 3 Arithmetic Expressions, Function Calls, and Output
1 Chapter 3 Numeric Types, Expressions, and Output Dale/Weems/Headington.
1 C++ Data Types structured array struct union class address pointer reference simple integral enum char short int long bool floating float double long.
Chapter 6 Mathematical Operations. 6.1 Mathematical Expressions In mathematics this expression is valid 0 = -4y + 5 It is invalid in programming Left.
CHAPTER 2 C++ SYNTAX & SEMANTICS #include using namespace std; int main() { cout
COMP Primitive and Class Types Yi Hong May 14, 2015.
VISUAL C++ PROGRAMMING: CONCEPTS AND PROJECTS Chapter 2A Reading, Processing and Displaying Data (Concepts)
1 Chapter 3 Numeric Types, Expressions, and Output Dale/Weems/Headington.
1 Chapter 2 C++ Syntax and Semantics, and the Program Development Process Programming in C++
Lecture 5: Expressions and Interactivity Professor: Dr. Miguel Alonso Jr. Fall 2008 CGS2423/COP1220.
C++ Data Types Check sample values of? ‘4’
Chapter 3 Numeric Types, Expressions, and Output.
Chapter 3 The New Math. C++ Data Types simple integral charshort intlong bool floating float double Long double enum address pointer reference structured.
Java Programming: From Problem Analysis to Program Design, Second Edition 1 Lecture 1 Objectives  Become familiar with the basic components of a Java.
1 Lecture Three I/O Formatting and Arithmetic Dr. Sherif Mohamed Tawfik.
CS0007: Introduction to Computer Programming Primitive Data Types and Arithmetic Operations.
1 Chapter 3 Numeric Types, Expressions, and Output Dale/Weems/Headington.
Lecture 3: More Java Basics Michael Hsu CSULA. Recall From Lecture Two  Write a basic program in Java  The process of writing, compiling, and running.
Chapter 3 Numeric Types, Expressions, and Output
Data Types, Arithmetic Operations
ITEC113 Algorithms and Programming Techniques
Multiple variables can be created in one declaration
Type Conversion, Constants, and the String Object
Numbers.
Primitive Types and Expressions
Chapter 3 The New Math.
Presentation transcript:

1 Computer Programming Andres, Wen-Yuan Liao Department of Computer Science and Engineering De Lin Institute of Technology

2 Chapter 4 Numeric Types and Expressions

3 Chapter 4 Topics Constants of Type Integer and Double lEvaluating Arithmetic Expressions lIncrement and Decrement Operators lImplicit Type Conversion and Explicit Type Casting lCalling a Value-Returning Method Using VB.NET Math class methods String Operations Length, IndexOf, Substring

4 4.1 VB.NET Primitive Data Types primitive Integral Boolean Byte Char Short Integer Long Single Double Floating Point

5 VB.NET Data Types Reference Array Interface Class primitive Integral Boolean Byte Char Short Integer Long Single Double Floating Point VB.NET Data Types

6 Primitive and Reference Types letter Dim letter As Char Dim title As String Dim bookName As String letter = "J" title = " Programming with VB.NET " bookName = title

7 Primitive and Reference Types letter title Dim letter As Char Dim title As String Dim bookName As String letter = "J" title = " Programming with VB.NET " bookName = title

8 Primitive and Reference Types letter title bookName Dim letter As Char Dim title As String Dim bookName As String letter = "J" title = " Programming with VB.NET " bookName = title

9 Primitive and Reference Types letter title bookName Dim letter As Char Dim title As String Dim bookName As String letter = "J" title = " Programming with VB.NET " bookName = title "J"

10 Primitive and Reference Types letter title bookName 2002 "Programming with VB.NET " Memory Location 2002 "J" Dim letter As Char Dim title As String Dim bookName As String letter = "J" title = " Programming with VB.NET " bookName = title

11 Dim letter As Char Dim title As String Dim book As String letter = "J" title = " Programming with VB.NET " book = title Primitive and Reference Types letter title bookName 2002 "Programming with VB.NET " Memory Location 2002 "J"

12 Primitive and Reference Types Dim letter As Char Dim title As String Dim book As String letter = "J" title = " Programming with VB.NET " bookName = title letter title bookName 2002 "Programming with VB.NET " Memory Location 2002 "J"

13 4.2Primitive Data Types in VB.NET Integral Types n can represent whole numbers and their negatives when declared as Short, Integer, or Long n can represent single characters when declared as Char Floating Point Types n represent real numbers with a decimal point n declared as Single, or Double

14 Samples of VB.NET Data Values Integer sample values Double sample values Char sample values ‘ B ’ ‘ d ’ ‘ 4 ’ ‘ ? ’‘ * ’

15 Integral Types Type Size in Bits Minimum Value to Maximum Value Byte to 127 Short16 -32,768 to 32,767 Integer32 -2,147,483,648 to 2,147,483,647 Long64 -9,223,372,036,854,775,808 to +9,223,372,036,854,775,807

16 Sizes of Integral VB.NET Types Byte 8 bits Short 16 bits Integer 32 bits Long 64 bits

17 Using one byte ( = 8 bits ), HOW MANY DIFFERENT NUMBERS CAN BE REPRESENTED USING 0’s and 1’s? Each bit can hold either a 0 or a 1. So there are just two choices for each bit, and there are 8 bits. 2 x 2 x 2 x 2 x 2 x 2 x 2 x 2 = 2 8 =

18 Similarly, using two bytes (= 16 bits), 2 16 = DIFFERENT NUMBERS CAN BE REPRESENTED. If we wish to have only one number representing the integer zero, and half of the remaining numbers positive, and half negative, we can obtain the 65,536 numbers in the range below :

19 Exponential (Scientific) Notation 2.7E4 means 2.7 x 10 4 = = E-4 means 2.7 x = =

Type Size in Bits Range of Values Single E - 45 to E+38 Double E to E+308 Floating Point Types

21 More About Floating Point Types lFloating-point types have an integer part and a fractional part, with a decimal point in between. Either the integer part or the fractional part, but not both, may be missing. EXAMPLES lAlternatively, floating point values can have an exponent, as in scientific notation. The number preceding the letter E doesn’t need to include a decimal point. EXAMPLES 1.84E1 5E2 8E E3

Declarations for Numeric Types lNamed constant declaration Const PI As Double = Const E As Single = F Const MAX_TEMP As Long = L Const MIN_TEMP As Integer = -273

23 Variable Declarations Dim student As Integer Dim sumOfScore As Integer Dim sumOfSquare As Long Dim average As Double Dim deviation As Simgle

What is an Arithmetic Expression? l An arithmetic expression is a valid arrangement of variables, constants, operators and parentheses. l An expression can be evaluated to compute a value of a given type. l The value of the expression 9.3 * 4.5 is 41.85

25 Some VB.NET Operators OperatorDescription ( )Parentheses +Positive - Negative *Multiplication / Division % Modulus (remainder) +Addition - Subtraction = Assignment

26 Operator lOperand, operator lUnary operator nAn operator that has just one operand. n+ (positive), -(negative) lBinary operator nAn operator that has two operand. n+ (Addition), - (Subtraction), *, /, %, =

27 Division Operator lThe result of the division operator depends on the type of its operands. lIf one or both operands has a floating type, the result is a floating point type (float or double). Otherwise, the result is an integral type. EXAMPLES 11 / 4 has value / 4.0 has value / 4.0 has value 2.75

28 Modulus Operator lThe modulus operator % when used with integer type operands has an integer type result. lIts result is the integer type remainder of an integer division. EXAMPLE 11 % 4 has value 3 because ) and Remainder = ?

29 ' ************************************************* ' FreezeBoil program ' This program computes the midpoint between ' the freezing and boiling points of water ' ************************************************* Imports System.ComponentModel'Import component handling Imports System.Drawing'Import graphics Imports System.WinForms 'I mport forms, event ' handling types Public Class Form1 'Create form for output Inherits System.WinForms.Form Const FREEZE_PT As Double = 32 'Freezing pt of water Const BOIL_PT As Double = 212 'Boiling pt of water Dim avgTemp As Double 'Holds the result of 'averaging FREEZE_PT and 'BOIL_PT Public Sub New() MyBase.New() Form1 = Me

30 'This call is required by the Win Form Designer InitializeComponent() lblFreeze.Text = "Water freezes at " & FREEZE_PT lblFreeze.text = lblFreeze.Text & " and boils at “ & _ BOIL_PT & " degrees." avgTemp = FREEZE_PT + BOIL_PT avgTemp = avgTemp / 2 lblFreeze.Text = lblFreeze.Text & "Halfway between is"_ & avgTemp & "degrees."

Compound VB.NET Operators Precedence OperatorDescription Higher ( )Parentheses +Positive - Negative *Multiplication / Division % Modulus (remainder) +Addition - Subtraction Lower = Assignment

32 Precedence lHigher Precedence determines which operator is applied first in an expression having several operators.

33 Associativity lLeft to right Associativity means that in an expression having 2 operators with the same priority, the left operator is applied first. (left to right) lIn VB.NET, the binary operators *, /, %, +, - are all left associative. Expression means ( ) + 1 not 9 – (5 +1 )

34 VB.NET Operator Precedence (highest to lowest) Operator Associativity. ( ) ( args ) Left to right unary: + - Right to left New ( type ) Right to left * / % Left to right + - Left to right = Right to left

35 7 * % 3 * means (7 * 10) - 5 % 3 * % 3 * (5 % 3) * * ( 2 * 4 ) ( ) Evaluate the Expression

36 Parentheses lParentheses can be used to change the usual order. lParts in ( ) are evaluated first. Evaluate (7 * (10 - 5) % 3) * ( 7 * 5 % 3 ) * ( 35 % 3 ) * *

37 More VB.NET Operators Dim age As Integer age = 8 age = age + 1 age 98

38 Variable = Expression First, Expression on right is evaluated. Then the resulting value is stored in the memory location of Variable on left. NOTE: An automatic type conversion occurs after evaluation but before the value is stored if the types differ for Expression and Variable Assignment Operator Syntax

39 What value is stored? Dim a As Double Dim b As Double a = 8.5 b = 9.37 a = b a b a b ? ?

40 What value is stored? Dim a As Double Dim b As Double a = 8.5 b = 9.37 a = b a b a b

41 What is stored? ? Dim someDouble As Single someDouble = 12 ' implicit type conversion someDouble 12.0 someDouble

42 What is stored? ? Dim someInt As Integer someInt someInt = 4.8 ' implicit type conversion someInt 4

43 Implicit type conversion occurs... Whenever values of different data types are used in: 1. arithmetic expressions 2. assignment operations TWO RULES APPLY...

44 Type conversion lThe implicit (automatic) conversion of a value from one data type to another. lWidening conversion nA type conversion that dose not result in a loss of information. lnarrowing conversion nA type conversion that may result in a loss of some information, as in converting a value of type Double to Single.

45 A widening conversion... l Is a type conversion that does not result in a loss of information. Specifically, for mixed type expressions using both integer and floating-point type values: Step 1. The integer value is temporarily converted to a floating-point value. Step 2. The operation is performed. Step 3. The result is a floating-point value.

46 lIs a type conversion that may result in a loss of information. FOR EXAMPLE, temperature number Dim temperature As Double = 98.6 Dim number As Integer number = temperature 'loss occurs A narrowing conversion...

47 CInt converts its argument to an Integer type. CLng converts its argument to a Long type. CSng converts its argument to a Single type. CDbl converts its argument to a Double type. Type Conversation is Explicit Conversion of Type

48 CInt(4.8) has value 4 CDbl(5) has value 5.0 CDbl(7/4) has value 1.0 CDbl(7) / CDbl(4) has value 1.75 Type Conversation is Explicit Conversion of Type

49 Some Expressions Dim age As Integer EXAMPLE someDouble = CDbl(3 * someInt + 2) someInt = CInt(5.2 / someDouble – 2.0) someSingle = someInt + 8 someSingle = CSng( someInt + 8 ) CDbl ( 4 / 8 )0.0 CDbl ( 4 ) / 80.5

50 What values are stored? Dim loCost As Double Dim hiCost As Double loCost = hiCost = loCost = CDbl (CInt (loCost * )) / hiCost = CDbl (CInt (hiCost * )) / 100.0

51 Values Rounded to 2 Decimal Places hiCost loCost

Method Call lA method call temporarily transfers control to the called method’s code to perform a task. lWhen the method’s code has finished executing, control is transferred back to the calling block.

53 Where are VB.NET methods? located in class libraries OR written by programmers

54 Write a VB.NET expression... To find the larger of myAge and yourAge and place it in variable older Dim older As Integer

55 Write a VB.NET expression... To find the larger of myAge and yourAge and place it in variable older Dim older As Integer... older = Math.Max ( myAge, yourAge )

56 Write a VB.NET expression... To find the square root of b 2 - 4ac and place it in variable d. Dim a, b, c, d As Double

57 Write a VB.NET expression... To find the square root of b 2 - 4ac and place it in variable d. Dim a, b, c, d As Double... d = Math.Sqrt ( b * b * a * c )

58 Some Math class methods Math.Abs ( x ) Math.Abs( -9.8 ) is 9.8 ' absolute value of x Math.Sqrt( x ) Math.Sqrt( 9.0 ) is 3.0 ' square root of a non-negative x Math.Log ( x ) Math.Log( 1.0 ) is 0 ' natural (base e) logarithm of x Math.Max ( x, y ) Math.Max( 2.5, 6.7) is 6.7 ' larger value of x and y Math.Pow ( x, y ) Math.Pow( 9, 0.5 ) is 3.0 ' x raised to the power y

A method call uses the name of the method followed by ( ) enclosing a list of parameters. Console.WriteLine ("Done") older = Math.Max (myAge, your Age) number = Math.Sqrt (456.34) A method call temporarily transfers control to the called method to perform its task. Method Calls

Two Kinds of Methods Always is called as part of an expression. Does some task. Returns a value that takes its place in the expression. Always is called as a separate statement. Does some task. Never returns a value to its caller. Value-Returning Non-value Returning

61 ObjectName.MethodName( Parameter List ) The parameter list is used to communicate values to the method by passing information. The parameter list can contain 0, 1, or more parameters, separated by commas, depending on the method. Method Call Syntax

Additional String Operations Length method Method Length returns an Integer value that equals the number of characters in the string. You must use dot notation and parentheses in the call to method Length.

63 What value is returned? ' Using methods Length Dim firstName As String Dim fullName As String Dim len As Ineger firstName = " Alexandra “ len = firstName.Length( ) fullName = firstName & “Jones” len = fullName.Length( )

64 IndexOf method Method IndexOf searches a string to find a particular substring, and returns an Integer value that is the beginning position for the first occurrence of that substring within the string. The substring argument can be a literal String, a String expression, or a Char value. If the substring could not be not found, method IndexOf returns value -1.

65 What value is returned? ' Using methods IndexOf Dim phrase As String Dim position As Integer phrase = “The dog and the cat " position = phrase.IndexOf(“the” ) position = phrase.IndexOf(“rat” ) Dim theString As String theString = “Abracadaba " position = theString.IndexOf(“a”c )

66 What value is returned? ' Using methods IndexOf Dim str1 As String Dim str2 As String str1 = “Programming and Problem Solving " str2 = “gram" str1.IndexOf(“and” ) str1.IndexOf(“Programming” ) str2.IndexOf(“and” ) str1.IndexOf(“Pro” ) str1.IndexOf(“ro” & str2 ) str1.IndexOf(“pr” & str2 ) str1.IndexOf(“ ” )

67 Substring method Method Substring returns a particular substring of a string, but does not change the string itself. The first parameter is an Integer that specifies a starting position within the string. The second parameter is an Integer that is 1 more than the ending position of the substring. l Positions of characters within a string are numbered starting from 0, not from 1.

68 What value is returned? ' Using methods Length, IndexOf, Substring Dim myString As String = "Programming and Problem Solving " myString.Substring ( 0, 7) myString.Substring ( 7, 8) myString.Substring ( 11, 1) myString.Substring ( 24, 7) myString.Substring ( 24, 1)

69 What value is returned? ' Using methods Length, IndexOf, Substring Dim stateName As String = " Mississippi " stateName.Length( ) value 11 stateName.IndexOf ( " is ") value 1 stateName.Substring( 0, 4 ) value “Miss” stateName.Substring( 4, 6 )value “is” stateName.Substring( 9, 11 ) value “pi”

70 Map Measurement Case Study l You want a program to determine walking distances between 4 sights in the city. l Your city map legend says one inch on the map equals 1/4 mile in the city. l You use the measured distances between 4 sights on the map. l Display the walking distances (rounded to the nearest tenth) between each of the 4 sights.

71 '******************************************************* ' Walk program ' This program computes the mileage (rounded to nearest ' tenth of mile) for each of 4 distances, given the ' measurements on a map with scale of 1 in = 0.25 mile ' ******************************************************* Imports System.ComponentModel Imports System.Drawing Imports System.WinForms Public Class Form1 Inherits System.WinForms.Form VB.NET Case Study Program

72 VB.NET Case Study Continued Const DISTANCE1 As Double = 1.5 ‘Measurement for 1 st distance Const DISTANCE2 As Double = 2.3 'Measurement for 2 nd distance Const DISTANCE3 As Double = 5.9 'Measurement for 3 rd distance Const DISTANCE4 As Double = 4R 'Measurement for 4 th distance Const MAP_SCALE As Double = 0.25 'Map SCALE Dim totMiles As Double 'Total of rounded mileage Dim miles As Double 'An individual rounded mileage Public Sub New() My Base.New Form1 = Me InitializeComponent() totMiles = 0R

73 'Compute and display miles for each distance on the map 'Output will not display.0 amounts miles = CDbl(CInt(DISTANCE1 * MAP_SCALE * 10R + 0.5) / 10R) lblDistance1.Text = "For a measurement of " & DISTANCE1 & _ " the first distance is " & miles _ & " mile(s) long. " totMiles = totMiles + miles miles = CDbl(CInt(DISTANCE2 * MAP_SCALE * 10R + 0.5) / 10R) lblDistance2.Text = "For a measurement of " & DISTANCE2 & _ " the second distance is " & miles & _ " mile(s) long." totMiles = totMiles + miles miles = CDbl(CInt(DISTANCE3 * MAP_SCALE * 10R + 0.5) / 10R) lblDistance3.Text = "For a measurement of " & DISTANCE2 & _ " the second distance is " & miles & _ " mile(s) long."

74 totMiles = totMiles + miles miles = CDbl(CInt(DISTANCE4 * MAP_SCALE * 10R + 0.5) / 10R) lblDistance4.Text = "For a measurement of " & DISTANCE2 & _ " the second distance is " & miles & _ " mile(s) long." totMiles = totMiles + miles lblTotMiles.Text = "Total mileage for the day is " & _ totMiles & " miles." End Sub 'Form overrides dispose to clean up the component list. Overrides Public Sub Dispose() MyBase.Dispose components.Dispose End Sub #Region " Windows Form Designer generated code " #End Region End Class