cos 160/170 grader/tutor - university of southern maine€¦ · lab submittal (cos 170) labs are...

6
Syllabus COS160 : Structured Problem Solving Spring 2020 Professor: Bruce MacLeod (www.cs.usm.maine.edu/~macleod) Room 222 Science Bldg. email : macleod at maine.edu Tel: 780-4285 Office Hours: M 10:00 AM - 11:30 PM W 9:15 AM - 10:00 AM or by app\ointment COS 160/170 Grader/Tutor: Nickolas Littlefield email: nickolas.littlefield at maine.edu Office: 103 Science (upper level) : Monday : 11:15-2:30 Wednesday : 12:00-2:30 Other student office hours: See All Tutor Hours Course Objectives: In this course, the student will demonstrate significant problem solving skills. considerable expertise in Java the ability to apply appropriate mathematics to computer programs the ability to analyze a problem, and identify and define the computing requirements appropriate to its solution the ability to communicate well with others using written communication. All of these outcomes will be evaluated during the course. Textbook: zyBooks: USM COS 160 MacLeod Spring 2020 Programming in Java, This is an interactive online textbook that you subscribe to at zybooks.com. You can begin subscribing on 1/6 and will have access through 6/2. 1. Sign in or create an account at learn.zybooks.com 2. Enter zyBook code MAINECOS160Spring2020 3. Click Subscribe DRAFT

Upload: others

Post on 25-Aug-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: COS 160/170 Grader/Tutor - University of Southern Maine€¦ · Lab submittal (COS 170) Labs are due one week after the lab is scheduled in the COS 170 class. Students should hand

Syllabus

COS160 : Structured Problem Solving

Spring 2020

Professor: Bruce MacLeod (www.cs.usm.maine.edu/~macleod)

Room 222 Science Bldg.

email : macleod at maine.edu

Tel: 780-4285

Office Hours: M 10:00 AM - 11:30 PM

W 9:15 AM - 10:00 AM or by app\ointment

COS 160/170 Grader/Tutor:

Nickolas Littlefield

email: nickolas.littlefield at maine.edu

Office: 103 Science (upper level) : Monday : 11:15-2:30

Wednesday : 12:00-2:30

Other student office hours: See All Tutor Hours

Course Objectives:

In this course, the student will demonstrate

significant problem solving skills.

considerable expertise in Java

the ability to apply appropriate mathematics to computer programs

the ability to analyze a problem, and identify and define the computing requirements

appropriate to its solution

the ability to communicate well with others using written communication.

All of these outcomes will be evaluated during the course.

Textbook:

zyBooks: USM COS 160 MacLeod Spring 2020 Programming in Java, This is an interactive online

textbook that you subscribe to at zybooks.com. You can begin subscribing on 1/6 and will have access

through 6/2.

1. Sign in or create an account at learn.zybooks.com

2. Enter zyBook code MAINECOS160Spring2020

3. Click Subscribe

DRAFT

Page 2: COS 160/170 Grader/Tutor - University of Southern Maine€¦ · Lab submittal (COS 170) Labs are due one week after the lab is scheduled in the COS 170 class. Students should hand

Computer Labs:

· The software for this course is installed in all USM computer labs. You will be using a Java

Development Kit (JDK) and the Eclipse Integrated Development Environment.

· When you work in the labs, a USB flash drive to store your work can be helpful. Alternatively, you can

use email to transfer your code from the lab machines.

· For convenience you will want to have your own computer. Any Windows, Mac, or Linux computer is

fine.

· The software is available for free. Instructions for downloading and installing the software are

available at: Setting up Eclipse on Home computer

Tutoring:

Tutoring will be available on the upper deck in room 103 Science. Here is the tutor schedule.

Grading:

Class attendance, participation, in class quizzes (10%)

Programming Assignments (45%)

Midterm (20%)

Final (25%)

You will receive a separate grade for the COS 170 Labs (10% for each lab)

Preparation before each class:

The readings for each lecture are listed on the syllabus. You are expected to do the readings before the

lecture and to complete at least 80% of the Participation Activities and Challenge Activities before class.

The purpose of these activities is to reinforce the concepts you have been learning and to help you

assess if you understand the lesson or if you need to review it further. We will have periodic in-class

quizzes to assess your understanding of the material.

Program Submittal.

Homeworks are due at the beginning of class on the day the homework is due. Grading

guidelines

The homework grade will be reduced by 10% for each class meeting it is late.

Emailed assignments will not be accepted

Programs must be the work of one student, see Class Policies.

DRAFT

Page 3: COS 160/170 Grader/Tutor - University of Southern Maine€¦ · Lab submittal (COS 170) Labs are due one week after the lab is scheduled in the COS 170 class. Students should hand

Lab submittal (COS 170)

Labs are due one week after the lab is scheduled in the COS 170 class.

Students should hand in the lab at the beginning of the COS 170 lab on the day it is due.

Labs are marked down 10% for each 170 lab meeting they are late.

Lab partners may hand in either just one lab write up or two.

Lab solutions submitted by email will not be graded.

Software:

