ENGR 112 FOUNDATIONS OF ENGR II, Spring 2010, Credit 2

Lecture Room and Time: MW 09:10AM-10:00AM ZACH 102, Monday and Wednesday

This webpage: http://courses.cse.tamu.edu/ward/112.spr10/

Instructors: Stroustrup and Ward 

Lab Sections, Time, Location-CVLB 418

205 TR 08:00AM-08:50AM Pu        516 MW 12:40PM-01:30PM Khabiri  520 TR 11:10AM-12:00PM Agha

810 MW 03:00PM-03:50PM Agha      517 MW 01:50PM-02:40PM Khabiri  521 MW 11:30AM-12:20PM Khabiri

811 TR 09:35AM-10:25AM Agha      518 MW 10:20AM-11:10AM Yang     522 TR 12:45PM-01:35PM Pu

812 MW 04:10PM-05:00PM Cancelled 519 TR 03:55PM-04:45PM Yang     523 TR 02:20PM-03:10PM Pu

       

Key Content:

Class Information (text, goals, etc)

Course Calendar and Syllabus

Exams and Grading

Lectures:

Projects:

Homework/Labs:

Academic Integrity and Decorum

Assignment Cover Page

Resources

Prerequisites

U1, U2 CECN, CEEN, ELEN MAJORS ONLY -- This course is for CECL, CEEL, and ELEL majors who have taken ENGR 111 and MATH 151.  CSCE majors should take CSCE 121 instead of this course.

Key Dates:

Jan 20          Wednesday, class begins

Jan 25          Monday, 5 p.m.  Last day for adding/dropping courses.

Feb 11         Thursday, 7-9pm Industry night, Zachry Lobby (attendance required)

Mar 8           Monday, noon, Midterm grades due

Mar 15-19    SPRING BREAK

Apr 6           Tuesday, 5 p.m. Last day to drop courses with no penalty (Q-drop).

May 3          Monday, Last day of class

May 10        Monday, Final Exam

May 17        Monday, Final grades due

Instructors

Dr. Bjarne Stroustrup             

College of Engr. Endowed Chair in Computer Science

H. R. Bright 417A, Office Hours: Monday 2-4pm 

bs@cs.tamu.edu
Homepage

 

Dr. Ronnie Ward

Office HRBB 338B, Office Hours: 1-3pm MW

Please send me an email to arrange an appointment

ward@cse.tamu.edu

Homepage

Teaching Assistants

Huei-Fang Yang           Elham Khabiri             

M: 2-4pm T: 1:30-3:30pm  Tuesdays/Fridays: 5pm-7pm

322A HRBB                Reed McDonald 111J

hueifang@gmail.com       khabiri@gmail.com 

Short Bio                Short Bio         

 

 

Chris Pu                 Ali Agha

TR 3:20PM-5:20PM         TR at CVLAB418 (10:25am-11:10am  and  12:00pm-12:45pm)

HRBB 503                 F at HRBB 316 (11:30am-12:30pm)

ps-buaa@neo.tamu.edu     aliagha@tamu.edu

Short Bio                Short Bio 

  

Peer-Teachers (who have taken this course before)


Corbin Atkinson          Xiaoxiao(Shell) Zhang       Allen Nguyen                 Matt Leva
205, 516, 520            517, 518, 521               519, 522, 523                810, 811
corbinat@neo.tamu.edu    xzhang1@neo.tamu.edu        allennguyen@neo.tamu.edu     emailmatt@tamu.edu
MW 5:30-7:30pm CVLB 418  Fridays 2pm-4pm, CVLB 418                                   Tuesday 10:30am-12:30,CVLB 418
                                                                                                                                                                                                             Thursday 4:30pm-6:30

http://pt.cs.tamu.edu/

Required Textbook

Programming: Principles and Practice Using C++, Bjarne Stroustrup, Addison-Wesley, 2009, ISBN 978-0-321-54372-1.

http://www.stroustrup.com/Programming

 

Lecture Slides

 

http://www.stroustrup.com/Programming/lecture-slides.html

 

Review for Final

 

Course Description

Computer programming for engineers; use of primitive types, control structures, vectors, classes, strings, functions, file I/O, searching, sorting, lists, trees, maps, and graphics to solve engineering problems with computers; introduction to program structure, design, and development, plus the use of class libraries; includes the execution of student written programs in C++.

Objectives

At the end of this course, students should be able to: 

1.        Understand computer program structure, design and development.                              

