CS 020

Programming for Engineers
Pooya Rezaei
E-mail: pooya.rezaei@uvm.edu
Website: http://www.uvm.edu/∼prezaei/
Office: 120 Delehanty Hall
Online Office Hours: Tuesdays and Thursdays from 10-11am EST or by appointment on
Google Hangout (username: pooya.rezaei).
Summer 2014, Online
Course Description
This is a 3 credit-hour introductory course on computer programming principles using MATLAB, with
applications chosen from various engineering fields. Learning objectives are as follows:
• Develop basic programming skills in MATLAB : variables/values/types, assignment, control flow (con-
ditionals/loops), commenting and documentation
• Construct matrices and write code using MATLAB specific data types (vectors, matrices, cell arrays,
• Solve computational/numerical problems using loops and array-wise computing in MATLAB
• Produce 2D and 3D plots of functions
• Write user-defined functions for different applications
MATLAB: An Introduction with Application, by Amos Gilat, Published by Wiley (5
Requirements and Expectations
• Everything in this course will be presented through Blackboard (BB), so please make yourself familiar
with using it: Blackboard at UVM
• The material is presented within modules weekly. Modules typically contain some instructional videos,
a reference to the section of the textbook that is covered, and some homework problems.
• There will be a quiz at the end of each week (except for the third and fifth week) from the material
covered in the previous week. Also, there will be a midterm exam at the end of the third week and a
final exam at the end of the fifth week.
• Each week, the students are required to either ask or reply to at least one (good) question on the BB
discussion forum created for that week.
Weekly Schedule
Week number (dates) Title Chapter of textbook
1 (07/07 - 07/13) Starting with MATLAB and Creating Arrays 1, 2 (start)
2 (07/14 - 07/20)
Mathematical Operations with Arrays and
Input/Output of Script Files
2 (finish), 3, 4 (start)
3 (07/21 - 07/27) Managing Data and 2-D plotting 4 (finish), 5
4 (07/28 - 08/03) Loops, Conditional Statements and Debugging 6
5 (08/04 - 08/08) User-Defined Functions, Cell Arrays and Structures 7
1. Assignments (40%): There will be five assignments due at the end of each week.
2. Quizzes (15%): There will be three quizzes at the end of first, second and forth week.
3. Midterm exam (15%): The midterm exam will be at the end of the third week.
4. Final exam (25%): The final exam will be at the end of the fifth week (the end of the course).
5. Discussion board activities (5%)
• This course is normally offered as a 15-week course in the Fall/Spring semester. To cover the material
in five weeks in the summer, we will have less opportunity to work on applications in different fields.
Most importantly, the students should ensure to assign sufficient time weekly (8-12 hrs/wk) to watch
the videos, read the chapters in the textbook, and work on homework problems.
• Students are required to copy and paste their code in a word processor (e.g., Microsoft Word) and
upload their solutions to BB. Unless in the case of an emergency (a real one), assignments that are not
turned in on time or tests that are not attended will be given 0%.
• I encourage you to email me questions/comments about the class but request that you please do so in
a respectful fashion. If you have any questions about the material, or code that is not working, make
sure that you have already searched for and asked your question on the discussion board for that week.
In any case, if you are emailing me, please include CS20 in the subject line, to make sure that I do
not miss it.
• Anyone who requires assistance in any way (as per the ACCESS program), please contact the ACCESS
office, go to: http://www.uvm.edu/access/; email them at access@uvm.edu; or call at 656-7753.
Academic Honesty
According to the Code of Academic Integrity, all academic work must satisfy the following four standards
of academic integrity:
1. Students may not plagiarize: Everything taken from the works of other authors (published or unpub-
lished) must be properly cited.
2. Students may not fabricate: All information collected and reported must be authentic.
3. Students may not collude: Students may only collaborate on academic work within the limits prescribed
by their instructors
4. Students may not cheat: Students may not claim as their own work any portion of academic work that
was completed by another student.
Please be aware that violations of this code may result in an F in the course, and flagged on your transcript
as an academic honesty violation. You are encouraged to ask questions about homework problems from your
peers, the TA, or me, but each student should turn in their own solutions and code. No questions should be
asked from quizzes/exams.

Sign up to vote on this title
UsefulNot useful