GithubHelp home page GithubHelp logo

ap-cs-a_2018-2019's People

Contributors

alyeffy avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

ap-cs-a_2018-2019's Issues

TOPIC 3: Program Analysis - MASTER ISSUE

LAST UPDATED: 14 JAN 2018

General inquiries and updates relating to Topic 3 will be updated on this issue.

WEEK DATE DETAILS PREP LECTURE NOTES ASSIGNMENT(S) LAB
9 04/12/2018 Software Development Life Cycle (SDLC) here
10 11/12/2018 Program Correctness and Testing here
11 18/12/2018 Algorithm Efficiency here

LESSON 09 - 04/12/2018

Software Development Life Cycle (SDLC)

PREP:

  • N/A

ASSIGNMENTS:

  • From the Program Design and Analysis MCQ set, complete: 1-3, 6-9, 15-21.
  • Answers will be posted on the Topic 3 assignment answers issue

LAB:

  • N/A

LESSON 10 - 11/12/2018

Program Correctness and Testing

PREP:

  • Bring laptop

ASSIGNMENTS:

  • From the Program Design and Analysis MCQ set, complete: 10, 12-14.
  • Answers will be posted on the Topic 3 assignment answers issue
  • Complete the Vending Machine lab tests
  • Answers to the lab will be posted here

LAB:


LESSON 11 - 18/12/2018

Algorithm Efficiency

PREP:

  • Bring laptop

ASSIGNMENTS:

  • From the Program Design and Analysis MCQ set, complete: 4, 5, 11
  • Answers will be posted on the Topic 3 assignment answers issue
  • Complete the Map lab methods
  • Answers to the lab will be posted here

LAB:

TOPIC 1: Object-Oriented Programming - MASTER ISSUE

LAST UPDATED: 12 OCT 2018

General inquiries and updates relating to Topic 1 will be updated on this issue.

WEEK DATE DETAILS PREP LECTURE NOTES ASSIGNMENT(S) LAB
01 05/10/2018 Intro to the Java language, Object-Oriented Programs, and Basic Program Design Approaches here
02 16/10/2018 Elementary Java Syntax, Data Representation, and Bit Conversion here
03 23/10/2018 Inheritance and Polymorphism here
04 30/10/2018 Abstract Classes, Interfaces, and UML Diagrams here

LESSON 01 - 05/10/2018

Intro to the Java language, Object-Oriented Programs, and Basic Program Design Approaches

PREP:

  • N/A

ASSIGNMENTS:

  • If you did the Pokeball class definition on paper in class, do the Trainer class definition on paper and place it in my pigeonhole before the next class. You can check it against my Pokeball.java example.
  • If you did the Trainer class definition on paper in class, do the Pokeball class definition on paper and place it in my pigeonhole before the next class. You can check it against my Trainer.java example.
  • Make sure you label all the constructors, methods, variables, etc. accordingly (see Pokemon.java as an example)
  • For the Node.java and Path.java classes, follow the TODO instructions, e.g. label the types of constructors, methods, variables etc. using the same style as the Pokemon.java class

LAB:

  • N/A

LESSON 02 - 16/10/2018

Elementary Java Syntax, Data Representation, and Bit Conversion

PREP:

  • Follow the instructions in the SETUP_and_WORKFLOW.md file to set up the development environment and workflow needed for the course. If you encounter any problems along the way, comment below. We will be spending a few minutes at the beginning of the next class going over any setup problems you can't resolve (i.e.bring your laptop to class).
  • Comment below your name, your favourite food, and something you would like to learn how to program (e.g. a game, a website etc.) (Follow my example comment below).

ASSIGNMENTS:

  • N/A

LAB:

  • N/A

LESSON 03 - 23/10/2018

Inheritance and Polymorphism

PREP:

  • Continue working on any of the Eclipse, GitHub setup etc. and bring any issues you have to class

ASSIGNMENTS:

  • Read over Activity 2 of the Elevens Lab
  • Based on what we did for the Card.java (solution) class in our first lab last lesson, complete the isEmpty and size accessor methods. HINT: You will need to use one of the methods from the AP Exam Java Quick Reference

LAB:


LESSON 04 - 30/10/2018

Abstract Classes, Interfaces, and UML Diagrams

PREP:

  • Review the lecture notes for lessons 1-3 as we will be working on some questions in class

