CSCE 110 PROGRAMMING FUNDAMENTALS WITH C++

Slides:



Advertisements
Similar presentations
Engineering H192 - Computer Programming Gateway Engineering Education Coalition Lect FXP. 1Winter Quarter Course Wrap Up and Final Review Topics Lecture.
Advertisements

Prof. Amr Goneid, AUC1 Analysis & Design of Algorithms (CSCE 321) Prof. Amr Goneid Department of Computer Science, AUC Part R4. Disjoint Sets.
Prof. amr Goneid, AUC1 CSCE 110 PROGRAMMING FUNDAMENTALS WITH C++ Prof. Amr Goneid AUC Introduction to Stacks & Queues.
Analysis & Design of Algorithms (CSCE 321)
CSCE 210 Data Structures and Algorithms
6/10/2015Assoc. Prof. Stoyan Bonev1 Assoc. Prof. Stoyan Bonev, PhD Computer Science dept American University in Bulgaria
Overview CS113, Fall 2000 Gene Itkis. The Promise Heavy Fast-paced Challenging Rewarding.
Wednesday, 12/11/02, Slide #1 CS 106 Intro to Comp. Sci. 1 Wednesday, 12/11/02  QUESTIONS??  Today: CLOSING CEREMONIES!  HW #5 – Back Monday (12/16)
Topic R3 – Review for the Final Exam. CISC 105 – Review for the Final Exam Exam Date & Time and Exam Format The final exam is 120-minutes, closed- book,
Basic C++ Sequential Container Features
1 Data Structures Topic #1 Welcome !. 2 Today’s Agenda Introduction...what to expect!?! Talk about our Goals and Objectives Textbook is highly recommended.
Engineering H192 - Computer Programming The Ohio State University Gateway Engineering Education Coalition Lect FXP. 1Winter Quarter Course Wrap Up and.
Prof. Amr Goneid, AUC1 CSCE 210 Data Structures and Algorithms Prof. Amr Goneid AUC Part 1. Data Modeling and ADTs.
Prof. amr Goneid, AUC1 CSCE 110 PROGRAMMING FUNDAMENTALS WITH C++ Prof. Amr Goneid AUC Part 14. User Defined Classes.
Review for Midterm Chapter 1-9 CSc 212 Data Structures.
Prof. amr Goneid, AUC1 CSCE 110 PROGRAMMING FUNDAMENTALS WITH C++ Prof. Amr Goneid AUC Part 10. Pointers & Dynamic Data Structures.
CSC 113 Java Programming II
Data Structures Using C++ 2E
Prof. Amr Goneid, AUC1 CSCE 210 Data Structures and Algorithms Prof. Amr Goneid AUC Part 2b. Simple Containers: The Queue.
Prof. Amr Goneid, AUC1 CSCE 210 Data Structures and Algorithms Prof. Amr Goneid AUC Part R1. ADTs as Classes.
Object Oriented Design and Programming Alan Goude Room: Sheaf 9323.
COMPE 226 Data Structures 2015 Fall Murat KARAKAYA Department of Computer Engineering.
ICS 102 Computer Programming University of Hail College of Computer Science & Engineering Computer Science and Software Engineering Department.
 200 Total Points ◦ 74 Points Writing Programs ◦ 60 Points Tracing Algorithms and determining results ◦ 36 Points Short Answer ◦ 30 Points Multiple Choice.
