• If you are citizen of an European Union member nation, you may not use this service unless you are at least 16 years old.

View

# ICS4U 2017-2018 Sem 1

last edited by 2 years ago

 ICS4U Computer Science, Grade 12 University Preparation Prerequisite Course(s): ICS3U This course enables students to further develop knowledge and skills in computer science. Students will use modular design principles to create complex and fully documented programs, according to industry standards. Student teams will manage a large software development project, from planning through to project review. Students will also analyse algorithms for effectiveness. They will investigate ethical issues in computing and further explore environmental issues, emerging technologies, areas of research in computer science, and careers in the field.

General Course Outline

 Unit Title Concepts 1 Review ICS3U (Part 1) IPO, Selection, Repetition 1 Basic Data Structures Text File I/O, Objects 2 Review ICS3U (Part 2) methods, strings, arrays 2 Problem Solving by Design top-down design, divide & conquer 3 Object Oriented Programming class methods, instance methods 4 Searching & Sorting arrays, recursion 5 2D Arrays multi-dimensional arrays 6 Linked Lists lists, stacks, queues 7 Project

CEMC Computer Science Contest Problems

Unit 5: Searching & Sorting

 D05 Sorting Arrays: Basic Methods Shell Sort (faster, more complex) Note: Shell Sort Yet Another Visual Sort - best for ShellSort create a "MySort.java" class create class methods for each sorting algorithm start with each method sorting an array of integers Introduction to Recursion VT - Recursion (factorial) Implementing Recursive Algorithms VT (MIT): Problem Solving w Recursion Recursion - Tower of Hanoi Create a recursive program to solve ToH allow the user to specify number of plates Algorithm - Tower of Hanoi move n−1 plates from A to B. This leaves disc n alone on peg A move plate n from A to C move n−1 plates from B to C so they sit on disc n

Unit 4: Arrays

 N13 Review: Arrays Review: Working with Arrays Presentation - Working with Arrays Continue with Exercises - Arrays VT - Using Array Elements as Counters (frequency table) Array Coding Example(see later examples for dynamic sizing) Multi-dimensional Arrays Multi-dimensional Arrays VT - Multi-Dimensional Arrays Arrays of Objects Arrays of Objects VT - Arrays of Objects Assignment: Chess

Unit 3: Objects & Object Methods

Playlist: Classes & Objects, Part 1

 Day Topic Assigned Work Extra Resources O16 Intro to Classes & Objects VT: - Introduction to Classes & Objects Note - Creating Objects Exercises (attached to Note) VT: What is Object-Oriented Programming? Constructor Methods Presentation: Constructor Methods View Video Tutorial (aligned with note). Read through note. Exercises at end of note. VT - Constructor Methods VT - Overloading Constructors Encapsulation (Data Hiding): Set and Get Methods VT - Public & Private in Java VT - Set & Get Methods Instance Methods Displaying & Comparing Objects Note - Comparing & Displaying Objects VT - Displaying Objects Class Methods Note - Class Methods Assignment: Rectangle Class see Edmodo

Unit 2: Review Methods, Strings, 1D Arrays, Problem Solving by Design

 Day Topic Assigned Work Extra Resources S25 Review: Methods Review: Passing Parameters Review: Return Values Math Contest Programming Problems Review: Method Overloading Presentation - Method Overloading Note - Method Overloading Exercises - see Note Review: Strings String Operations Present: String Methods Exercises - Strings VT: String Methods Review: Arrays Review: Working with Arrays Presentation - Working with Arrays Continue with Exercises - Arrays VT - Using Array Elements as Counters (frequency table) Array Coding Example(see later examples for dynamic sizing)

Unit 1: Review fundamental skills in Java, Text File Operations, Intro to Objects

 Day Topic Assigned Work Extra Resources S05 Introduction to Course File Organization & History Java Programming Environment Edmodo Presentation - Intro to ICS3C/3U/4C/4U Read [Note - File Organization & History] and setup your file structure Read Note - Install Dr.Java and install the Dr.Java IDE Register for Edmodo and connect to course S06 Review Java Concepts input & output variables & calculations selection (if/else) repetition (loops) Review Exercises: Input-Processing-Output # 3+4, 6, 7, 8 Selection # A3, B3, B4, B7, C3 or C4  Counted Loops Part 1 # 2, 3e, 4, 6ab Conditional Loops # 2, 3, 6abc [All Java Lessons] S07 Java Input (revisited) data streams exceptions try-catch blocks Presentation: Input & Output using Data Streams revisit Exercises: Input-Output using Data Streams S08 Text Files: Input & Output Presentation: Text File Input Output choose from Exercises: File Operations find exercises and extensions that work for you S11 S12 Intro to Objects (Data Structures) Presentation: Classes Objects Fields create a program to enter name, age, average for 3 students Exercises - Data Structures (Records) don't try any extensions yet! S12 S13 Intro to Objects (Data Structures) Presentation: Classes Objects Fields create a program to enter name, age, average for 3 students Exercises - Data Structures (Records) don't try any extensions yet! Assignment: Employee Record Files & Payroll see Edmodo