ASSIGNMENTS:

  • Odd-numbered questions from the Classes and Objects MCQ set
  • (optional) Even-numbered questions from the Classes and Objects MCQ set

LAB:

TOPIC 5: Assignment Answers

Here are the answers for the homework assignments for Topic 5. Please let me know if you have any questions/concerns about them!

Algorithms (Basic Version pp 206 - 209) Review Questions
NOTE: The following solutions for these review questions might not be the be-all and end-all. If you think your solution might be correct, let me know and I can take a look for you.

  1. Replace all the highs and lows.
public int[] replaceHighAndLow(int[] arr) {
    int[] tempArrray = new int[arr.length];

    for (int i = 0; i < arr.length; i++;) {
        if (arr[i] > 750) {
            tempArray[i] = 1000;
        } else if (arr[i] < 250) {
            tempArray[i] = 0;
        } else {
            tempArray[i] = arr[i];
        }
    }
    return tempArray;
}
  1. Determine if the numbers in an ArrayList are always increasing.
private static boolean isIncreasing(ArrayList<Integer> arr) {
    for (int i = 1; i < arr.size(); i++) {
        if (arr.get(i) <= arr.get(i - 1))
            return false;
    }
    return true;
}
  1. Find all the songs that contain the world "Love" in the title.
private static int findCount(String[][] arr, String target) {
    int count = 0;
    for (int r = 0; r < arr.length; r++) {
        for (int c = 0; c < arr[r].length; c++) {
            if (arr[r][c].indexOf(target) != -1)
                count++;
         }
    }
    return count;
}
  1. Determine the relative strength index of a stock.
public int[] overpriced(double[] rsiValues) {
    int[] temp = new int[rsiValues.length];
    for (int i = 0; i < rsiValues.length; i++) {
        if (rsiValues[i] >= 70 )
            temp[i] = 1;
        else
            temp[i] = 0;
    }
    return temp;
}
  1. Fill an array with random chosen even numbers.
public int[] onlyEvens(int arraySize, int range) {
    int[] evens = new int[arraySize];

    for (int i = 0; i < arraySize; i++) {
        int number = (int) (Math.random() * range);
        while (number % 2 != 0) {
            number = (int) (Math.random() * range);
        }
        evens[i] = number;
    }
    return evens;
}
  1. Determine if the rate is increasing.
private static boolean rateIsIncreasing(ArrayList<Double> stockPrices) {
    for (int i = 2; i < stockPrices.size(); i++) {
        if ((stockPrices.get(i) - stockPrices.get(i-1)) <= (stockPrices.get(i-1) - stockPrices.get(i-2)))
            return false;
    }
    return true;
}

Sorting and Searching Question Set

Q A
1 E
2 D
3 C
4 B
5 C
6 E
7 C
8 A
9 A
10 C
11 B
12 D
13 A
14 E
15 A
16 B
17 B
18 A
19 D
20 A
21 E
22 C
23 D
24 C
25 E
26 D
27 D
28 B
29 B
30 B
31 A
32 D
33 E
34 D
35 A
36 C

Class Updates/Announcements

Most recent update will be on the top

DATE DETAILS ACTION ITEMS F/U COMPLETED
25/02/2019 Class is resuming today
29/01/2019 Added AP Exam Registration Information
28/01/2019 Uploaded Arrays & Array Lists Question Set Answers
28/01/2019 Updated Itinerary for next class
25/01/2019 Uploaded Standard Data Structures Question Set Answers
20/01/2019 Uploaded T413 Notes & Homework, Itinerary for Next Class
14/01/2019 New Class Time: Mondays (15:45 - 17:45)

TOPIC 3: Assignment Answers

Here are the answers for the homework assignments for Topic 3. Please let me know if you have any questions/concerns about them!

Program Design & Analysis Question Set [LAST UPDATED: 14 JAN 2019]

Q A
1 E
2 D
3 E
4 E
5 B
6 C
7 C
8 A
9 D
10 A
11 A
12 D
13 C
14 D
15 D
16 C
17 B
18 E
19 C
20 A
21 E

Vending Machine Lab Solutions [LAST UPDATED: 14 JAN 2019]

Map Lab Solutions [LAST UPDATED: 14 JAN 2019]

TOPIC 4: Assignment Answers

Here are the answers for the homework assignments for Topic 4. Please let me know if you have any questions/concerns about them!

Some Data Structures Question Set [LAST UPDATED: 25 JAN 2019]