2.        Use primitive data types and control structures in computer programs.                         

3.        Understand and apply vectors, strings, and structs.                                           

4.        Declare and use functions in computer programs.                                              

5.        Understand object-oriented programming concepts: objects, classes, inheritance, polymorphism, and encapsulation.

6.        Design and create simple graphic user interfaces.                                              

7.        Understand and apply file I/O in computer programs.                                       

8.        Understand and use basic algorithms for searching, sorting, lists, trees and maps.       

9.        Navigate and make use of class libraries.                                                           

10.     Write simple computer programs in a high-level programming language, C++.            

11.     Complete a team design project using knowledge and principles from the course.   

 

Learning objectives 1 through 10 will be assessed using homework, quizzes and exams. Objective 11 will be assessed by evaluating student group programming projects and written reports.

Requirements

TAMU email address that you monitor daily

Three comprehensive, closed-book exams

Homework and Project assignments

Work in a project team

Pop quizzes can be given during any scheduled lecture or lab

Textbook reading as well as reading other assigned materials

Attend class lectures and scheduled labs, take notes, and participate in discussion

Students will have to spend around 10-15 hours per week in addition to lecture and lab time.

You are required to have two computer accounts

 

Student Rules:

 

You are responsible for complying with all provisions of the student rules posted at http://student-rules.tamu.edu.

Lecture and lab attendance is expected. Infrequent unavoidable absences are understood, but each student is responsible for any missed material.  For excused absences, students will not be penalized. See Section 7 of the Student Rules for the excused absence policy.  For acute illnesses of less than three days, both option A and option B of section 7.1.6.2 are acceptable in this course.  For unexcused absences, a grade of zero will be assigned for missed work.

Tentative Course Calendar and Syllabus

Wed     Jan 20       Chp 1-2 (BS) -- programming                   ** Aggie Honor Code reminder **

Mon     25             Chp 3 (BS)                                                ** last day to add/drop **

Wed     27             Chp 4 (rw) -- computation

 

Mon     Feb 1        Chp 4 con't (RW)

Wed     3               Chp 5 (BS) -- errors

Mon     8               Chp 6 (RW) -- writing a program

Wed     10             Chp 7 (BS) -- Completing a program

Thur     11              7-9pm Industry night, Zachry Lobby       ** attendance required **

Mon     15             Chp 6 & 7 (RW) -- demos and  review for exam

Wed     17             Chp 8 (BS) -- functions                          ** not on 1st exam **

Mon     22             1st hour exam (Chp 1-7)

Wed     24             Chp 8 (BS) -- Continued                        ** Project 1 assignment **

 

Mon     Mar 1        Chp 9 (BS) – classes 

Wed     3               Chp 10 (BS) -- I/O streams

Mon     8                Industry Representative                          ** mid term grades due **

Wed     10             Chp 11 (RW) -- customizing I/O

            15-19         SPRING BREAK - no classes

Mon     22             Chp 12 (RW) -- graphics

Wed     24             Chp 13 (RW) -- graphics classes

Mon     29             Chp 14 (BS) -- graphics class design

Wed     31             2nd hour exam (Chp 8-14)                     ** Project 2 assignment **

 

Mon     Apr 5        Chp 15 (BS) -- graphing functions and data         ** Q-drop date **

Wed     7               Chp 16 (BS) -- GUI

Mon     12             Chp 17 (BS) -- vectors                                      

Wed     14             Chp 18 (RW) -- arrays

Mon     19             Chp 19 (BS) -- templates and exceptions

Wed     21             Chp 20 (RW) -- containers

Mon     26             Chp 22 (BS) -- history

Wed     28             Review (RW)

 

Mon     May 10     Final Exam, 8-10am (comprehensive, focus on Chp 15-20, 22)

Mon     17             Final Grades Due

 

Homework is assigned about once every two weeks, and pop quizzes can be given during any scheduled lecture.

Exams

Pop quizzes can be given during any scheduled lecture

Mon    Feb 22                 1st hour exam (Chp 1-7)

Mon    March 31             2nd hour exam (Chp 8-14)        

Mon    May 10                 Final Exam, 8-10am (comprehensive, focus on Chp 15-20, 22)

 

Examinations will require the use of Scantron forms, 8½ by 11 inches, gray, from Measurement and Research Services; you must purchase your own forms prior to each test!   There will be no make-up exams except for university-excused absences.

Assignments and Grading:  

