SCMP 118 – Introduction to Programming

Instructor: James Skon

Fall 2015

This course presents an introduction to computer programming intended both for those who plan to take further courses in which a strong background in computation is desirable and for those who are interested in learning basic programming principles. The course will expose the student to a variety of applications where an algorithmic approach is natural and will include both numerical and non-numerical computation. The principles of program structure and style will be emphasized. Offered every semester.

Instructor Information

  • James Skon
  • Tutor: Madison Hoffman, hoffmanm@kenyon.edu
  • Office Hayes Hall 305
  • Office Hours: Tuesday 12:00-1:00, Thursday 2:30-3:30
  • Phone: (740) 427-5369, (740) 358-9417 (Cell)
  • Textbook: Problem Solving with C++ 7th ed, by Walter Savitch.
  • Room and Time: Hayes Hall 311, 1:10-2:30 Tuesday and Thursday

Resources

Course Calendar

May be subject to change as course unfolds. Asways check here for latest update.

DateRequired ReadingNotesCode SamplesQuizSlidesCodeLabProgramming Assignment Due
Aug 27Chapter 1 – Introduction to Computers and C++ Programming. Our Computing Environment   Ch1.ppt  
Sept 1Chapter 1.3-1.4 and C++ Programming. Our Computing Environment. Trying C++, using CodeLabNotes2CodeDay2 Day2.pptx  
Sept 3Chapter 2.1-2.2 – C++ Basics (Variables, Assignments, I/O)Notes3CodeDay3Linkch2-2.1-2.pptFirst ExercisesLab 0 Chapter 1
Sept 8Chapter 2.2-2.5 – Data Types, Expressions, Flow Control, StyleNotes4CodeDay4Linkch2.3-5.pptAssignment
Input And Output
Integers
Other Expressions
Techniques1
 
Sept 10Chapter 3.1-3.3 – Boolean Expressions, Branches, LoopsNotes5CodeDay5Linkch_03.ppt Lab 1-1 Chapter 2
Sept 15Chapter 3.3-3.4 – More on LoopsNotes5CodeDay5Linkch_03.pptBoolean Expressions Conditionals Loops Constants Multiway If-Else Switch Loops Iteration ConstantsLab 1-2 Chapter 2
Sept 17Chapter 4.1-4.2 – Introduction to FunctionsFunctionsCodeLinkch4.1-3.ppt  
Sept 22Chapter 4.3-4.6 – Procedural Abstration, Local Variables, and Overloading Names.Functions2CodeLinkch_04.4-6.pptFunctions
Type casting
Lab 2 Chapter 3
Sept 24Chapter 5.1-5.3 – void Functions, Call-By-Referance, Procedural Abstration CodelinkCH_5.1-3.ppt  
Sept 29Chapter 5.3-5.5 – Procedural Abstration, debuggingCreating random numbers  CH_5.4.pptVoid functions Call-By-ReferanceLab 3 Chapter 4
Oct 1Chapter 7.1-7.3 – Arrays, Arrays with Functions CodelinkCh7.1-3.ppt  
Oct 6Chapter 7.1-7.3 – Arrays, Arrays with Functions   Ch7.1-4.pptArrays, Array TechiquesLab 4 Chapter 5
Oct 8No class, October Break      
Oct 13Midterm Exam      
Oct 15Chapter 7.1-7.3 – Arrays, Arrays with Functions Code   Lab 5 Chapter 7
Oct 20Chapter 7.3-7.4 – Programming with Arrays, sorting, Multidimensional Arrays Code Ch7.1-4.ppt  
Oct 22Guest Speaker Ashleigh Zarley (ITS), Lab work     Lab 6 Chapter 7
Oct 27Chapter 8.1, 8.2 – C-Strings and String classStringNotes1Code Ch8.1-2.pptStrings 
Oct 29Chapter 8.2 – String class CodeLink   
Nov 3Chapter 8.3,10.1 Vectors, structuresStructNotesCodeLinkCh8-3.pptCh10.1.ppt Lab 7 Chapter 7
Nov 5Chapter 10.2 – Intro to Object Oriented Concepts, structuresClassNotes1Code IntroObjects.ppt  
Nov 10Chapter 10.2, 10.3, Classes, Code Ch_10_2-3.pptClass Definitions 
Nov 12Chapter 10.3, 6.1, 6.2 – ADT’s, File I/O CodeLinkCh_06.1-3.ppt Lab 8 Chapter 8
Nov 17Chapter 6.2, 6.3 – Character I/O, Array’s with ClassesClass Tutorial I LinkCh_06.1-3.ppt  
Nov 19Chapter 11.1,11.2,11.3 – Friend Functions, OverloadingClass Tutorial IICode ch_11.ppt Lab 9 Chapter 10
Nov 24-26No Class, Thanksgiving Break      
Dec 1Chapter 11.2, 11.3 – Arrays and Classes, Dynamic Arrays Code ch_11.ppt  
Dec 3Chapter 12.1 Separate Compilation
Special Speaker – Doug Karl, creator of the Apple Airport *
 CodeLinkDougKarl.pptch_12.ppt  
Dec 8Chapter 14.1, 14.2 – Recursion, The Binary Search AlgorithmBinary SeachMerge SortCodeLinkch14.ppt  
Dec 10Towers of Hanoi – Example,ProgramCode ch14.pptRecursion 
Dec 16No Final Exam , Final Project only     Final Project

Assignments are due by midnight of the day due.

Academic Honesty

Any work you submit for credit in this course must result directly from your own understanding. Moreover, written work must be a creation of your own hand. Presenting the work of others as your own is strictly prohibited. At Kenyon we expect all students, at all times, to submit work that represents standards of academic integrity. It is the responsibility of each student to learn and practice the proper ways of documenting and acknowledging those whose ideas and words you have drawn upon (see Academic Honesty and Questions of Plagiarism in the Course Catalog). Ignorance and carelessness are not excuses for academic dishonesty. If you are uncertain about the expectations for academic honesty in this class, please ask for clarification.

Disabilities

If you have any disability and therefore may have need for some type of accommodation in order to participate fully in this class, please feel free to discuss your concerns in private with Erin Salva, Coordinator of Disability Services (phone 5145).

Grade allocation

Category%Notes
Labs50%Equally distributed
Quizzes10%Equally distributed
Code Lab15%All questions equal weight
Exams25%Midterm 10%, Final 15%
Scroll to Top