Q A
1 B
2 B
3 C
4 C
5 A
6 D
7 D
8 C
9 C
10 D
11 A
12 D
13 E
14 A
15 C
16 E
17 C
18 C
19 B
20 A
21 E

Arrays and Array Lists Question Set [LAST UPDATED: 28 JAN 2019]

Q A
1 E
2 C
3 E
4 A
5 C
6 C
7 D
8 A
9 D
10 B
11 C
12 E
13 B
14 C
15 A
16 B
17 A
18 B
19 D
20 C
21 B
22 E
23 C
24 D
25 A
26 E
27 D
28 D
29 A
30 A
31 B
32 D
33 B
34 D
35 E
36 E
37 E

Magpie Chatbot Lab Answers [LAST UPDATED: 28 JAN 2019]

TOPIC 2: Assignment Answers

Here are the answers for the homework assignments for Topic 2. Please let me know if you have any questions/concerns about them!

Lesson 05 (06/11/2018) Homework - Boolean Algebra Design Worksheet: Answers (Last Updated: 16 NOV 2018)

Introductory Java Language Features Question Set [Last Updated: 3 DEC 2018]

Q A
1 B
2 E
3 C
4 D
5 E
6 E
7 C
8 B
9 D
10 D
11 A
12 C
13 D
14 A
15 C
16 A
17 D
18 A
19 C
20 D
21 D
22 B
23 C
24 B
25 E
26 D
27 D

Recursion Question Set [LAST UPDATED: 5 DEC 2018]

Q A
1 D
2 B
3 E
4 D
5 B
6 C
7 B
8 D
9 A
10 B
11 A
12 C
13 C
14 A
15 E
16 D
17 E
18 A
19 C
20 B
21 B

TOPIC 4: Standard Data Structures - MASTER ISSUE

LAST UPDATED: 20 JAN 2018

General inquiries and updates relating to Topic 4 will be updated on this issue.

WEEK DATE DETAILS PREP LECTURE NOTES ASSIGNMENT(S) LAB
12 08/01/2019 CANCELLED
13 14/01/2019 Object Class, String Class, and Math Class here
14 21/01/2019 Arrays, Array Lists, Collections, and 2-D Arrays here
15 28/01/2019 AP Lab: Magpie here

LESSON 12 - 08/01/2018

CANCELLED due to instructor unavailability

PREP:

  • N/A

ASSIGNMENTS:

  • N/A

LAB:

  • N/A

LESSON 13 - 14/01/2018

Object Class, String Class, and Math Class

PREP:

  • N/A

ASSIGNMENTS:

  • Complete the Some Standard Classes Question Set.
  • Answers will be posted on the Topic 4 assignment answers issue.

LAB:

  • N/A

LESSON 14 - 21/01/2018

Arrays, Array Lists, Collections, and 2-D Arrays

PREP:

  • Read notes from last class.

ASSIGNMENTS:

  • Complete the Arrays and Array Lists Question Set.
  • Answers will be posted on the Topic 4 assignment answers issue.

LAB:

  • N/A

LESSON 15 - 28/01/2018

AP Computer Science Magpie Lab

PREP:

  • Read notes from last class.
  • Read over lab guide
  • Bring laptop to class and download starter code below

ASSIGNMENTS:

  • Complete the rest of the Magpie Lab

LAB:


Pre-Course Survey

Please complete this pre-course survey by 11:59 PM on Monday, 15/10/2018, so I that I know what to expect and can design the course better to fit your needs! The survey itself should take less than 3 minutes, but there is also an optional section with a diagnostic test consisting of 10 possible AP Exam Multiple Choice Questions. Feel free to do that if you wish under typical exam conditions (don't take more than 20 minutes, only code anything on paper, and don't Google anything or ask anyone for help). The test will be a good gauge of which topics you need more/less help with, especially for those of you who already have some prior programming experience. I will post the answers here after the survey deadline! Thank you 😄

QUESTION TOPIC ANSWER
1 3 C
2 2 B
3 1 C
4 2 A
5 4 E
6 2 E
7 5 B
8 3 E
9 3 C
10 1 E

TOPIC 2: Program Implementation - MASTER ISSUE

LAST UPDATED: 5 DEC 2018

General inquiries and updates relating to Topic 2 will be updated on this issue.