All assignments will be announced in class and posted on the course web page. If you miss class for any reason, it is your responsibility to find out what assignments you missed.

Your grade will be based on the following components:

 

            Lab Work (Labs, Quizzes, Papers)     30   % 

            One-hour Exams (2) (10 pts each)      20   %

            Comprehensive Final Exam                 25   %

            Projects                                              20   %

            Attendance and Class Participation        5   % (Pop quizzes and lab quizzes)

 

Note: One copy of group work is graded and all group members receive the same grade

 

Turn in a hardcopy of homework solutions with an assignment cover page on the due date. You are also required to submit your homework through http://csnet.cs.tamu.edu/ by the due date, and hand in the signed coverpage of your homework to the TA no later than the due date (Hard copies of the code are not needed).

 

Grades will be assigned according to the following scheme:
   90% –100% —→ A, 80% – 89% —→ B, 70% – 79% —→ C, 60% – 69% —→ D, 0% – 59% —→ F

 

No incomplete grades will be given

 

Grades will be posted on-line using an alias.

 

Attendance: Lecture and lab attendance is expected. Infrequent unavoidable absences are understood, but each student is responsible for any missed material.  For excused absences, students will not be penalized. See Section 7 of the Student Rules for the excused absence policy.  For acute illnesses of less than three days, both option A and option B of section 7.1.6.2 are acceptable in this course.  For unexcused absences, a grade of zero will be assigned for missed work.

Class Participation: Class participation will consist of attendance (in lecture and lab) and responses to short quizzes during lecture and lab meetings about the reading assignments and the lecture.  

Lab Work: Submit lab assignments through CSNET (the CSCE departmental electronic turn-in system) and printouts to your assigned Teaching Assistant (TA).  A text file (.txt) may be required for answers to non-program questions, explanations, or data.  Each student should maintain backup copies of all work. Some lab quizzes will consist of short programming tasks, which will be performed during the lab and submitted to the TA for grading.

Late Work: No late assignments will be accepted. Labs submitted by web, e-mail, or any form other than through CSNET, unless approved in advance by your TA or the instructor, will not be accepted.

 

Exams: Examinations will require the use of Scantron forms, 8½ by 11 inches, gray, from Measurement and Research Services; you must purchase your own forms prior to each test!  There will be no make-up exams except for university-excused absences.

Project: A group project will be assigned to groups of 2 or 3 students each. Assignments to groups will be made by the instructor.

Mid-term grades: Midterm grades will be assigned to all students in week 8, and reported to the Office of the Registrar for students who have completed less that 30 hours of college work.  You must keep track of your own grades from the papers handed back.

Class Decorum

Please don’t eat in class. Please don't surf the net in class. Please turn off your mp3 player, and your cell phone.

If you want to take a nap, that’s okay, but leave the classroom to prevent unwanted attention.

 

Lectures: 

 

The slides are posted. http://www.stroustrup.com/Programming/lecture-slides.html

 

Review for Final

 

Projects:

 

Posted 2/24/10.     Project 1 Assignment        online-store.zip        Team Assignments  

Posted 4/4/10.       Project 2 Assignment         InitialGUIcode.zip    Team Assignments

    

Homework/Labs:

 

Lab Week 1 assignment is posted on CSNET. Due Wed 01/27/10 at 9:00 AM. Do Chp 2 Drills and get "Hello World" working in Windows and Unix. Turn-in via CSNET and hard copy with signed Assignment Cover Page  to your TA.

   

Lab Chapter 3 assignment is on CSNET. Due Monday  02/01/10 at 8:00 AM. Do Chp 3 Drills 1 thru 7 in Windows or Unix. Do Chp 3 exercise 1. For extra/challenge/bonus do Chp 3 exercises 2 & 5 (note a link to the solution to exercise 4 is posted on the textbook support page). Turn in via CSNET and hard copy with signed Assignment Cover Page to your TA.

Lab Chapter 4 and 5 assignment is on CSNET. Due Monday 02/08/10 at 8:00AM. Do Chp 4 Drills 1 thru 11 and Chp 5 odd numbered Drills in Windows or Unix. Do Chp 4 exercise 1 and Chp 5 exercise 2.
For extra/challenge/bonus do Chp 4 exercises 4 & 8. Turn in via CSNET and hard copy with signed Assignment Cover Page to your TA.

