alyeffy / ap-cs-a_2018-2019 Goto Github PK
View Code? Open in Web Editor NEWCourse Materials for AP Computer Science A with EEI (2018-2019)
Course Materials for AP Computer Science A with EEI (2018-2019)
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 |
Software Development Life Cycle (SDLC)
PREP:
ASSIGNMENTS:
LAB:
Program Correctness and Testing
PREP:
ASSIGNMENTS:
LAB:
Algorithm Efficiency
PREP:
ASSIGNMENTS:
LAB:
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 |
Intro to the Java language, Object-Oriented Programs, and Basic Program Design Approaches
PREP:
ASSIGNMENTS:
LAB:
Elementary Java Syntax, Data Representation, and Bit Conversion
PREP:
ASSIGNMENTS:
LAB:
Inheritance and Polymorphism
PREP:
ASSIGNMENTS:
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 ReferenceLAB:
Abstract Classes, Interfaces, and UML Diagrams
PREP:
ASSIGNMENTS:
LAB:
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.
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;
}
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;
}
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;
}
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;
}
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;
}
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 |
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) |
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]
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]
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 |
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 |
CANCELLED due to instructor unavailability
PREP:
ASSIGNMENTS:
LAB:
Object Class, String Class, and Math Class
PREP:
ASSIGNMENTS:
LAB:
Arrays, Array Lists, Collections, and 2-D Arrays
PREP:
ASSIGNMENTS:
LAB:
AP Computer Science Magpie Lab
PREP:
ASSIGNMENTS:
LAB:
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 |
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 |
Memory Allocation, Operators, and Boolean Expression Evaluation
PREP:
ASSIGNMENTS:
LAB:
Control Flow, Scopes, and Iteration
PREP:
ASSIGNMENTS:
LAB:
CANCELLED due to instructor being sick.
PREP:
ASSIGNMENTS:
LAB:
Recursion, Implementation Techniques, and I/O
PREP:
ASSIGNMENTS:
LAB:
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
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 |
Common Basic Algorithms
PREP:
ASSIGNMENTS:
LAB:
PREP:
ASSIGNMENTS:
LAB:
PREP:
ASSIGNMENTS:
LAB:
PREP:
ASSIGNMENTS:
LAB:
PREP:
ASSIGNMENTS:
LAB:
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 |
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.