CmpSc 101 - Intro to Algorithmic Processes

Penn State Altoona, Offered: Fall semester
INSTRUCTOR: Charlotte Eudy McConn, M.S., CDP
		Home Web site
	Office:145 CLRC Building Phone: 949-5292, 
Click here to see

*Course Description

*Course Objectives

*Course Outline

*Class Policies & Grading

Angel Logon,(Submit labs, check due dates)

TEXTS: Programming in C++, by Dale, Weems,& Headington. 
	  Jones & Bartlet Publishers, 3rd Ed. 

COURSE DESCRIPTION:(from the Penn State Catalogue) CmpSc 101 - Introduction to Algorithmic Processes: This course investigates properties of algorithms, languages and notations for describing algorithms, applications of a procedure- oriented language to problem solving. A student may receive credit for only one of the following courses: CmpSc 101, CmpSc 201, CSE 103. NOTE: This course is a required course for the IST Associate Degree. It may also be used as a supporting course for the Business Associate Degree. Other students should check with their advisor to determine if this is the programming course that is either required in their curriculum or will suffice as an elective.
 
COURSE OBJECTIVES:During this course,
the student will 
   1) Analyze computer programming problems and describe
	the steps required to solve problems.
   2) Use the C++ programming language to compile, link, and 
	run programs that they have written.
   3) Use proper documentation techniques for describing
	 their program code.
   4) Learn the basic components of modern software 
	programming including
	a) modular coding techniques,
	b) use of standard libraries,
	c) proper coding of variables and constants,
	d) assignment statements,
	e) input and output instructions,
	e) function declarations and function calls,
	f) program control structures,
	g) how to declare and manipulate array structures,
	f) object-oriented approach to programming.

	This course includes active, hands-on skills practice.  
Students are expected to demonstrate skills.  Active participation, 
communication skills, and teamwork with fellow students count towards 
your grade.  Students may be expected to work in teams on some 
assignments.  Students are graded on their individual work as well as 
their cooperation with the team.  Computer laboratory assignments are 
given each week.  Point value of these assignments varies depending on
the tasks involved in each.  Lab exercise points are then totaled, 
converted to a percentage and make up 40% of your final grade.
	If you have any difficulty with topics covered, please talk 
with me quickly, so that I will have time to assist you before you 
get behind.
CmpSc 101 - TENTATIVE COURSE OUTLINE
This is a tentative outline for the course. Check the Angel course management tool for any tests dates and lab due dates. Specifics on text readings, homework exercises, and lab assignments are assigned each week to correspond with the following topics and are retrievable using Angel.

Week 1, Chapter 1 & notes:

  • Introduction, Course overview & Course websites
  • File management& backup, Penn State computing, Using Angel CMS, Compiler Introduction with sample programs
  • Problem solving and the programming process
Week 2, Cpt 2:
  • Basic C++ syntax rules
  • Declaring Character & string variables
  • Simple (IPO) input, processing, & output statements
  • Syntax errors vs. compile errors vs. execution errors
  • Proper program documentation & comments
Week 3, Cpt 3:
  • Integer and floating point data types
  • Assignment statements and simple arithmetic statements
  • Value returning vs. void functions
  • C++ librarys for math & output formating
  • Functions, parameters, return values
  • User written functions vs. function libraries
Week 4:
  • TEST - Through Cpt 3
Week 5, Cpt 4:
  • More on program modules using functions
  • Input data streams & handling 'Fail state'
  • File processing
Week 6, Cpt 5:
  • Conditions & logical expressions
  • If statements
  • Changing program flow
Week 7, Cpt 6:
  • More on program flow - While Loop statements
Week 8:
  • TEST - Through Cpt 6
Week 9, Cpt 7:
  • More on modular coding and testing
  • Local variables vs. function parameters
  • Tracing a program
Week 10, Cpt 8:
  • Variable lifetime & scoping
Week 11, Cpt 9:
  • More on loops - DoWhile & For loops
  • Preview to Object Oriented Design
Week 12:
  • Lab TEST - Through Cpt.9
Week 13-14, Cpt 12:
  • One dimensional arrays: Defining storage & initializing
  • Happy Thanksgiving
  • One dimensional arrays: Processing & output
  • Applied arrays, Working with character strings
Week 15, Cpt 12:
  • Intro to Advanced Topics
  • Final Review
  • Last Test, Through Cpt 9 & Cpt 12
Week 16, Exam week
  • Final Lab Project due by Monday 9pm
Last Update 8/2003