Presentation is loading. Please wait.

Presentation is loading. Please wait.

INSPIRING CREATIVE AND INNOVATIVE MINDS

Similar presentations


Presentation on theme: "INSPIRING CREATIVE AND INNOVATIVE MINDS"— Presentation transcript:

1 INSPIRING CREATIVE AND INNOVATIVE MINDS
DDC1012: PROGRAMMING CHAPTER 4: DATA TYPES, OPERATORS AND LIBRARY FUNCTIONS Prepared By: Pn. Nik Maria Nik Mahamood Reference: Hanly, Koffman, C Problem Solving and Program Design in C, Sixth Edition, Pearson International Edition. Refer chapter 2 (Pg. 66 – 119) AND Chapter 3 (pg 137 – 139) INSPIRING CREATIVE AND INNOVATIVE MINDS

2 DATA TYPES, OPERATORS AND LIBRARY FUNCTIONS
4.1 Representation of Data Types 4.2 Operators 4.3 Arithmetic Operations 4.4 Writing Mathematical Formulas in C 4.5 Library Functions INSPIRING CREATIVE AND INNOVATIVE MINDS

3 4.1 REPRESENTATION OF DATA TYPES
Variables can represents various of data types. The basic of data types can be divided into two classes: Character Data type : char A character in C can be interpreted as a small integer (between 0 and 255). Numeric Data type: int, float and double Integer (int) type – a number without fraction. Data type float and double – a number with fraction (floating-point). INSPIRING CREATIVE AND INNOVATIVE MINDS

4 4.1 REPRESENTATION OF DATA TYPES
C contains standard data types: char int double float INSPIRING CREATIVE AND INNOVATIVE MINDS

5 4.1 REPRESENTATION OF DATA TYPES
Data Type int The integer data type represents a number without fraction (floating points). In C, is called int. Example: INSPIRING CREATIVE AND INNOVATIVE MINDS

6 4.1 REPRESENTATION OF DATA TYPES
Typical integer sizes: Type Byte size Range value short int 2 unsigned short int int unsigned int long int 4 unsigned long int INSPIRING CREATIVE AND INNOVATIVE MINDS

7 4.1 REPRESENTATION OF DATA TYPES
Data Type double / float The double or float data type represents a number with fraction. Example: INSPIRING CREATIVE AND INNOVATIVE MINDS

8 4.1 REPRESENTATION OF DATA TYPES
Typical floating sizes: Type Byte size Floating- point Range value float 4 6 double 8 15 long double 16 19 INSPIRING CREATIVE AND INNOVATIVE MINDS

9 4.1 REPRESENTATION OF DATA TYPES
Constants Constants are data values that cannot be change during the execution of a program. Defined Constants Use the preprocessor command define Example #define SALES_TAX_RATE 0.05 Memory Constants Use a C type qualifier : const Example: Const float pi = INSPIRING CREATIVE AND INNOVATIVE MINDS

10 INSPIRING CREATIVE AND INNOVATIVE MINDS
4.2 OPERATORS Most of C programs perform arithmetic calculations. Better know operators to manipulate data. The arithmetic operators are all binary operators. For example, the expression 3 + 7 contains the binary operator + and the operands 3 and 7. INSPIRING CREATIVE AND INNOVATIVE MINDS

11 INSPIRING CREATIVE AND INNOVATIVE MINDS
4.2 OPERATORS Expression is a sequence of operands and operators that reduces to a single value. Operator language-specific syntactical token that requires an action to be taken. Operand receives an operator’s action. INSPIRING CREATIVE AND INNOVATIVE MINDS

12 INSPIRING CREATIVE AND INNOVATIVE MINDS
4.2 OPERATORS The C arithmetic operators are summarized in table below: Arithmetic Operator C Operation C expression + Addition 10 + 7 - Subtraction 120 – 64 * Multiplication 3 * 7 / Division 66 / 6 % Modulus 4 % 2 INSPIRING CREATIVE AND INNOVATIVE MINDS

13 INSPIRING CREATIVE AND INNOVATIVE MINDS
4.2 OPERATORS Division Operation Two types: Integer division Floating-point division Both types of division using / operator. Integer Division Both operands are integer values. Operand can be constants or variables. Examples: 8 / 2 sum / 3 98 / value sum / bil INSPIRING CREATIVE AND INNOVATIVE MINDS

14 INSPIRING CREATIVE AND INNOVATIVE MINDS
4.2 OPERATORS After division operation ~ result must be integer. Example C expression Output 64 / 8 8 12 / 5 2 23 / 3 7 INSPIRING CREATIVE AND INNOVATIVE MINDS

15 INSPIRING CREATIVE AND INNOVATIVE MINDS
4.2 OPERATORS Floating-point Division One operand is floating-point values or both operands are floating-points. After division operation ~ result must be floating point C expression Output 5 / 2.5 2.0 5.5 / 2.0 2.25 5.0 / 10 0.5 INSPIRING CREATIVE AND INNOVATIVE MINDS

