SYLLABUS
CS 162: Introduction to Computer
Science
Winter 2018
Prerequisite:
|
Prior programming experience using a
high level language This
means you should have experience writing complete programs in a high level
programming language. |
|||||||||
|
|
|
||||||||
Instructor:
|
Section
001: Karla Steinbrugge Fant |
|
||||||||
E-mail:
|
karlaf@
pdx.edu |
|
||||||||
Office: |
FAB 120-19 |
|
||||||||
Office
hours: |
Karla
Fant: Tues/Thurs 2:30-3:20 in FAB 120-19, or by
appointment |
|
||||||||
|
|
|
||||||||
Texts:
|
D.S. Malik, C++ Programming:
From Problem Analysis To Program Design, Course Technology. |
|
||||||||
Lab
Manual: |
Russell Shackelford, An
Introduction to Computing & Algorithms, Addison-Wesley. Required. Purchase from the PSU Book Store The
Linux and Vim Manual published for 2018
and The CS162
Lab Manual published for Winter 2018 (earlier editions are not
acceptable) |
|
||||||||
Lecture
Notes: |
Lecture notes and course power
point slides are on D2L |
|
||||||||
PSU
ID: |
Bring
your PSU ID card to all lectures and labs; it will be used for attendance
purposes. |
|
||||||||
Handouts: |
All handouts, due dates, and assignments can be
retrieved from D2L |
|
||||||||
Disabilities: |
If you have a disability and are in need of academic
accommodations, please notify the instructor immediately to arrange
needed support. This includes any accommodations required for taking
examinations. All DRC quizzes and exams must be taken at the same
time as the in-class quizzes and exams except when otherwise pre-authorized.
Such pre-authorization should take place at least 24 hours prior to the
in-class quiz or exam. |
|
||||||||
|
|
|
||||||||
System &
Compiler: |
|
|
||||||||
Course
Description and Goals:
Introduction
to programming using a high level programming language. Conditionals, I/O, Files, Functions, Classes,
Pointers, Dynamic Memory, Linear Linked lists, Recursion and Multi-Dimensional Arrays. Program correctness,
verification, and testing.
The goals of this class
are to teach the syntax of a high level programming language to students who
already know how to program. This course will introduce the syntax of C++ including:
data types, variables, conditionals, loops, functions, and arrays. It will
introduce classes, pointers, dynamic memory, linear linked lists, recursion,
and multi-dimensional arrays to prepare students for CS163, Data Structures.
Concepts will include data abstraction, separate compilation and the use of
library procedures.
Prior Knowledge
expected:
CS162
is designed for students who have already programmed in a high level language
previously. However, you do not need
to know C++ prior to taking this class.
(a) Write
a conditional expression (if) to determine if an age is between 13 and 21
(b) Using
a loop, sum all of the whole numbers stored in an array or list (assume there
are “length” numbers stored in the array)
(c) Create
a function that finds the largest number in an array or list. Use arguments and
returned values in your solution.
(d) Create
a function that will compare two names and display them in order
(e) Create
a complete program from scratch
Proficiency Demonstrations:
Important Class
Expectations:
1.
Attending
lectures is required to pass the class.
b.
Arrive
within the first 10 minutes to count as attending.
c.
It
is expected that students will stay for the entire class period, until excused.
b.
Arrive
within the first 10 minutes to count as attending.
Lab Manuals:
The labs are where we reinforce the materials learned in lecture. It is
where concepts will be practiced prior to applying them to the larger individual
programming assignments. It is expected
that all students will perform the lab work each week.
Lab Sessions:
Individual
Programming Assignments:
·
Written Algorithms and Diagrams to
your Programming Assignments:
a. The first four programming
assignments have a written algorithm; refer to the style sheet for guidelines.
b. Every
written algorithm must be completed
to pass CS162.
c. All
assignments will
include drawings such as flow charts or data flow diagrams as specified in the course outline.
d. All algorithms and code must be
your own work and may not be copied from the web or other students. Be careful
to not plagiarize. Doing so will result in a zero on an assignment and a
failure in the class.
·
Program Style
a. 20% of a program’s grade is based
on the program style, comments, and documentation provided with the program. Follow
the STYLE SHEET!
b. Avoid single character variable
names, except for loop control variables and array indices
c. Avoid while(1) or the use of break
or return from within a loop
• Each student is expected to submit only original work. Software
and passwords must be kept confidential. Any person who violates these will receive a grade of zero on an assignment which will
result in an F for the course and a letter will be sent to the head of the
CS Department. Identical programs will be treated as copying even with cosmetic
changes. Material copied from the web will not be graded.
Grading
Policies:
• It is against
department policy to give exams early (no exceptions!). Exams will all be
closed book, closed notes.
• If
a DRC exam is being taken, please email your teacher with a reminder that an
exam is needed at the testing center.
Do not expect an exam to automatically be sent without such email.
Overview
of Grading Policies
Demonstrate Proficiency in C++ -
Midterm
Demo - Final Demo |
Pass/No Pass |
-By appointment at PSU (A passing grade is
required for both demos) |
Lab Participation - Prelabs - Lab Code Submitted |
Pass/No Pass |
-Attend the lab section enrolled
in ./submit lab code at the end of
each lab (Attendance to all but
1 lab session is required) |
Graded
Lab Manuals |
5% |
-Lab manuals are collected twice
during the term. -Students will supply a
self-assessment |
-
4
Written Algorithms -
5
Programming Projects |
||
Quizzes
and Midterm Exam -
2
Quizzes -
Midterm
Exam -
|
5% 25% |
At
PSU or by Proctor (The midterm must be 65% or greater to pass) |
Comprehensive Final Exam |
40% |
At PSU or by Proctor Must receive a Passing score of 65% or greater to pass CS162*** |
Seeking
Assistance
Be careful when seeking
help from others. We recommend seeking help from (a) instructor, (b) TA’s and
lab assistants, and (c) Tutors. Use caution otherwise. Do not to share your
code with others! Never accept code that was not written by someone else! Never
let someone else type code for you. This means, NEVER accept code from someone
else, even if it is a tutor!
·
Never
post your code in the D2L discussions, the web, or social networking sites.
·
Never
give your assignments to any other PSU students, regardless of their
situation.
·
Never
email your code to anyone except your instructor.
The work
you submit must be your own. It is not acceptable to hand in assignments in which
substantial amounts of the material was done by someone else. You must be
especially careful that in the process of discussing problems with other
students that they do not inadvertently end up using your work. In such an
event, all students involved will receive a zero on that assignment.
CHEATING:
Each
student is expected to submit only original work. Any person who violates these requirements will receive a grade of zero
for an assignment which based on the aforementioned grade requirements will result
in an F for the course. A letter will be sent to the head of the CS
Department.
Students will receive a zero on an
assignment if any of these activities take place:
1. Student provides proficiency demo
questions to other students
2. Student provides proficiency demo
solutions to other students
3. Student solicits (asks for)
proficiency demo questions and/or solutions from other students
4. Student copies lab code from
another student
5. Student copies lab manual solutions
from another student
6. Student accepts an assignment
and/or program from another student
7. Student supplies an assignment
and/or program to another student
8. Student posts the assignment and/or
program on the web, social networking site, or D2L discussions
9. Student shares their password with
another student at PSU giving that student access to their assignments and/or
programs
10. Students work together on
assignments and turn in the same and/or similar assignments.
11. Student turns in work that was
obtained from other sources such as the web, friends, tutors or TA’s.
12. Student leaves work available for
others to copy from
13. Student attempts to purchase
programs from others (in person or electronically).
Performing
any of these actions will result in a ZERO grade on that assignment.