1 Structured Data (Lecture 11) By: Dr. Norazah Yusof FSKSM, UTM.

Slides:



Advertisements
Similar presentations
Starting Out with C++, 3 rd Edition 1 Chapter 11 – Structured Data Abstract data types (ADTs) are data types created by the programmer. ADTs have their.
Advertisements

Copyright © 2012 Pearson Education, Inc. Chapter 11: Structured Data.
Lesson 11 Structured Data CS1 Lesson John Cole1.
Structure.
Structures in C.
1 Arrays Chapter 9. 2 Outline  The array structure (Section 9.1)  Array declaration  Array initialization  Array subscripts  Sequential access to.
1 Chapter Structured Types, Data Abstraction and Classes Dale/Weems.
1 9/13/06CS150 Introduction to Computer Science 1 Type Casting.
True or false A variable of type char can hold the value 301. ( F )
 2003 Prentice Hall, Inc. All rights reserved. 1 Arrays –Structures of related data items –Static entity (same size throughout program) A few types –Pointer-based.
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 11 – Structured Data
Chapter 11 Structure. 2 Objectives You should be able to describe: Structures Arrays of Structures Structures as Function Arguments Dynamic Structure.
A function (procedure) code to perform a task (carry out an algorithm) Return_type Func(parameters) ---- Func (arguments) --- Return value.
Copyright 2003 Scott/Jones Publishing Standard Version of Starting Out with C++, 4th Brief Edition Chapter 10 Structured Data.
More Storage Structures A Data Type Defined by You Characteristics of a variable of a specific ‘data type’ has specific values or range of values that.
Chapter 11: Structured Data. Slide Introduction An array makes it possible to access a list or table of data of the same data type by using a single.
VARIABLES, TYPES, INPUT/OUTPUT, ASSIGNMENT OPERATION Shieu-Hong Lin MATH/CS Department Chapel.
Expressions and Interactivity Chapter 3. 2 The cin Object Standard input object Like cout, requires iostream file Used to read input from keyboard Often.
Lecture 18: Structured Data Professor: Dr. Miguel Alonso Jr. Fall 2008 CGS2423/COP1220.
1 CS102 Introduction to Computer Programming Chapter 11 Structured Data.
ECE 264 Object-Oriented Software Development Instructor: Dr. Honggang Wang Fall 2012 Lecture 4: Continuing with C++ I/O Basics.
Structured Data Types array array union union struct struct class class.
Pointer Data Type and Pointer Variables II By: Nouf Aljaffan Edited by : Nouf Almunyif.
CS1201: Programming Language 2 Structure By: Nouf Almunyif.
Cosc237/structures1 Structures aggregate data types record - single variable name for the whole collection composed of several variables - fields,BUT,
Copyright 2003 Scott/Jones Publishing Standard Version of Starting Out with C++, 4th Edition Chapter 11 Structured Data.
ARRAYS Lecture 2. 2 Arrays Hold Multiple values  Unlike regular variables, arrays can hold multiple values.
 Introduction to Computer Science COMP 51 – Fall 2012 – Section 2 Structures.