Prof. Amr Goneid, AUC1 Analysis & Design of Algorithms (CSCE 321) Prof. Amr Goneid Department of Computer Science, AUC Part R1. Elementary Data Structures.
Programming Languages and Paradigms Object-Oriented Programming (Part II)
Chapter 5 – Dynamic Data Structure Par1: Abstract Data Type DATA STRUCTURES & ALGORITHMS Teacher: Nguyen Do Thai Nguyen
Bilgisayar Mühendisliği Bölümü CENG 102 – Computer Programming Melek OKTAY Syllabus Administrative Information.
1 CSC 222: Computer Programming II Spring 2004 See online syllabus at: Course goals:
CSEB114: PRINCIPLE OF PROGRAMMING Course Introduction.
CMSC 2021 CMSC 202 Computer Science II for Majors Fall 2002 Mr. Frey (0101 – 0104) Mr. Raouf (0201 – 0204)
Prof. amr Goneid, AUC1 CSCE 110 PROGRAMMING FUNDAMENTALS WITH C++ Prof. Amr Goneid AUC Part 1. Introduction.
CSE 425: Data Types I Data and Data Types Data may be more abstract than their representation –E.g., integer (unbounded) vs. 64-bit int (bounded) A language.
Object Oriented Programming (FIT-II) J. H. Wang Feb. 20, 2009.
Midterm Review CS1220 Spring Disclaimer The following questions are representative of those that will appear on the midterm exam. They do not represent.
Prof. Amr Goneid, AUC1 CSCI 210 Data Structures and Algorithms Prof. Amr Goneid AUC Part 5. Dictionaries(2): Hash Tables.
C++ Programming: Program Design Including Data Structures, Fourth Edition Chapter 18: Stacks and Queues.
C++ Programming: From Problem Analysis to Program Design, Fourth Edition Chapter 19: Stacks and Queues.
Prof. amr Goneid, AUC1 CSCE 110 PROGRAMMING FUNDAMENTALS WITH C++ Prof. Amr Goneid AUC Part 16. Linked Lists.
Introduction to Computer Programming (FIT-I pro) J. H. Wang Sep. 17, 2007.
Introduction to c++ programming - object oriented programming concepts - Structured Vs OOP. Classes and objects - class definition - Objects - class scope.
 2003 Prentice Hall, Inc. All rights reserved.m ECE 2552 Dr. Këpuska based on Dr. S. Kozaitis Summer Chapter 15 - Class string and String Stream.
CS-1030 Dr. Mark L. Hornick 1 CS-1030 – Software Design 2 Dr. Mark L. Hornick web: people.msoe.edu/~hornick webCT: webct.msoe.edu.
Object Oriented Programming (FIT-II) J. H. Wang Jan. 31, 2008.
Prof. amr Goneid, AUC1 CSCE 110 PROGRAMMING FUNDAMENTALS WITH C++ Prof. Amr Goneid AUC Part 13. Abstract Data Types (ADT’s)
1 Today’s Objectives  Announcements Homework #3 is due on Monday, 10-Jul, however you can earn 10 bonus points for this HW if you turn it in on Wednesday,
CMSC 2021 CMSC 202 Computer Science II for Majors Spring 2003 Mr. Frey (0101 – 0104) Mr. Raouf (0201 – 0204)
STL CSSE 250 Susan Reeder. What is the STL? Standard Template Library Standard C++ Library is an extensible framework which contains components for Language.
Prof. Amr Goneid, AUC1 Analysis & Design of Algorithms (CSCE 321) Prof. Amr Goneid Department of Computer Science, AUC Part R3. Priority Queues.
Prof. amr Goneid, AUC1 CSCE 110 PROGRAMMING FUNDAMENTALS WITH C++ Prof. Amr Goneid AUC Part 15. Dictionaries (1): A Key Table Class.
C++ Programming: Program Design Including Data Structures, Fourth Edition Chapter 17: Linked Lists.
C++ Programming: From Problem Analysis to Program Design, Fourth Edition Chapter 18: Linked Lists.
CSCE , SPRING 2016 INSTRUCTOR: DR. NANCY M. AMATO 1.
Prof. Amr Goneid, AUC1 CSCI 210 Data Structures and Algorithms Prof. Amr Goneid AUC Part 5. Dictionaries(2): Hash Tables.
Prof. Amr Goneid, AUC1 CSCE 210 Data Structures and Algorithms Prof. Amr Goneid AUC Part R2. Elementary Data Structures.
Prof. Amr Goneid, AUC1 CSCE 210 Data Structures and Algorithms Prof. Amr Goneid AUC Part 2a. Simple Containers: The Stack.
CSCE 210 Data Structures and Algorithms
CSC 427: Data Structures and Algorithm Analysis
C++ Programming:. Program Design Including
CSc 020: Programming Concepts and Methodology II
About the Presentations
Object-Orientated Programming
More about OOP and ADTs Classes
TMC 1414 Introduction to Programming
CS 2308 Final Exam Review.
More about OOP and ADTs Classes
EECE.3220 Data Structures Instructor: Dr. Michael Geiger Spring 2017
ENERGY 211 / CME 211 Lecture 18 October 31, 2008.
C++ data types.
Presentation transcript:

CSCE 110 PROGRAMMING FUNDAMENTALS WITH C++ Prof. Amr Goneid AUC Part 0. Course Outline Prof. Amr Goneid, AUC

