Computer Programming
Instructors:
Course Summary
“The value of a college education is not the learning of many facts but the training of the mind to think.” Albert Einstein
The first course for software engineering majors and anyone seeking a rigorous introduction. Develops computational thinking
and problem-solving skills by programming, and exposes students to a variety of other topics from computer science and its
applications.
Prerequisites: High school mathematics and Excitement
Course Topics
Chapter 1: Introduction
● Introduction to computations
● Introduction to programs
Chapter 2: Variables, Expressions, and Statements
● Primitive data types and values
● Variables
● Data Types & Casting
● Booleans and Expressions
Chapter 3: Functions
● What are functions?
● Built-in Functions
● Function calls
● Parameters and Arguments
● Flow of execution
● Function composition
Chapter 4: Conditionals
● Boolean Expression and Logical Operators
● Conditional Execution
● Chained and Nested Conditions
● Keyboard Input and Defensive Programming
Chapter 5: Functions (Not a typo … functions again)
● User-Defined Functions
● Fruitful and void functions
● Return vs Print
● Function Scope
● Decomposition and Abstractions
Chapter 6: Iteration
● Looping Basics
● The while loop
● Break and Continue
● For Loops, Nested Loops
Chapter 7: Strings
● String as a sequence
● Indexing
● Mutability and Immutability
● Searching
● String Comparison
Chapter 8: Data Structures
● What are Data Structures
● Lists
● Numerical Indexing
● Dictionaries
● Tuples and Sets
Chapter 9: Persistence
● File
● Reading and Writing
● Common file formats
● Pickling
Chapter 10: Object-Oriented Programming
● Class and Object
● Object Modelling
Assessment
50% to be specified by the course instructor
Final Exam: 50%
Text Book:
How to Think Like a Computer Scientist
Useful links (Online books)
https://books.trinket.io/pfe/index.html