Chapter 05 (Part III) Control Statements: Part II.
1 Chapter 11 Structured Data. 2 Topics 10.1 Abstract Data Types 10.2 Combining Data into Structures 10.3 Accessing Structure Members 10.4 Initializing.
Copyright © 2012 Pearson Education, Inc. Chapter 11: Structured Data.
Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 11: Structured Data.
Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 11: Structured Data.
Copyright © 2012 Pearson Education, Inc. Chapter 11: Structured Data.
Structured Data Chapter 11. Combining Data Into Structures Structure: C++ construct that allows multiple variables to be grouped together Format: struct.
Chapter 7 A Data Types – Structures Structures Structure: C++ construct that allows multiple variables to be grouped together Structure Declaration.
Structured Data Types struct class Structured Data Types array – homogeneous container collections of only one type struct – heterogeneous data type.
A FIRST BOOK OF C++ CHAPTER 16 DATA STRUCTURES. OBJECTIVES In this chapter, you will learn about: Single Structures Arrays of Structures Structures as.
1 C Language Structures. 2 Topics Concept of a structure Concept of a structure Structures in c Structures in c Structure declaration Structure declaration.
1 Chapter 12 Arrays. 2 C++ Data Types structured array struct union class address pointer reference simple integral enum char short int long bool floating.
Struct Data Type in C++ What Are Structures?
CMPSC 121- Spring 2015 Lecture 6 January 23, 2015.
1 CS161 Introduction to Computer Science Topic #15.
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Chapter 11: Structured Data.
Struct s (7.4) Used as data aggregates for an entity can be different types of data e.g. for student id, name, GPA, address,... Similar to classes, but.
Extra Recitations Wednesday 19:40-22:30 FENS L055 (tomorrow!) Friday 13:40-16:30 FENS L063 Friday 17: :30 FENS L045 Friday 19:40-22:30 FENS G032.
C++ Programming Lecture 14 Arrays – Part I The Hashemite University Computer Engineering Department (Adapted from the textbook slides)
Literals A literal (sometimes called a constant) is a symbol which evaluates to itself, i.e., it is what it appears to be. Examples: 5 int literal
1 1  Lecture 11 – Structured Data FTMK, UTeM – Sem /2014.
1 Lecture 4: Part1 Arrays Introduction Arrays  Structures of related data items  Static entity (same size throughout program)
Chapter Structured Data 11. Combining Data into Structures 11.2.
1 C++ Data Types structured array struct union class address pointer reference simple integral enum char short int long bool floating float double long.
Lecture 2 Arrays. Topics 1 Arrays hold Multiple Values 2 Accessing Array Elements 3 Inputting and Displaying Array Contents 4 Array Initialization 5 Using.
Topic 4 Data Structures Program Development and Design Using C++, Third Edition.
Chapter 6 Data Structures Program Development and Design Using C++, Third Edition.
Structured Data.
Structured Data Abstract data types (ADTs) are data types created by the programmer. ADTs have their own range (or domain) of data and their own set of.
Classes and Data Abstraction
CO1401 Program Design and Implementation
Structured Data (Lecture 07)
Chapter 11: Structured Data.
C++ Arrays.
Structures Lesson xx In this module, we’ll introduce you to structures.
C++ fundamentals Lecture 1, Chapter 2 – pp /22/2018 Y K Choi.
CS148 Introduction to Programming II
Variables T.Najah Al_Subaie Kingdom of Saudi Arabia
Standard Version of Starting Out with C++, 4th Edition
Structures Structured Data types Data abstraction structs ---
Presentation transcript:

1 Structured Data (Lecture 11) By: Dr. Norazah Yusof FSKSM, UTM

2 Data Types ■ Primitive data types - defined as a basic part of the language. ■ Abstract Data Type (ADT) – created by the programmer and is composed of one or more primitive data types. ■ Have own range (or domain) of data and own set of operations that may be performed on them. boolintunsigned long int charlong intfloat unsigned charunsigned short intdouble short intunsigned intlong double

3 Abstract Data Type ■ Example: Write a program to simulate a 12-hour clock.

4 Abstract Data Type ■ Example: Write a program to simulate a 12-hour clock. ■ The program could contain three ADTs: 1.Hours 2.Minutes 3.Seconds ■ The range of values 1.Hours : integers 1 through 12 2.Minutes : integers 0 through 59 3.Seconds : integers 0 through 59 ■ If an Hours object is set to 12 and then incremented, it will then take on the value 1. ■ If an Minutes object or Seconds object is set to 59 and then incremented, it will then take on the value 0.

