ENGINEERING REQUIREMENTS UNIT COURSE SYLLABUS SPRING 2014 Course No: Course Title: Credit Hours: Pre-requisites: GENG 200 Introduction to Programming 2 INTU 1302 Instructor: Eng. Ali O. Abu Odeh Contact Information: Tel: 03 713 5328 Office: Building F1, room 2030 Email: aabuodeh@uaeu.ac.ae Office Hours: Tuesday Wednesday 12:00 – 02:00 Building C6, room 1022 10:00 – 12:00 Building F1, room 2030 Course Description (as in the University catalogue) Introduction to programming, fundamentals of programming using C, flowcharts, logic, algorithms, decision making, control structure in C, arrays, introduction to pointers, functions in C, programming environment of MATLAB, MATLAB functions and function files, control statements, mathematical application using MATLAB. Course Objectives Upon completion of the course, students should be able to: 1. Understanding problem solving strategy and be able to present the solution steps of an engineering problem using a flow chart [E] 2. Deal with arithmetic operations [K] 3. Ability to formulate and develop user-defined functions in C-language [E] 4. Use decision making blocks (if blocks), and logical operators and expressions in C-language [E] 5. Building applications using For and While loops in C-language [E] 6. Use pointers to pass by-reference arguments to functions in C-language [K] 7. Effectively use vector and matrix operation in MATLAB [K] 8. Write m–function file in MATLAB [K] 9. Be able to plot functions, expressions and data in MATLAB [K] Course Outcomes and Related Program Outcomes ERU Course: Introduction to Programming A B Program A→K Criteria C D E F G H I √ J Course Content Category Math and Basic Science: 0 Credit Hours (and/or) Engineering Science: 1 Credit Hours (and 1 Credit Hour Computer Programming) Engineering Design: 0 Credit Hours k √ Student Evaluation Final exam, Midterm exam, and class work including (Progress Exam, Homework’s, Project, Quiz’s, and participation). Weight for each component of the course grade is as follows: Midterm Exam Final Exam (C 25 & MATLAB 15) Course Work (as below) o Progress Exam 15 % o HW(4) 5% o Project 5% o In Class Quizzes(2) 5 % o Participation 5% 25 % 40 % 35 % Teaching and Learning Methods PPT slides Smart Board, White Board Black Board, iTunesU, Textbook iPad with the following set of Apps o CodeToGo o Inflowchart o Inkflow o BlackBoard, o iTunesU o iBooks o Nearpod o SlideShark, o PDF reader App (Annonate+ , Goodreader) o Dropbox Laptop with a C-compiler, and Matlab package, for example: o C-free 4.0 Standard (http://www.programarts.com/cfree_en/download.htm) o MAC users Xcode (https://developer.apple.com/xcode/) available on the App Store o Matlab software (License is server based and can be used in-campus only ) o FreeMAT (http://freemat.sourceforge.net/#download) Topics to be covered 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Problem Solving Skills ........................................... Overview of C, program components, C-syntax, Arithmetic, and I/O… Top-Down Design with Functions.......................... Selection Structures ................................................ Repetition and Loop Statements ............................. Modular Programming with Introduction to Pointers Getting Started with MATLAB .............................. Vectors and Matrices in MATLAB ........................ Execution Control in MATLAB ............................. Functions and Plotting in MATLAB ...................... 2 PPT Slides & iBook Ch2, text book & iBook Ch3, text book & iBook Ch4, text book & iBook Ch5, text book & iBook Ch6, text book & iBook PPT Slides & iBook PPT Slides & iBook PPT Slides & iBook PPT Slides & iBook Tentative Weekly Schedule of Course Topics and Contents: Week Week 1 16-20 Feb. Week 2 23-27 Feb. Week 3 2-6 Mar. Week 4 9-13 Mar. Week 5 16-20 Mar. Session Content Topic: Introduction Content: Course Introduction Syllabus & Calendar Introduction to Problem Solving Topic: Problem Solving using Flowcharts Content: 1.1 Flowcharts with Sequential Structure Topic: Introduction to C (Chapter 2) Content: Assignments 2.1 C Language Elements 2.2 Variable Declarations and Data Types 2.3 Executable Statements Topic: Introduction to C (Chapter 2) Content: HW1 Assigned Covers Ch1-2 2.4 General Form of a C program 2.5 Arithmetic Expressions Topic: Top-Down Design with Functions (Chapter 3) Content: 3.1 Building Program from Existing Information 3.2 Library Functions 3.3 Top Down Design and Structure Charts Week 6 23-27 Mar. Week 7 13-17 Apr. Week 8 20-24 Apr. Week 9 27 Apr.-1 May. Week 10 4-8 May. Week 11 11-15 May. Topic: Top Down Design with Functions (Chapter 3) Content: 3.4 Functions without Arguments 3.5 Functions with Input Arguments Participation Progress Exam Covers Ch1-3 (Wednesday, March 26) Topic: Selection Structures with if-Statements (Chapter 4) Content: 1.2 Flowcharts with Selection Structure 4.1 Control Structure 4.2 Conditions 4.3 The if Statement Topic: Selection Structures with if-Statements (Chapter 4) Content: 4.4 If Statement with Compound Statements 4.5 Decision Steps in Algorithms 4.7 Nested If Statement HW2 Assigned Covers Ch3-4 Topic: Repetition and Loop Statements (Chapter 5) Content: 1.3 Flowcharts with Looping Structure 5.1 Repetition in Programs 5.2 Counting Loops and the while Statement 5.3 Computing a Sum or a Product in a Loop Topic: Repetition and Loop Statements (Chapter 5) Content: 5.4 The for Statement 5.5 Conditional Loops 5.6 Loop Design Topic: Modular Programming (Chapter 6: Sections 1 & 2) Content: 6.1 Pointers and the Indirection Operator 6.2 Functions with Output Parameters Quiz 1 (in class) Covers Ch1-5 Midterm Exam Covers Ch1-5 (Monday, May 12) HW3 Assigned Covers Ch5-6 3 Week 12 18-22 May. Week 13 25-29 May. Week 14 1-5 Jun. Week 15 8-12 Jun Week 16 15-19 Jun. Week 17 21 June Topic: Intro. to MATLAB (Getting Started) Content: Introduction MATLAB User Interface Help Menu Basic commands Basic Data Manipulation Scripts (M-Files) Topic: Intro. to MATLAB (Vectors and Matrices) Content: MATLAB Vectors MATLAB Matrices Declaration Arithmetic operations Logical operations Manipulation using built-in function Topic: Intro. to MATLAB (User-Defined Functions) Content: Creating functions and Calling Single and Multiple Output Functions Execution Files with If Statement For Loop While Loop Topic: Intro. to MATLAB (Plotting in 2-D space) Plotting in General Simple plots Basic Plot Options Subplots Advanced 2-D plot Topic: Course Evaluation Content: Makeup classes if necessary Material review Project Discussion Location TBA Project Assigned (C Application) Extra Classes (if needed): Saturday, June 7 HW4 Assigned Covers Matlab Quiz 2 (in class) Covers Matlab Final Exam Text Book & Other Course Material Text Book: Hanly & Koffman, “Problem Solving and Programming Design in C”, Pearson, 7th Ed., 2012 Recommended readings: Deitel, “C How to Program”, Prentice Hall, 5th Edition, 2007. Other Material: iBook http://www.cprogramming.com/ Class Policy & Academic integrity Attendance : Student who misses 15% of classes will be awarded an “FA” Grade. Academic integrity is a cornerstone of the intellectual life at Universities and of any true learning program. Plagiarism is academic offenses in which a person takes an idea, language, or creative product from another person and submits it as if it were his/her own work. If a student submits a research paper written by somebody else to an instructor, that is plagiarism. If someone “cuts and pastes” a sentence or even a few words from another source without giving credit to the original source, that is plagiarism. Students must always cite the original author. At UAEU, penalties for student misconduct, which includes plagiarism, are explained in the university bylaws (Nos. 136-146) and include such sanctions as a formal letter of warning kept on file; suspension from a course or from the university; exclusion from taking the final examination; dismissal from the university; and the withdrawal of a degree. 4