16 INSPIRING CREATIVE AND INNOVATIVE MINDS
4.2 OPERATORS Modulus Operation Special operation. Output of this operation is the remainder after first operand is divided by second operand. This operation can be done for integer operands only. The result ~ must be an integer value. Example C expression Output 5 % 3 2 7 % 2 1 12 % 2 INSPIRING CREATIVE AND INNOVATIVE MINDS

17 INSPIRING CREATIVE AND INNOVATIVE MINDS
4.2 OPERATORS Relational Operators Relational operators ~ use to compare value from two expressions. The result of using relational operators is always the observation of true or false False (zero) and true (nonzero). INSPIRING CREATIVE AND INNOVATIVE MINDS

18 X is greater than or equal to Y X is less than or equal to Y
4.2 OPERATORS The relational operators are summarized in table below: Relational Operator Example of c condition Meaning of C Condition == X == Y X is equal to Y != X != Y X is not equal to Y > X > Y X is greater than Y < X < Y X is less than Y >= X >= Y X is greater than or equal to Y <= X <= Y X is less than or equal to Y INSPIRING CREATIVE AND INNOVATIVE MINDS

19 Relational Expression
4.2 OPERATORS The examples of relational expressions are as follow: Relational Expression Value 6 < 9 1 7 == 5 6 != 5 9 >= 5 INSPIRING CREATIVE AND INNOVATIVE MINDS

20 INSPIRING CREATIVE AND INNOVATIVE MINDS
4.2 OPERATORS Mantic Operators Mantic operators ~ use to determine a decision from several cases (conditions) related. The mantic operators expressions are shown in table below. Mantic Operator Meaning && AND || OR ! NOT INSPIRING CREATIVE AND INNOVATIVE MINDS

21 INSPIRING CREATIVE AND INNOVATIVE MINDS
4.2 OPERATORS The examples of mantic operations are shown in table below: A B A && B A || B 1 A !A 1 INSPIRING CREATIVE AND INNOVATIVE MINDS

22 INSPIRING CREATIVE AND INNOVATIVE MINDS
4.2 OPERATORS Given A = 2, B = 5, C = 15, D = 17, answer questions below. Question #1 (A >= 1) && (B == 5) Question #2 (C >= (B * 3)) || (A == 3) Question #3 ! (C > A) Question #4 ! ((A < B) || (C > D)) INSPIRING CREATIVE AND INNOVATIVE MINDS

23 INSPIRING CREATIVE AND INNOVATIVE MINDS
4.2 OPERATORS Increment and Decrement Operators C provides the unary increment operator, ++ and the unary decrement operator, -- These operators are summarized in table below. Operator Sample expression Explanation ++ ++a Increment a by 1, then use the new value of a in the expression in which a resides. a++ Use the current value of a in the expression in which a resides, then increment a by 1. INSPIRING CREATIVE AND INNOVATIVE MINDS

24 INSPIRING CREATIVE AND INNOVATIVE MINDS
4.2 OPERATORS Operator Sample expression Explanation -- --b Decrement b by 1, then use the new value of b in the expression in which b resides. b-- Use the current value of b in the expression in which b resides, then decrement b by 1. INSPIRING CREATIVE AND INNOVATIVE MINDS

25 INSPIRING CREATIVE AND INNOVATIVE MINDS
4.2 OPERATORS The increment and decrement expressions are summarized in table below: Expression Meaning Statement A++ A = A + 1 A += 1; ++A A-- A = A - 1 A -= 1; --A INSPIRING CREATIVE AND INNOVATIVE MINDS

26 INSPIRING CREATIVE AND INNOVATIVE MINDS
4.2 OPERATORS Question #1 I = 5; J = I++ - 2 Question #2 J = I –2; I++ Question #3 I++; J = I – 2; Answer #1: I = ? J = ? Answer #2: I = ? J = ? Answer #3: I = ? J = ? INSPIRING CREATIVE AND INNOVATIVE MINDS

27 INSPIRING CREATIVE AND INNOVATIVE MINDS
4.2 OPERATORS CASE STUDY Problem Case study: Supermarket Coin Processor (Refer page 99 from the main textbook) This case study demonstrates the manipulation of type int data using / and % and type char data INSPIRING CREATIVE AND INNOVATIVE MINDS

28 INSPIRING CREATIVE AND INNOVATIVE MINDS
4.2 OPERATORS INSPIRING CREATIVE AND INNOVATIVE MINDS

29 INSPIRING CREATIVE AND INNOVATIVE MINDS
4.2 OPERATORS INSPIRING CREATIVE AND INNOVATIVE MINDS

