CS 104 – Fall 2020

WEBSITE

www.cs.iit.edu/~cs105 (not a typo, actually use cs105 as entry point)

Click on cs104

Click on Hanrath cs104 Syllabus

INSTRUCTOR

All Sections

Jon Hanrath (hanrath@iit.edu)

Lecture: remote/online

Mailbox: CS Dept. (235-236 Stuart)
Office: SB112B
Office Hours:  email
Office Phone Number: (312) 567-5701

LABORATORIES  

SECTION

DAY

TIME

ROOM

TA 

001

Friday

8:30 AM-9:20 AM

SB112J

 Redington ,Marissa mredington@hawk.iit.edu  

 

 

 

SB108

 Raffanti, Kristen

 

 

 

 

 

002

Friday

8:30 AM-9:20 AM

SB112E

 Pintoy, Keith kpintoy@hawk.iit.edu

 

 

 

 

 

003

Friday

8:30 AM-9:20 AM

SB112F

 Griggs, Jamie

 

 

 

 

 

004

Friday

8:30 AM-9:20 AM

,

Kasprzak Elizabeth ekasprzak@hawk.iit.edu

 


Textbooks (available online for free):

 

Matlab by Example: Programming Basics: , Munther Gdeisat and Francis Lilley, Elsevier Science and Technology Books, Inc. © 2013, ISBN:9780124052123.

Available in Books 24/7 online through the IIT Galvin Library http://library.iit.edu/find/databases/all/b choose "Books 24 x 7" and search for the book. If not on campus, logon.

Problem Solving Basics and Computer Programming:  http://www.cs.iit.edu/~cs104/ProblemSolving.pdf

 

Computing Resources:

Matlab is available in all the labs in academic buildings on campus. It is NOT available free to download. Matlab is also available from IIT's Virtual Computer Lab (see the icon in myiit at the top).

 

https://ots.iit.edu/sites/ots/files/elements/classrooms-and-labs/pdfs/VCL_Login_Instructions.pdf


https://ots.iit.edu/classrooms-labs/virtual-computer-lab-faqs

 
Current Catalog Description:

Introduces the use of high-level programming language as a problem-solving tool in engineering including basic data structures and algorithms, structured programming techniques, and software documentation. Designed for students who have had little or no prior experience with computer programming. 2-1-2

Course Goals:

Students should be able to:

1.     Demonstrate problem solving approaches. (i.e. break problems into logical pieces that can be solved (programmed) independently; including approximation approaches, solving a continuous problem with discrete approach, randomness approach, vector/matrix approaches are key in many engineering majors)

2.     Develop and evaluate algorithms. (i.e. for solving problems in a suitable language and environment; concern with accuracy, efficiency)

3.     Demonstrate knowledge of the limits and capabilities of computational approaches to problem solving, including accuracy, overflow, and computational limitations.

4.     Develop and apply test cases that can be used to verify the accuracy of programmed solution

5.     Implement their design and algorithms in an appropriate programming language and environment utilizing the following fundamental programming constructs: arithmetic statements (both scalar and vector/matrix), I/O (including file I/O), selection, iteration, functions (both external libraries and thier own), and linear data structures. Documentation of their code and good programming practice are also required.

6.     Identify and correct both syntactic and semantic errors in code and use a debugging environment to resolve them

7.     Present data in a meaningful way using packaged plotting and graphing systems.

 


Lectures and Tests:

Students are expected to review lectures.  Students are expected to understand the information presented in lecture slides.  Students are expected to take tests on test days.  If a student is to miss a test, email *must* be sent to the instructor *ahead of time* to set up a fair and reasonable accommodation.

Lecture Slides Can Be Found Here

 

Laboratories:

Student are required to complete the lab exercises and use the opportunity to increase their knowledge and ability in the concepts taught.  If a student completes the lab on time, the student will earn full credit for that lab (10 points).  If the student completes part of the lab, the student will be given half credit (5 points).  If the student fails to do the lab, the student receives no credit (0 points).

