Daniel J. Boston: Instructor
- E-mail: djb38@njit.edu
- Office: GITC 4325 (Internet Lab)
- Office Hours: Wednesday 11:00am to 1:00pm, Friday 12:30pm to 2:30pm, or by appointment
- Name: Computer Programming and Problem Solving
- Description: An introductory course in computer science and programming (using MATLAB, C++, or other languages) and its use in solving engineering and scientific problems. The emphasis is on the logical analysis of a problem and the formulation of a computer program leading to its solution. Topics include basic concepts of computer systems, algorithm design, programming languages and data abstraction.
- Course: CS 101
- Section: 010
- CRN/Call #: 31575
- Classroom: GITC 2315-C
- Class Times: Wednesday 1-2:25pm, Friday 2:30-3:55pm
- Textbook: MATLAB Programming for Engineers, 4th Edition by Chapman. ISBN-13: 978-0495244493
- Tools: MATLAB
- Grading Rubric: Homework Assignments/Projects: 30% | Midterm: 30% | Final: 30% | Participation: 10%
- Resources: This web site (check often!) | MATLAB Online Documentation | Book Example Sourcecode
- Twitter: djb38njit -- get class updates faster than ever before.
- Syllabus Download: (PDF)
Last Updated: May 4, 2011
- May 4, 2011: MATLAB script solutions for Homework 6 are now posted. Enjoy! Good luck tomorrow.
- April 28, 2011: Final Exam Preparation List has been posted. Use it, the midterm exam, the examples from class, and the homeworks as your study materials.
- April 28, 2011: Homework 6 has been posted. It is due before May 3, 11:59pm. This problem set focuses on custom functions; read each problem very carefully. There are two problems, and one bonus problem. I will be posting a study aid for the final exam soon.
- April 28, 2011: New examples (from class) posted! Study hard.
- April 27, 2011: Few updates: we have class on May 3rd! It is on a Friday schedule, so we will meet at 2:30pm in GITC 2315-C as usual. I will be posting a homework tomorrow that is due on May 3rd (last class day). The final exam date, time, and place is also now available; Thursday 5/5/2011 from 11:30am to 2:00pm in Kupfrian 202. If you have conflicts or don't know where Kupfrian is, contact me as soon as possible.
- April 15, 2011: Homework 5 has been posted. It is due before April 22, 11:59pm. This problem focuses on loops, both while loops and for loops, so hopefully it will be useful in guiding your learning. Note I've also posted some of the example programs we've done in class; find them in the lecture slides section below. Also in the lecture slides, find posted notes for Custom Functions, which we will begin discussing today.
- April 1, 2011: Homework 4 has been posted. It is due before April 8, 11:59pm. There are quite a few problems on this HW, including a more challenging bonus problem for extra credit.
- March 30, 2011: Lecture slides for More on Plotting and Loops have been posted. We will be covering these topics starting today. Expect a homework assignment tomorrow night relating to the topics discussed last week.
- March 25, 2011: Solutions to Midterm exam are now posted, as are average grades for the Midterm and for Homework 3. Study hard! Reflect on my comments in the Midterm Grade Discussion email, and remember that the final drop date is March 28 (Monday!). Hopefully you decide to stay and work hard!
- March 11, 2011: Solutions to Homework 3 are now posted.. Happy study!
- March 5, 2011: Midterm Exam Preparation List has been posted. Hopefully it can guide your study to some degree.
- March 3, 2011: Homework 3 has been posted. It is due before March 10, 11:59pm. I've tried to include problems similar to exam problems to give you a good basis for study, although this homework does not represent everything you are responsible to know. Review the lecture slides, your notes, and the book.
Note also lecture slides for Logical and Relational Operators, plus Control Structures are posted. Also note the examples that we have created in class are now available for download and study.
- February 17, 2011: Homework 2 has been posted. It is due before February 24, 11:59pm. Please get started on it early; note that one of the problems in the set is directly from the book, so be sure you have access to a copy.
- February 16, 2011: Lecture slides for Fundamentals of Program Design are posted; we will be finishing up plotting and starting on Fundamentals today and Friday. Expect a homework covering operators, functions, input, output and plotting shortly.
- February 9, 2011: Remember the lecture slides for today and perhaps Friday are posted below, titled Input, Output and Plotting. Hopefully we can have a good time experimenting with these MATLAB features.
- February 4, 2011: Homework 1 has been posted. It is due before February 10, 11:59pm, which gives about a week to complete it. Please follow the submission instructions included in the homework document, and note that late submissions will not be accepted.
- February 3, 2011: Lecture slides for Operators and Functions are now posted; I've also posted the slides for Input, Output, and Plotting since hopefully we'll start on that material tomorrow.
- January 23, 2011: I have updated the course schedule, and added the links to the Chapter 1 Review slides I started last week. I have also published the slides for Variables and Arrays, which we wll cover this week. See also a link to the Google book preview of Chapter 1 of our textbooks.
- January 19, 2011: Welcome to CS 101, Computer Programming and Problem Solving. I hope you are all looking forward to our first class session
this afternoon. For those of you new to NJIT, welcome to this wonderful University. For those of you new to computer programming,
I trust you'll find this class informative, useful, and even fun. Please make every effort to attend all class sessions; beyond University attendance guidelines
for freshmen, failure to attend means you'll get less out of the class. I'll do my best to make that time dedication well-spent.
NOTE: The NJIT Honor Code will be upheld in this class. Any violations will be brought to the immediate attention of the Dean of Students.
- January 19, 2011: IMPORTANT: If you do not yet have a UCID (University Computing ID), then create one right away! You must have your UCID and AFS password set in order to participate in classroom exercises.
If you do not have your AFS password set, please follow one of the following links: Global Password Change (GPC) or Unattended Password Reset (UPR)
Last Updated: April 28, 2011
Class Topics/Lecture Notes
Last Updated: April 27, 2011
Week One
~ (January 19th and 21st)
- Introduction
- Computer Programming Basics
- MATLAB Basics
Week Two
~ (January 26th and 28)
- Chapter 1 Review
- Variables and Arrays
Week Three
~ (February 2nd and 4th)
Week Four
~ (February 9th and 11th)
- Input, Output and Plotting
Week Five
~ (February 16th and 18th)
- Input, Output and Plotting
- Fundamentals of Program Design
Week Six
~ (February 23rd and 25th)
- Fundamentals of Program Design
- Control Structures
Week Seven
~ (March 2nd and 4th)
- Logic and Relational Operators
- Control Structures
Week Eight
~ (March 9th and 11th)
Midterm Exam: March 11th
Week Nine - Spring Recess
~ (March 13th through 19th)
Week Ten
~ (March 23rd and 25th)
Last Day to Withdraw
~ March 28th
Week Eleven
~ (March 30th and April 1st)
Week Twelve
~ (April 6th and 8th)
Registration Begins
~ April 11th
Week Thirteen
~ (April 13th and 15th)
Week Fourteen (April 20th)
Good Friday (No classes)
~ April 22nd
Week Fifteen (April 27th and 29th)
- Custom Functions
- Data Types/Complex Numbers/Strings
Week Sixteen
~ (May 3rd - Final Class - Friday Schedule)
Reading Day
~ May 4th
Final Exam Period
~ (May 5th through 11th)
- Final Exam: Thursday, May 5th. 11:30am to 2:00pm. Kupfrian 202.
Last Updated: May 4, 2011
General Homework Instructions
- Submit homework via email to djb38@njit.edu
- Send your homework before the date and time listed as the "Due Date". Try not to wait until the last minute!
- Remember: ALWAYS submit using your NJIT-provided email address.
Homework 1
Homework 2
Homework 3
Midterm Exam
Answer Script has work and answers for the problems, although no explanation.
If clarification of a problem is required, feel free to ask me!
Homework 4
Homework 5
Homework 6