30 4.3 ARITHMETIC EXPRESSIONS
C arithmetic expression is a combination one or more arithmetic expressions. Examples 5 + 6 14 * 5 * 2 21 – * 4 / 2 7.5 * (2.0 – 4.52) INSPIRING CREATIVE AND INNOVATIVE MINDS

31 4.3 ARITHMETIC EXPRESSIONS
Level of Precedence C evaluates arithmetic expressions in a precise sequence determined by rules of operator precedence. Precedence of arithmetic expressions as shown in table below: Operator(s) Order of evaluation (Precedence) () Evaluated first. *, /, % Evaluated second. If they are several, they are evaluated left to right + or - Evaluated last. If they are several, they are evaluated left to right INSPIRING CREATIVE AND INNOVATIVE MINDS

32 4.3 ARITHMETIC EXPRESSIONS
Example of C arithmetic expressions based on precedence evaluation Example #2: 2 * 6 / 3 = 12 / 3 = 4 Example #1: 2 + 5 * 3 = = Example #3: (2 + 5) / 3 = 7 / 3 = INSPIRING CREATIVE AND INNOVATIVE MINDS

33 4.3 ARITHMETIC EXPRESSIONS
Comparison Between Algebraic Expression and C Arithmetic Expression Algebraic Expressions 14 – 5 + 6 16 – 8 2 C Arithmetic Expressions 14 – 5 + 6 16 – 8 / 2 ( ) / 2 INSPIRING CREATIVE AND INNOVATIVE MINDS

34 4.3 ARITHMETIC EXPRESSIONS
The assignment expression evaluates the operand on the right side of the operator (=) The result places the expression values in the operand on the left of assignment operators Examples Average = ( ) / 3; Salary = 16.5 * 30; X = X + 1; Z = 5; INSPIRING CREATIVE AND INNOVATIVE MINDS

35 4.3 ARITHMETIC EXPRESSIONS
/* Example 1: simple assignment expression */ #include <stdio.h> void main() { float price = 12.50, discount = 0.05, payment; payment = price – (price * discount); printf(“Price is RM %.2f\n”, payment); } INSPIRING CREATIVE AND INNOVATIVE MINDS

36 4.3 ARITHMETIC EXPRESSIONS
/* Example 2: assignment expression ~ input from user */ #include <stdio.h> void main() { float price, discount, payment; printf(“The price of purchase: “); scanf(“%f”, &price); printf(“Rate of discount: “); scanf(“%f”, &discount); payment = price – (price * discount); \ printf(“Price is RM %.2f\n”, payment); } INSPIRING CREATIVE AND INNOVATIVE MINDS

37 4.3 ARITHMETIC EXPRESSIONS
Double Assignment Expressions Example: a = b = c = 40; This statement can be solved by: a = b = (c = 40) a = (b = (c = 40)) (a = (b = (c = 40))) INSPIRING CREATIVE AND INNOVATIVE MINDS

38 4.3 ARITHMETIC EXPRESSIONS
Compound Assignment Expressions A compound assignment is a shorthand notation for a simple assignment. Five compound assignment operators are discussed: *=, /=, %, and -= Example simple expression given as follows: bil = bil + 5; using compound assignment operator: bil += 5; INSPIRING CREATIVE AND INNOVATIVE MINDS

39 4.3 ARITHMETIC EXPRESSIONS
The compound assignment operators are summarized in table below: Examples compound Operator Compound Expression Equivalent simple Expression += X += Y X = X + Y -= X -= Y X = X – Y *= X *= Y X = X * Y /= X /= Y X = X / Y %= X %= Y X = X % Y INSPIRING CREATIVE AND INNOVATIVE MINDS

40 4.4 WRITING MATHEMATICAL FORMULA IN C
Example: Mathematical Formula C Expression b2 – 4ac b * b – 4 * a * c a + b c + d (a + b) / (c + d) 1 1 + x2 1 / (1 + x * x) a x –(b + c) a * -(b + c) INSPIRING CREATIVE AND INNOVATIVE MINDS

41 INSPIRING CREATIVE AND INNOVATIVE MINDS
4.5 LIBRARY FUNCTIONS C has no operator symbols meaning “square root”, “power” or “exponent”. C provides program unit called functions to carry out these and other mathematical operations. These functions also known as predefined functions. Example: y = sqrt(100); Function result, 10, is assigned to y z = pow(5, 2); Function result, 25, is assigned to z INSPIRING CREATIVE AND INNOVATIVE MINDS

42 INSPIRING CREATIVE AND INNOVATIVE MINDS
4.5 LIBRARY FUNCTIONS INSPIRING CREATIVE AND INNOVATIVE MINDS

43 INSPIRING CREATIVE AND INNOVATIVE MINDS
4.5 LIBRARY FUNCTIONS INSPIRING CREATIVE AND INNOVATIVE MINDS


Download ppt "INSPIRING CREATIVE AND INNOVATIVE MINDS"

Similar presentations


Ads by Google