Download presentation
Published byKenneth Perry Modified over 9 years ago
1
Beginning Problem-Solving Concepts for the Computer
COP1006 4/24/2017 Beginning Problem-Solving Concepts for the Computer Lesson 2 McManus COP1006 COP1006_02
2
Fundamental Concepts The building blocks of equations and expressions
COP1006 4/24/2017 Fundamental Concepts The building blocks of equations and expressions Constants & Variables Data Types Functions Operators Expressions & Equations McManus COP1006 COP1006_02
3
Constants A value Can be of any data type Examples
COP1006 4/24/2017 Constants A value a specific alphabetical and/or numeric value Does not change during the processing of all the instructions in a solution Can be of any data type Numeric, alphabetical or special symbols Examples 3, 5, 10, “Mulder”, “Scully”, “+”, “-”, “/” Note: “” indicates datum rather than variable name McManus COP1006 COP1006_02
4
Constants In some programming languages, constants can be named
COP1006 4/24/2017 Constants In some programming languages, constants can be named Provides protection to the constant value and other areas of the program. Cannot be changed once given initial value Example SalesTaxRate = 6 Commission_Rate = 6 Note: no spaces within variable names McManus COP1006 COP1006_02
5
Variables May change during processing
COP1006 4/24/2017 Variables May change during processing A name is assigned to each variable used in a solution. The name references the memory area where the value is stored. May be of any data type Examples Age, LastName, Address, PayRate McManus COP1006 COP1006_02
6
Rules for Naming Variables
COP1006 4/24/2017 Rules for Naming Variables Use mnemonic terms, that is, the name means something Use PayRate not Z Must begin with a Letter Do not use special symbols Do not use spaces Either combine terms (PayRate) or include an underscore to separate (Pay_Rate) Be consistent! Some languages are case sensitive PayRate, Pay_Rate, PAYRATE, or PAY_RATE Use appropriate naming convention McManus COP1006 COP1006_02
7
Data & Information Data Information Raw, organized facts
COP1006 4/24/2017 Data & Information Data Raw, organized facts Information Meaningful output McManus COP1006 COP1006_02
8
Data Types Most common types Most languages include other data types
COP1006 4/24/2017 Data Types Most common types Numeric Character Logical Most languages include other data types Date Currency User-defined McManus COP1006 COP1006_02
9
Data Types & Data Sets Data Type Data Set Examples Integer
COP1006 4/24/2017 Data Types & Data Sets Data Type Data Set Examples Integer All whole numbers 3456 -43 Real All real numbers (whole + decimal) Character (uses quotation marks) All letters, numbers, and special symbols “A”, “a”, “1”, “5”, “+”, “%” String (uses quotation marks) Combinations of more than one character “X Files” “Torchwood” “ ” Logical True or False True False McManus COP1006 COP1006_02
10
Numeric Types Include all types of numbers Integers
COP1006 4/24/2017 Numeric Types Include all types of numbers Integers 3, 5, -5, 0, -1 and 32,767 Real numbers (floating point numbers) 3.1459, -5745 Scientific Notation 2.3E5 or 5.4E-3, where E stands for the Power of 10 Can be Positive or Negative McManus COP1006 COP1006_02
11
Character Types Alphanumeric data set Consists of
COP1006 4/24/2017 Character Types Alphanumeric data set Consists of all single-digit numbers, letters, and special characters available to the computer contained within quotation marks McManus COP1006 COP1006_02
12
Coding Systems EBCDIC – Extended Binary Coded Decimal Information Code
COP1006 4/24/2017 Coding Systems EBCDIC – Extended Binary Coded Decimal Information Code Used on IBM mainframes ASCII - American Standard Code for Information Interchange 256 characters (1 byte) First 128 – standard Second 128 – specific to computer Unicode (2 bytes) Replacing ASCII as standard on PC’s See Appendix C McManus COP1006 COP1006_02
13
String Data Type Made up of one or more characters
COP1006 4/24/2017 String Data Type Made up of one or more characters Contained within quotation marks Cannot be used within calculations McManus COP1006 COP1006_02
14
Strings - Caution “123” is not the same thing as 123
COP1006 4/24/2017 Strings - Caution “123” is not the same thing as 123 The first one is a string The second one is a number Becomes important when deciding when a piece of data is a string or a number Ex. Social Security Numbers The first one contains 11 characters and is left aligned whereas the second contains 9 numbers and is right aligned McManus COP1006 COP1006_02
15
Comparing Characters & Strings
COP1006 4/24/2017 Comparing Characters & Strings The computer’s particular coding scheme (ASCII, Unicode, or EBCDIC) converts the character to its associated ordinal number Note: Uppercase letters have a smaller ordinal values than lowercase letters “A” = 193 whereas “a” = (Unicode 16-bit) “A” = 65 whereas “a” = 97 (ASCII 8-bit) Once converted, each character, one at a time, can be compared McManus COP1006 COP1006_02
16
Concatenation Joins character data or string data together
COP1006 4/24/2017 Concatenation Joins character data or string data together Operators: + and & Dependent on programming language & can mix data types + cannot mix data types (also known as Join) Examples FName & “ ” & MI & “ ” & LName “James” + “ ” + “T.” + “ ” + “Kirk” = “James T. Kirk” “James” & “ ” & “T.” & “ ” & “Kirk” = “James T. Kirk” Note the space at the end of the T. McManus COP1006 COP1006_02
17
Logical (Boolean) Data Type
COP1006 4/24/2017 Logical (Boolean) Data Type Consists just two pieces of data True and False Different programming languages also allow Yes and No 1 (True) and 0 (False) On and Off McManus COP1006 COP1006_02
18
Other Pre-defined Data Types
COP1006 4/24/2017 Other Pre-defined Data Types Dependent on programming language, numerous other pre-defined data types are available. Examples Dates 01/01/1900 January 1, 1900 Times 03:35:05 PM 15:35:05 Currency Note: This is how the data will be stored, not how it is formatted. McManus COP1006 COP1006_02
19
User-Defined Data Types
COP1006 4/24/2017 User-Defined Data Types User-defined Data types Defined by the user as a new data type Examples Records Employee_Record Fname Lname SSN End McManus COP1006 COP1006_02
20
Rules for Data Types Programmer designates the data type
COP1006 4/24/2017 Rules for Data Types Programmer designates the data type Data types cannot be mixed Called data typing Not allowed: X = * 5 (real * integer) All data to be used in calculations must be declared as a numeric data type Zip should be a string because won’t be used in calculation Each data type uses a data set or domain Integers – typically > 0 -> but is programming language dependent Characters – all alphanumeric characters included in the computer’s coding scheme Logical – the words “true” and “false” McManus COP1006 COP1006_02
21
COP1006 4/24/2017 Functions Small sets of instructions that perform specific tasks and return values. Two types: Pre-defined Built into a computer language or application. User-defined McManus COP1006 COP1006_02
22
COP1006 4/24/2017 Functions Benefits Reduces the amount of code that needs to be written, thus reducing errors of repetition Shortens the development time Improves readability McManus COP1006 COP1006_02
23
COP1006 4/24/2017 Function Parameters Data usually placed within parentheses that the function uses without altering the data In Sqrt(n), the n represents the parameter, in this case a number In Value(s), the s represents a string McManus COP1006 COP1006_02
24
Function Types Mathematical String Conversion Statistical Utility
COP1006 4/24/2017 Function Types Mathematical String Conversion Statistical Utility Specific to each programming language…a partial list follows McManus COP1006 COP1006_02
25
Mathematical Functions
COP1006 4/24/2017 Mathematical Functions McManus COP1006 COP1006_02
26
COP1006 4/24/2017 String Functions McManus COP1006 COP1006_02
27
COP1006 4/24/2017 Conversion Functions McManus COP1006 COP1006_02
28
Statistical Functions
COP1006 4/24/2017 Statistical Functions McManus COP1006 COP1006_02
29
COP1006 4/24/2017 Utility Functions Error is a special function that appears in most languages and upon execution return control to the program when (not if) system errors occur. McManus COP1006 COP1006_02
30
Operators The data connectors within expressions and equations.
COP1006 4/24/2017 Operators The data connectors within expressions and equations. Operands & Resultants Operand are the data Resultant is the answer that results when the operation is completed McManus COP1006 COP1006_02
31
Two Types of Operations
COP1006 4/24/2017 Two Types of Operations Unary Negation Binary Addition, Subtraction, Multiplication, Floating Point Division and Integer Division McManus COP1006 COP1006_02
32
Operator Types Mathematical Relational Logical +, -, *, / \, Mod
COP1006 4/24/2017 Operator Types Mathematical +, -, *, / \, Mod ^, and functions Relational <, >, <=, >=, =, <> Logical And, Or, Not, XOR, EQV McManus COP1006 COP1006_02
33
Two Special Math Operators
COP1006 4/24/2017 Two Special Math Operators Integer Division (\) Regular Floating Point Division, except only the whole number part of the answer is returned. If given a Floating Point number, the number is rounded—first—before division occurs. 2 10 10 McManus COP1006 COP1006_02
34
Two Special Math Operators
COP1006 4/24/2017 Two Special Math Operators Modulo Division (Mod) or Modulus The remainder part of the answer is returned. 3 19 15 4 McManus COP1006 COP1006_02
35
The Boolean Data Type Returns either the keywords True or False or
COP1006 4/24/2017 The Boolean Data Type Returns either the keywords True or False or Returns a non-zero or zero value. -9, -1, 1, 2 are equivalent to True 0 is equivalent to False Is stored in two bytes McManus COP1006 COP1006_02
36
Relational Operators Perform comparisons
COP1006 4/24/2017 Relational Operators Perform comparisons variable - relational operator - variable Ex. If Y > Z then ... = equal <> not equal < less than > greater than <= less than or equal to >= greater than or equal to McManus COP1006 COP1006_02
37
Logical (Boolean) Operators
COP1006 4/24/2017 Logical (Boolean) Operators And, Or, XOR, Not, EQV Boolean Expressions are used To create more complicated Boolean Expressions. If a = b AND c < d Then … They are defined by using Truth Tables… Know the significance of each! McManus COP1006 COP1006_02
38
COP1006 4/24/2017 The NOT Operator Also called the “logical complement” or “logical negation” Significance: Whatever the value of A is, NOT A will be the opposite. McManus COP1006 COP1006_02
39
COP1006 4/24/2017 The AND Operator Significance: The only time the result is True is if both A and B are True. McManus COP1006 COP1006_02
40
COP1006 4/24/2017 The OR Operator Significance: The only time the result is False is if both A and B are False. McManus COP1006 COP1006_02
41
The XOR (Exclusive Or) Operator
COP1006 4/24/2017 The XOR (Exclusive Or) Operator Significance: The only time the result is True is if A and B are different and False if both A and B are the same. McManus COP1006 COP1006_02
42
The EQV (Equivalent) Operator
COP1006 4/24/2017 The EQV (Equivalent) Operator Significance: The only time the result is True is if A and B are the same and False if both A and B are the different. McManus COP1006 COP1006_02
43
Hierarchy of Operations
COP1006 4/24/2017 Hierarchy of Operations Data and Operators are combined to form expressions and equations To evaluate these in the proper order, a hierarchy of operations, or Order of Precedence, is used. McManus COP1006 COP1006_02
44
Hierarchy of Operations
COP1006 4/24/2017 Hierarchy of Operations Note 1: Whenever you want to clarify an equation, use the parentheses! Note 2: Use the one on the next slide for your homework, but be aware that each language will have its own hierarchy, as well as different languages have different Hierarchies McManus COP1006 COP1006_02
45
The Order of Precedence
COP1006 4/24/2017 The Order of Precedence *this differs from the one in the textbook—use this one… McManus COP1006 COP1006_02
46
Example Evaluate the following:
COP1006 4/24/2017 Example Evaluate the following: A = True, B = False, C = True, D = False A or B or C and D and A and B and (not C) or (not D) To do this, we create what’s called an Evaluation Tree… McManus COP1006 COP1006_02
47
COP1006 4/24/2017 The Evaluation Tree A or B or C and D and A and B and (not C) or (not D) False True McManus COP1006 COP1006_02
48
Expressions & Equations
COP1006 4/24/2017 Expressions & Equations Expressions Process the data and the operands, through the use of the operators Does not store the resultant (answer) Examples Price * SalesTaxRate (Hours – 40) * Wage * 1.5 Length * Width McManus COP1006 COP1006_02
49
COP1006 4/24/2017 Equations Same as an expression, except the equation stores the resultant (answer) in a memory location “takes on the value of” not equals Examples SalesTax = Price * SalesTaxRate OvertimePay = (Hours – 40) * Wage * 1.5 Area = Length * Width SalesTax is the memory location where the answer will be stored Often called Assignment Statements McManus COP1006 COP1006_02
50
More about Equations Destructive Read-In Non-Destructive Read-In
COP1006 4/24/2017 More about Equations Destructive Read-In The value stored in the variable on the left-hand side of the equals sign is replaced by the result of the expression on the right-hand side. Non-Destructive Read-In Values used on the right-hand side are protected from being changed. SalesTax = Price * SalesTaxRate D R-I ND R-I ND R-I McManus COP1006 COP1006_02
51
COP1006 4/24/2017 Straight-Line Form Algebraic Expressions cannot be represented in the computer. They must be converted to a form the computer will recognize. Thus, Straight Line Form = (X – Y) / ( (X + Y)^2 / (X – Y )^2 ) straight line form McManus COP1006 COP1006_02
52
3 Types of Problems Computational Logical Repetitive
COP1006 4/24/2017 3 Types of Problems Computational problems involving some kind of mathematical processing Logical Problems involving relational or logical processing Repetitive Problems involving repeating a set of mathematical and/or logical instructions. McManus COP1006 COP1006_02
53
Planning Your Solution...
COP1006 4/24/2017 Next? Planning Your Solution... McManus COP1006 COP1006_02
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.