ICS3U: Introduction to Computer Science

Grade: 11

Level: University

Prerequisite: None

This course introduces students to computer science. Students will design software independently and as part of a team, using industry-standard programming tools and applying the software development life-cycle model. They will also write and use subprograms within computer programs. Students will develop creative solutions for various types of problems as their understanding of the computing environment grows. They will also explore environmental and ergonomic issues, emerging research in computer science, and global career trends in computer-related fields.

Curriculum | Course Expectations

This is a challenging course, covering the fundamentals of programming (program structure, flow control and basic data structures) as well as environmental and career-related topics related to computer science.

We will be using the Python 3 Tutorial on this site to cover the programming aspect of this course, supplemented by other non-programming materials (algorithm design, pseudocode, flowcharts) as indicated.

Students wishing to work ahead may find the following free books by Al Sweigart of interest. They are fantastic, easy-to-read, and full of great ideas.

Students who have programmed before, or students that are sufficiently motivated, may wish to try some of the programming challenges at Project Euler.

Want to do some Python programming outside of class?

Topics Covered

  1. History, Research and Careers
  2. Computer Hardware and Data Representation
  3. Getting Started With Python
  4. Conditional Processing
  5. Code Repetition
  6. Algorithm Design and Documentation
  7. Strings and String Formatting
  8. Tuples, Lists and Dictionaries
  9. User-Created Functions
  10. Environmental Impact of Computers

Exam Information

  1. ICS3U Exam Outline, January 2017
  2. ICS3U Exam Solutions (teacher use only)