Labs (Exercise Sets) Can Be Found Here

 

Grading :  

Labs(13)-20%  

Quizzes-5% each (10% total)     

Exam 1-10%    

Exam 2-25%   

Final Exam-35%
A=90-100 B=80-89.999 C=70-79.999 D=60-69.999 E=0-59.999

No late assignments accepted. No extra credit. No make-up exams.


Ethics:

Any behavior on any homework, lab, project or exam that could be considered copying or cheating will result in an immediate zero on the assignment for all parties involved and will be reported to academichonesty@iit.edu Please see the IIT Code of Academic Honesty
https://web.iit.edu/student-affairs/handbook/fine-print/code-academic-honesty

Reasonable accommodations will be made for students with documented disabilities. In order to receive accommodations, students must obtain a letter of accommodation from the Center for Disability Resources. The Center for Disability Resources (CDR) is located at 3424 S. State Street - 1C3-2 , 312 567.5744 or disabilities@iit.edu


CS104 Fall 2020 Schedule

Monday/Wednesday Sections 001-002

Week

Start Date of Week (Monday)

Lab Due        

Lecture

1

8/24

READ : Problem Solving Basics and Computer Programming - Sequential Processing (pages 1-4)
Exercise Set 1

 Lecture 1 – Introduction, Problem Solving

2

8/31

READ : Matlab by Example: Programming Basics - Chapter 2.1-2.3
Exercise Set 2

Lecture 2 – MatLab Basics, Statements, Expressions

3

9/7

READ :
Exercise Set 3

Lecture 3 - Display and Main Memory

4

9/14

READ : Matlab by Example: Programming Basics - Chapter 1.2

Exercise Set 4

Quiz 1

Lecture 4 - MATLAB m-files

5

9/21

READ : Matlab by Example: Programming Basics - Chapter 6.1 6.2
Exercise Set 5

Lecture 5 – Selection

6

9/28

READ : Matlab by Example: Programming Basics - Chapter 6.5

Exercise Set 6

Exam 1

Lecture 6 – Selection, Switch/Case

7

10/5

READ : Matlab by Example: Programming Basics - Chapter 7.3

Exercise Set 7

Lecture 7 – While Loops

8

10/12

READ : Matlab by Example: Programming Basics - Chapter 7.1 7.2
Exercise Set 8

Lecture 8 – For Loops

9

10/19

READ : Matlab by Example: Programming Basics - Chapter 5.1.- 5.3
Exercise Set 9

Quiz 2 

Lecture 9 - Functions

10

10/26

READ : Matlab by Example: Programming Basics - Chapter 3.1, 3.2, 3.3
Exercise Set 10

Lecture 10 – Arrays (Vectors)

11

11/2

READ : Matlab by Example: Programming Basics - Chapter  3.4

Exercise Set 11

Lecture 11 - Vector Operations

12

11/9

READ : Matlab by Example: Programming Basics - Chapter 4.1

Exercise Set 12

Exam 2

Lecture 12 - Matrices I

13

11/16

READ : Matlab by Example: Programming Basics - Chapter 4.3, 4.4
Exercise Set 13

Lecture 13 – Matrices II

14

11/23

No Lab

No Lecture Wednesday (Thanksgiving)

15

11/30

Review for Final Exam

Final Exam (Wednesday),

 

 

 

 

 


 

Exam Schedule

Monday        9/14

8:30am  to 8:55am CDT

Quiz 1        (5%)

25 min

Monday        9/28

8:30am  to 9:20am CDT

Exam 1      (10%)

50 min

Monday      10/19

8:30am  to 8:55am CDT

Quiz 2        (5%)

25 min

Monday       11/9

8:30am  to 9:20am CST

Exam 1       (25%)

50 min

Wednesday 12/2

7:20am  to 9:20am CST

Final Exam (35%)

120 min