Course Resources Instructor: Prof. Amr Goneid E-mail: goneid@aucegypt.edu Office: Rm 2152 SSE Textbook: "Problem Solving, Abstraction, and Design using C++" by Friedman and Koffman, Fourth Edition, Addison Wesley, 2004. Reference: Microsoft Visual C++ Documentation Lab: To be Assigned Compiler: Microsoft Visual C++ 6.0 Web Site: www.cse.aucegypt.edu/~csci110/ Prof. Amr Goneid, AUC

Course Goals To introduce problem solving and structured program design in the process of Software Development. To stress the use of modular programming in solving problems of varying complexity. To gain a starting experience in developing Abstract Data Types (ADT’s). To gain a starting experience in Object Oriented Programming as an efficient software development methodology. Prof. Amr Goneid, AUC

Course Contents Introductory Material (mainly revision of CSCI 106 material) Problem Solving, S/W Design, Algorithms and Structured Programming Overview of C++ language Sequential constructs, selection constructs Repetition Constructs Functions, parameter passing Simple Data Types, User Defined data types 1-D & 2-D Arrays Prof. Amr Goneid, AUC

Course Contents(continued) Strings Characters & their Operations The String Class: String Objects Declaration Input and Output Member Functions: Length & Indexing Copying , Concatenation & Comparison Other Member Functions Passing String Objects Arrays of Strings Conversions Prof. Amr Goneid, AUC

Course Contents(continued) Streams & Files What are Streams and Files? Standard I/O Streams I/O Manipulators External Files Structure of Text Files Declaration Opening & Closing One-Character I/O String & Data I/O Passing Files as Parameters Prof. Amr Goneid, AUC

Course Contents(continued) Pointers and Dynamic Data Structures Static Data Structures The Address of a Variable: Pointers Dereferencing Pointers to Arrays Dynamic Data Structures Run-Time Arrays Prof. Amr Goneid, AUC

Course Contents(continued) The Vector Class The Standard Template Library (STL) What is a Vector Declaring a Vector Size and Accessing Elements Adding and removing Elements Emptying a Vector Other Member Functions Iterators Vectors as Function Parameters or Types Vectors of Vectors Some Matrix Operations using Vectors of Vectors Prof. Amr Goneid, AUC

Course Contents(continued) Structs What are Structs ? Definition & Declaration Accessing Members of a Struct Compound Structs Structs as Operands & Arguments Pointers to Structs Prof. Amr Goneid, AUC

Course Contents(continued) Recursion Definitions Examples from Math Functions Why Recursion Rules for Recursion General Recursive Structures Famous Methods The Role of the Stack Recursive Array processing using Exclude & Conquer Recursive Array processing using Divide & Conquer More Examples Iterative VS Recursive Algorithms Prof. Amr Goneid, AUC

Course Contents(continued) Abstract Data Types (ADT’s) Data Modeling Abstract Data types (ADTs) A Classification of Abstract Structures Another Classification Special Data Structures Examples on Modeling Example ADT’s Prof. Amr Goneid, AUC

Course Contents(continued) User Defined Classes OOP & Classes Data Encapsulation, Classes and objects Class Definition: Private & Public Members Constructors & Destructors Data and Function Members Accessors & Mutators Polymorphism and Overloading Example: Rational Numbers Class Example: Simple String Class Prof. Amr Goneid, AUC

Course Contents(continued) Dictionaries (1): A Key Table Class The Key Table as a Dictionary ADT Key Table Key Table Data Members Key Table Operations Class Template Element Specification Key Table Class Definition Key Table Class Implementation Example Application Prof. Amr Goneid, AUC

Course Contents(continued) Linked Lists The Linked List Structure Some Linked List Operations Variations on Linked Lists ADT Linked List A Linked List Class Definition Linked List Class implementation Example Application Prof. Amr Goneid, AUC

Course Contents(continued) Introduction to Stacks and Queues The Stack ADT The Queue ADT Prof. Amr Goneid, AUC

Lab Assignments Assignment (1): Revision on CSCI 106 material Assignment (2): Using 2-D Arrays Assignment (3): Using strings, streams and files Assignment (4): Using Dynamic Arrays and Vectors Assignment (5): Using recursive algorithms Assignment (6): Using ADT’s and classes Assignment (7): Application on ADT’s and Classes Prof. Amr Goneid, AUC

Coursework Grading 30% Programming Assignments. 20% Midterm Exam (1) 30% Final Exam Prof. Amr Goneid, AUC