Lab Chapter 6 and 7 assignment is on CSNET. Due Wednesday 02/17/10 at 8:00AM. Do Chp 6 Drills and Chp 7  Drills in Windows or Unix. Do Chp 6 exercise 3 and Chp 7 exercise 10. Turn in via CSNET and hard copy with signed Assignment Cover Page to your TA.

Industry Night Assignment
Due Feb 19th by 5:00pm. DO NOT turn in via CSNET, but put it in your TA's mailbox on 3rdf floor HRBB.

Lab Chapter 8 assignment is on CSNET. Due Monday 03/1/10 at 8:00AM. Read Chapter 8. Work Chapter 8 drills Chapter 8 exercise 10 in Windows or Unix. Turn in via CSNET and hard copy with signed Assignment Cover Page to your TA.

Lab Chapter 9 and 10 assignment is on CSNET. Due Wed 03/10/10 at 8:00AM. Read Chapters 9 and 10. Work Chapter 9 drills and Exercise 1, and work Chapter 10 drills and Exercise 1 (be sure to handle errors in file opening) in Windows or Unix. Turn in via CSNET and hard copy with signed Assignment Cover Page to your TA.

Lab Chapter 11 assignment is on CSNET. Due Monday 03/22/10 at 8:00am. Read Chp 11 and work Chapter 11 drills in windows or Unix. Turn in via CSNET and hard copy with signed Assignment Cover Page to your TA.

You are required to submit your homework through http://csnet.cs.tamu.edu by the due date, and hand in a hard copy of your homework to your TA no later than the due date. You may leave your hard copies in the mail box of your TA. Follow the instructions of your TA for the submission of your homework files on CSNet. For example, turn in answers or console output as a .txt file in addition to C++ code files in a single Zip files and post it to CSNet

Academic Integrity:  

The Aggie Honor Code states "An Aggie does not lie, cheat or steal or tolerate those who do". More information on academic integrity, plagiarism, etc. is available at the Aggie Honor System Office web site http://aggiehonor.tamu.edu/, which includes Definitions of Academic Misconduct and possible Academic Integrity Sanctions.

For the assignments in this class, discussion of concepts with others is encouraged, but all assignments must be done on your own, unless otherwise instructed. Studying in groups is not cheating and that using a code library, such as the C++ standard library, (unless required not to) is not plagiarism as long as the use is documented. If you use any source other than the text, reference it/him/her, whether it be a person, a book, a solution set, a web page or whatever. You MUST write up the solutions in your own words. Copying is strictly forbidden. Every assignment must be turned in with the cover sheet below, which lists all sources you used. Cheating on an exam, plagiarizing, or any other form of academic dishonesty is discouraged. The instructor reserves the right to assign a grade of "F*" for the course should circumstances warrant.

Americans with Disabilities Act (ADA) Policy Statement:  

The Americans with Disabilities Act (ADA) is a federal anti-discrimination statute that provides comprehensive civil rights protection for persons with disabilities. Among other things, this legislation requires that all students with disabilities be guaranteed a learning environment that provides for reasonable accommodation of their disabilities. If you believe you have a disability requiring an accommodation, please contact the Department of Student Life, Services for Students with Disabilities in Cain Hall, Rm. B118, or call 845-1637.

Assignment Cover Page

Downloadable Copy

ENGR 112                                 Assignment Cover Page                                                                  Spring 2010
 

  Name:

                                               

Email:

 

Assignment:

 

Grade (filled in by grader):

 

Please list below all sources (people, books, webpages, etc) consulted regarding this assignment (use the back if necessary):

Other ENGR 112 Students

Other People

Printed Material

Web Material (give URL)

Other Sources

1.

1.

1.

1.

1.

2.

2.

2.

2.

2.

3.

3.

3.

3.

3.

Recall that TAMU Student Rules define academic misconduct to include acquiring answers from any unauthorized source, working with another person when not specifically permitted, observing the work of other students during any exam, providing answers when not specifically authorized to do so, informing any person of the contents of an exam prior to the exam, and failing to credit sources used. Disciplinary actions range from grade penalty to expulsion.

"On my honor, as an Aggie, I have neither given nor received unauthorized aid on this academic work. In particular, I certify that I have listed above all the sources that I consulted regarding this assignment, and that I have not received or given any assistance that is contrary to the letter or the spirit of the collaboration guidelines for this assignment."

Signature:

                                               

Printed Name:

 

Date:

 

 

Resources

Textbook Support Page

Textbook (PPP) C++ Style Guide

Questions and Answers

C++ Compilers / Documentation

Software

Editors

Code