WEEK DATE DETAILS PREP LECTURE NOTES ASSIGNMENT(S) LAB
05 06/11/2018 Memory Allocation, Operators, and Boolean Expression Evaluation here
06 13/11/2018 Control Flow, Scopes, and Iteration here
07 20/11/2018 CANCELLED
08 27/11/2018 Recursion, Implementation Techniques, and I/O

LESSON 05 - 06/11/2018

Memory Allocation, Operators, and Boolean Expression Evaluation

PREP:

  • N/A

ASSIGNMENTS:

  • Complete this Boolean Algebra Design Worksheet and place it in my dropbox for next class. Use the examples from the truth tables above as a guide.
  • Answers will be posted on the Topic 2 assignment answers issue.

LAB:

  • N/A

LESSON 06 - 13/11/2018

Control Flow, Scopes, and Iteration

PREP:

ASSIGNMENTS:

  • From the Introductory Java Language Features Question Set, complete questions: 16, 17, 21, 24, 25, 26, and 27.
  • Answers will be posted on the Topic 2 assignment answers issue.

LAB:

  • N/A

LESSON 07 - 20/11/2018

CANCELLED due to instructor being sick.

PREP:

  • Review the lesson on Inheritance and Polymorphism

ASSIGNMENTS:

  • Complete the Inheritance and Polymorphism MCQ Set
  • Answers will be posted on the Topic 1 assignment answers issue.

LAB:

  • N/A

LESSON 08 - 27/11/2018

Recursion, Implementation Techniques, and I/O

PREP:

ASSIGNMENTS:

  • Complete the remaining questions in the Introductory Java Language Features Question Set
  • Complete the Recursion Question Set
  • Answers will be posted on the Topic 2 assignment answers issue.

LAB:

  • N/A

AP Exam Registration Information

IMPORTANT DATES/DEADLINES

DATE ACTION DEADLINE
04/02/2019 AP Exam registration with the Vancouver School Board opens
22/02/2019 Contact the SSD to apply for exam accommodations for disabilities
01/03/2019 Contact AP Services to locate nearby AP Coordinators
14/03/2019 Vancouver School Board AP Exam registration closes
15/03/2019 Contact AP coordinator to reserve a spot for testing
17/05/2019 AP Computer Science A official exam day

READ THROUGH THESE BEFORE REGISTERING FOR THE EXAM:

Vancouver School Board AP Exam Registration Site

General Exam Registration for Homeschooled Students/Students whose schools do not offer AP

Bulletin for AP Students and Parents 2018-19

TOPIC 5: Standard Operations and Algorithms - MASTER ISSUE

LAST UPDATED: 25 FEB 2018

General inquiries and updates relating to Topic 5 will be updated on this issue.

WEEK DATE DETAILS PREP LECTURE NOTES ASSIGNMENT(S) LAB
20 25/02/2019 Common Basic Algorithms
21 04/03/2019
22 11/03/2019
23 18/03/2019
24 25/03/2019

LESSON 20 - 25/02/2019

Common Basic Algorithms

PREP:

  • N/A

ASSIGNMENTS:

  • TBD

LAB:

  • N/A

LESSON 21 - 04/03/2019

PREP:

  • TBD

ASSIGNMENTS:

  • TBD

LAB:

  • TBD

LESSON 22 - 11/03/2019

PREP:

  • TBD

ASSIGNMENTS:

  • TBD

LAB:

  • TBD

LESSON 23 - 18/03/2019

PREP:

  • TBD

ASSIGNMENTS:

  • TBD

LAB:

  • TBD

LESSON 24 - 25/03/2019

PREP:

  • TBD

ASSIGNMENTS:

  • TBD

LAB:

  • TBD

TOPIC 1: Assignment Answers

These are the answers to the assignments for Topic 1. If you have any questions on them, please comment below!

Classes & Objects [LAST UPDATED: 9 NOV 2018]

Question Answer
1 D
2 B
3 C
4 C
5 B
6 C
7 E
8 E
9 A
10 A
11 C
12 B
13 E
14 C
15 D
16 E
17 D
18 B
19 E
20 D
21 A
22 A
23 C

Inheritance & Polymorphism [LAST UPDATED: 3 DEC 2018]

Question Answer
1 D
2 C
3 D
4 E
5 C
6 B
7 E
8 D
9 D
10 B
11 E
12 A
13 B
14 D
15 B
16 E
17 A
18 E
19 C
20 C
21 C
22 E
23 E
24 A
25 B
26 B
27 B

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.