The free Java and the Eclipse system will be used. Instructions for installing the course software on your

personal computer are at Setting up Eclipse on Home computer

Other Resources

Online Java Documentation

Java tutorial videos on youtube

Oracle’s Java Tutorial on Learning the Java Language is

at http://docs.oracle.com/javase/tutorial/java/.

An article about paired programming

Book used in older version of class (used in COS 161) . Many students prefer this text:

Reges and Steppe, Building Java Programs: A Back to Basics Approach, Fourth Edition, Addison-

Wesley Pub

Teamwork on Programs

It is acceptable to work with other students in the analysis, design, and debugging phases of your

programming assignments. However, unless it is a team project, do not write code as a team. Do not

copy your code from or for another student. Please list the students with whom you collaborated, and

the type of help you gave or received in a comment at the top of your program. Plagiarism will result in

disciplinary action that may involve failure of the course.

Electronic devices : are not allowed (computers, phones, etc) in our class time. They are a significant

distraction for you, your classmates, and myself. Multitasking does not work and there is considerable

body of research to support this (starting links from a spectrum of sources: Multitasking damages your

brain and your career, Multitasking does not work, Modern World is bad for the Brain, The Distracted

DRAFT

Page 4: COS 160/170 Grader/Tutor - University of Southern Maine€¦ · Lab submittal (COS 170) Labs are due one week after the lab is scheduled in the COS 170 class. Students should hand

Mind ) BTW, it is quite easy for an instructor to see the head dip & look into the lap holding the cell

phone.

Reading, assignment, and exam schedule

January

1/22

Introduction : Computing, People, Work, Questions, and Course

Reading : Using Zybooks

Optional lab ! Eclipse on laptop, Lab 1:

Java, keyboard/screen I/O, commenting

Reading : Sections 1.1-1.6

Lab 1 & help putting Eclipse on laptops

1/29

Algorithms, example programs

Reading : 1.7-1.12

Lab 1 and help putting Eclipse on laptops

February

2/3 Variables, Expressions, Types

Reading : Sec. 2.1-2.7

Assignment #1 Due

Lab 2

2/5 Floating Point, Constants, Math methods

Reading : Sec. 2.8-2.15

Lab 2

2/10 Graphics (taught in lecture & lab)

Lab 3

2/12 Characters, strings, random numbers

Reading : Sec. 2.16-2.23

Assignment #2 Due

Lab 3

2/17 No Class : President's day 2/19

if/else, relational operators, switch

Reading : Sec. 3.1-3.10

No lab

2/24

Boolean, expr alternatives & nuances

Reading : Sec. 3.11-3.15

Assignment #3 Due

Lab 4

2/26

String and char comparisons

Reading : Sec. 3.16-3.20

Lab 4

March

DRAFT

Page 5: COS 160/170 Grader/Tutor - University of Southern Maine€¦ · Lab submittal (COS 170) Labs are due one week after the lab is scheduled in the COS 170 class. Students should hand

3/2 Midterm Review video

Class attendance optional : Nick will

answer questions and collect Assignment

4.

Assignment #4 Due

Lab 5

3/4 Midterm Sample Questions are in the

content section of Blackboard

Lab 5

3/9 While loops

Reading : Sec. 4.1-4.4

Lab 6

3/11 For loops, nested loops

Reading : Sec. 4.5-4.9

Lab 6

3/16 Spring Break 3/18 Spring Break

3/23

break, continue, examples

Reading : Sec. 4.10-4.14

Lab 7

Assignment #5 Due

3/25

Arrays

Reading : Sec. 5.1-5.4

Lab 7

3/30 Array algorithms

Reading : Sec 5.5-5.9

Lab 8

Assignment #6 Due

April

4/1

Two-dimensional arrays, examples

Reading : Sec. 5.10-5.12

Lab 8

4/6 Methods, parameters, return

Reading : Secs 6.1-6.6

Assignment 7 Due

Lab 9

4/8 Methods with branches & loops

Reading : 6.7-6.11

Lab 9

4/13 Method array parameters, scope

Reading : Secs 6.12-6.17

Lab 10

Assignment 8 Due

4/15 Method name overloading, examples

Reading : Secs 6.18-6.22

Lab 10

4/20

I/O streams, formatting

Sections 7.1-7.5

Lab 11

4/22 File I/O

Reading : Section 7.1-7.5

DRAFT

Page 6: COS 160/170 Grader/Tutor - University of Southern Maine€¦ · Lab submittal (COS 170) Labs are due one week after the lab is scheduled in the COS 170 class. Students should hand

Assignment 9 Due

Lab 11

4/27 Objects and Classes

Reading : Sections 8.1-8.4

no formal lab (will be available to help

with Assignment #10)

4/29 Constructors, overloading, references, this

Reading Sections 8.5-8.10

no formal lab (will be available to help

with Assignment #10)

Assignment #10 due

May

5/4

1:30-3:30

Final :

Sample Questions: Sample Questions

are in the content section of Blackboard

Summer

Explorations

HTML, Javascript, Web at

www.freecodecamp.org

DRAFT