5 Combining Data into Structures ■ Structure – group several variables together into a single item ■ Declaration format of a structure: struct tag { variable declaration; //more declaration; };

6 Example: Structure declaration of Time struct Time { int hours; int minutes; int seconds; };

7 Definition of Structure Variables ■ Structure declaration does not define a variable. It only create a new data type. ■ Variable(s) of this type can be defined. ■ Format: tag varname; ■ Example: Define structure variable named now of type Time. Time now;

8 Memory layout of structure variable, now hours minutes seconds Time Members

9 Example 2 ■ Declare a structure named PayRoll that has the following members: 1.Employee number: integer 2.Employee’s name : array of characters 3.Hours worked : floating point numbers 4.Hourly pay rate : floating point numbers 5.Gross pay : floating point numbers ■ Define three PayRoll variables: deptHead, foreman, associate ■ Draw the memory layout.

10 Example 2: Structure declaration of PayRoll and variables definition. cont int SIZE = 25; struct PayRoll { int empNumber; char name[SIZE]; double hourWork, hourPayRate, grossPay; }; PayRoll deptHead, foreman, associate;

11 Memory Layout of PayRoll variables empNumber name hourWork deptHead hourPayRate grossPay associate empNumber name hourWork hourPayRate grossPay foreman empNumber name hourWork hourPayRate grossPay

12 Assessing Structure Members ■ Dot operator (.) allows you to access structure members in a program. ■ Example 1: Access the empNumber member of deptHead by assigning value of 475 to it. ■ Example 2: Access the name, hourWork, and hourPayRate by assigning values of Muhammad, 200, and 15 to it, respectively. Then, assign the value to the grossPay by assigning the result of arithmetic operation: hourWork x hourPayRate ■ Example 3: Display the contents of deptHead ’s member

13 Assessing Structure Members deptHead.empNumber = 475; strcpy(deptHead.name, "Muhammad"); deptHead.hourWork = 200; deptHead.hourPayRate = 15; deptHead.grossPay = deptHead.hourWork * deptHead.hourPayRate;

14 Assessing Structure Members ■ Example 3: Display the contents of deptHead ’s member. –Cannot display the content by passing the entire variable: cout << deptHead; //will not work!

15 Assessing Structure Members ■ Example 3: Display the contents of deptHead ’s member. Each member must be passed to cout, separately. cout << "Name: " << deptHead.name << endl; cout << "ID Number: " << deptHead.empNumber << endl; cout << "Hours worked: " << deptHead.hourWork; cout << endl; cout << "Hourly pay rate: " << deptHead.hourPayRate; cout << endl; cout << "Gross pay: " << deptHead. grossPay << endl;

16 Read data from the keyboard ■ Change Example 2: Read data from the keyboard for the members name, hourWork, and hourPayRate.

17 Read data from the keyboard cout << "Enter the employee number:"; cin >> deptHead.empNumber; cout << "Enter the employee’s name:"; cin.ignore(); //ignore the next character in // the input buffer. cin.getline(deptHead.name, SIZE); cout << "How many hours did the employee work?"; cin >> deptHead.hourWork; cout << "What is the employee’s hourly pay rate?"; cin >> deptHead.hourPayRate;

18 Comparing Structure Variables ■ Cannot perform comparison operations directly on structure variables. if (deptHead == foreman) //Error! ■ To compare between two structures, need to compare individual members, as follows: if (deptHead.hourWork == foreman.hourWork) : if (strcmp(deptHead.name,foreman.name) == 0) :

19 Initializing a Structure ■ The members of a structure variable may be initialized with starting values when it is defined. ■ Example: Declare a structure variable named CityInfo. Define a variable named location with initialization values. structure CityInfo { char cityName[30]; char state[3]; long population; int distance; };

20 Initializing a Structure structure CityInfo { char cityName[30]; char state[3]; long population; int distance; }; i.CityInfo location = {"Johor Bahru", "JH", 80000, 280}; ii. CityInfo location = {"Kuantan", "PH", 50000}; iii. CityInfo location = {"Ipoh", "PK"}; iv. CityInfo location = {"Kuala Terengganu"}; v. CityInfo location = {"Seremban", "NS",,68};//illegal!