Assignments - AP Computer Science Principles
Zoom Meet: Link
Complete: Daily Seating Log
College Board AP CSP Student Task Directions
Week 22: Feb 22 - Feb 26
- Classwork: CB Feb_26_Practice (3 questions) - in class for Fri Feb 26
- Classwork/Homework: Students_1 Lab - start in class Fri Feb 26
- as tempting as it is to copy your games_7 I do not recommend it
- this program is very similar but not as complex so it is best to start small
- get each piece to work as you test it - later we will add more complexity - Classwork/Homework: College Board Feb_A - due by end of class Thu Feb 25
- formative (meaning grade is for completion) - Classwork: Coins - Validate
- submit the repl.it link to the form when complete - Classwork/Homework: Pets
- this will walk you through creating a dictionary
- submit the repl.it link to the form when complete - Classwork/Homework: Python Games 7 (sort, file saving)
- will demo this in class
- submit the repl.it link to the form when complete - Classwork/Homework: CodeHS Unit 11 - The Internet - before Thu Feb 25
- 11.6 Routing
- 11.7 Packets & Protocols
- 11.8 Sequential, Parallel & Distributed Computing
Week 21: Feb 15 - 19
- Homework: CodeHS Unit 11 - The Internet (over the winter break)
* these are part review and each section is really not that long
- 11. 2 Internet Hardware
- 11. 3 Internet Addresses
- 11. 4 Viewing Websites
- 11. 5 DNS - Classwork/Homework: Create Practice Written Response 3d (I, II, III)
- these are hypothetical situations - you give examples of what might happen in your program
- it would be ok to group these into 2 answers:
First Call (I,II,II)
Second Call (I,II,III)
Week 20: Feb 8 - Feb 12
- Homework: CodeHS Unit 11 - The Internet (over the winter break)
* these are part review and each section is really not that long
- 11. 2 Internet Hardware
- 11. 3 Internet Addresses
- 11. 4 Viewing Websites
- 11. 5 DNS - Classwork: Internet (class discussion)
- html, http, https, dns, ipv4, ipv6,
- helpful videos:
IP Addresses & DNS
HTTP & HTML - Classwork/Homework: Create Practice Written Response 3d (I, II, III)
- these are hypothetical situations - you give examples of what might happen in your program
- it would be ok to group these into 2 answers:
First Call (I,II,II)
Second Call (I,II,III)
- Classwork/Homework: Create Practice Written Response 3c (I, II, III, IV)
Week 19: Feb 1 - Feb 5
- Classwork: Review Mid-Term questions
- Classwork: Mid_Term
- this is a google doc and the test is open notes/open internet
Notes:
- Be sure to answer all of the question
- Lists in Pseudocode start from an index of 1
- Place values for a binary byte are powers of 2
- Place values for a hex number are powers of 16
- Classwork: Continue Internet Unit
- class discussions
- Kahoot on Internet
- Classwork/Homework: Create Task Written Response 3c (I, II, III, IV)
Week 18: Jan 25 - Jan 29
- Classwork: Continue Internet Unit
- class discussions
- Classwork/Homework: Delta Math mid_term_practice (15 questions before Sun Jan 31)
- Classwork: Create Task Written Response 3b (I, II, III, IV, V)
- create a google doc for the answers to 3b
List - an named variable that can contain multiple items
- it is also an example of abstraction - you can refer to a single name that holds multiple pieces of informationManages Complexity - when using a list makes your program easier to maintain and run
example: creating variables for each new game would be time consuming and it would not be easy to remove or add a new item, changing an existing item in a list is much quicker because you can locate it by index - saving timeFor the screenshots in 3b_I, and 3b-II
- give the image files a name to show which response they belong with
- when you sumbit work to College Board we will need to attach the images and you want to be sure the reader knows which one is which
- Classwork/Homework: Video Written Response
- create a google doc for the written responses to 3a
- write up the answers to the below 3a questions (I, II, & III) and be sure to label each answer
Functionality - the way your program works, particularly when a user is interacting with it - literally - what is happening?
3a - I. The purpose of my program is....
3a-II. The video demonstrates ....
3a-III. In the video you can see the user's input when ...
Week 17: Jan 19 - Jan 22
- Classwork: Games_6 (adding a view option, text colors)
- Classwork: Continue Internet Unit
- class discussions - Classwork/Homework: CodeHS Unit 11 The Internet
- 11.1 Welcome to the Internet
- Classwork: Read over the directions for the Create Task
- it can be a bit overwhelming at first so just get an overview
College Board AP CSP Student Task Directions
- Classwork: within your Google Folder make a Create_Practice folder
- Classwork: Create Task Practice - Part I (program code)
- Within your create_practice folder make a doc and name it program_code
- copy and paste your games_6 code from repl.it into the doc
- download as a PDF, then upload the PDF so it is inside the create_practice folder
* when done I should be able to see your create_pratice folder, code .doc, and code .pdf
- Classwork: Create Task Practice - Part II (video - recording)
- using a tool of your choice create a screencast of your games-6 program running
(screencast-o-matic, screencastify, quicktime, loom, etc)
- upload the completed file into your create_practice folder
- be sure to record just the text on the screen and not your whole screen where your name might show up in the URL section
- also be sure to give the video file a name (no "untitled" files please) - Screencastify:
- use the extension in google
- record the video then choose editor to crop to just the program running & trim off extra footage
- export/download as mp4 (give the file a name) - Screencast-o-matic:
- use the free version
- it allows you to select the screen area first before recording
- use the editor to trim excess footage
- same video file as mp4 and give it a name -
Week 16: Jan 11 - Jan 15
- Classwork: Digital Data
- a quick overview - we will explore these topic in more depth later - Binary Game
- Classwork/Homework: Delta Math number_systems
- Classwork: Games_3 (creating an add function)
- Classwork: Games_4 (adding in a delete option)
- Classwork: Games_5 (adding a modify option)
- Classwork: Games_6 (adding a view option, text colors)
- Classwork/Homework: CodeHS Unit 8 Digital Information
- 8.8 Data Compression
- 8.9 Lossy Compression
Week 15: Jan 4 - Jan 8
- Classwork: Digital Data
- a quick overview - we will explore these topic in more depth later - Binary Game
- Hex Practice
- will demo first - Classwork/Homework: Delta Math number_systems
- Classwork: Games_2 (creating a function to process the games)
- after we have reviewed the Games_1 lab we will add on to it
- this will be done in class so we can talk through the steps - Classwork: Games_3 (creating an add function)
- Classwork: Join Code.org Classroom:
- https://studio.code.org/join/VKSPQY
- Lesson 8 Color Images
- Lesson 9 Lossless Compression
- Lesson 10 Lossy Compression - Classwork: College Board Jan_A
- this is formative (not graded) and you will work in groups on this
Week 14: Dec 21 - Dec 23
- Classwork/Homework: Khan Academy (Lists)
- Classwork: Lab Skittles
- Classwork/Homework: Lab Games_1
- video example (of possible output) - Claswork: Logic Gates & Robot Tracing
- will demo first in class - Classwork/Homework: Delta Math Mixed_Practice_December
- Homework: College Board short videos are available for viewing on various topics
- the programming ones may be helpful for you to look at over the break
Week 13: Dec 14 - Dec 18
- Classwork: Finish Viewing parts of Coded Bias
- Classwork/Homework: Lab Aliens
- Classwork/Homework: Khan Academy - Procedures (before Thu Dec 17)
- Classwork: Lab Coins
- Classwork: Lab Skittles
- Classwork/Homework: Lab Games_1
- video example (of possible output) - Claswork: Logic Gates & Robot Tracing
- will demo first in class - Classwork/Homework: Delta Math Mixed_Practice_December
Week 12: Dec 7 - Dec 11
- Classwork/Homework: College Board Nov_A (can work in groups on this)
- Classwork/Homework: Lab - Full Calculator
- be sure you are using the function to make the calculations and returning the value back to be printed in main - Classwork/Homework: Lab Fahrenheit
- Classwork/Homework: Khan Academy - Conditionals - due before Thu Dec 10
- Classwork: View Coded Bias (bring headphones if you are in person Friday or next Monday)
Week 11: Nov 30 - Dec 4
- Classwork/Homework: Delta Math parameters_2
- Classwork/Homework: Delta Math parameters_1
- Classwork/Homework: Highest of 2 - (function with no return)
Write a program that gathers 2 integers from the user
- write a function that prints the highest value
- Classwork/Homework: True/False - (function with a return value)
Write a program asks for user input in the form of a number between 1 and 10
- write a function to validate the entry and return a boolean value
- print a message based on the return value
- Classwork/Homework: Books - do in class
- ask the user for a book title
- use a function to print out a statement such as
One of your favorite books is 'Call of the Wild'.
** this is covered in the intro to python book under Strings
- Classwork/Homework: Birthdays - do in class
- ask the user for their and name
- use an error checking loop to get the integer of their birth month
(while True is very helpful for this - will demo in class)
- use a function to return a text representation of the birthday
- print a message to the user such as:
- Classwork/Homework: CodeHS Unit 5 Functions and Parameters
- 5.4 functions and return values 1
- 5.5 functions and return values 2
- 5.6 local variables and scope - Classwork: Discussion on Functions
Week 10: Nov 23 - Nov 25
- Classwork: Abstractions
- Classwork/Homework: Khan Academy
- Limitations for storing numbers (2 activities)
- Programming Basics (4 activities)
- Classwork/Homework: Intro to Python Functions (section: introducing functions)
1. Greeter
2. Full Names
3. Addition Calculator
4. Return Calculator
- Classswork/Homework: CodeHS Unit 5 Functions and Parameters - before Mon Nov 30
- 5.1 functions and parameters 1
- 5.2 functions and parameters 2
- overflow error- results when the number of bits is not enough to represent the actual number - one example is a car's odometer rolling over, or what happened when YouTube hit over 2 billion views for Gangam Style forcing the 32 bit counter to be changed to 64 bit - the value cycles from the highest number back to the lowest one available
- floating point imprecision - trying to store numbers like 1/10 or (.10) in a computer with a binary number system results in calculations that are not precisely correct because of how many digits the number can be run out to -
(integers = 32b its, floats = 64 bits)
- classwork: we will code a demo of this together in class
Week 9: Nov 16 - Nov 20
- Quia Quiz: ap_csp_nov_a (for Tue/Thu this week)
- Classwork/Homework: Delta Math - mods_random_november
- we will walk through an example together first and then you can complete the assignment - Classwork/Homework: Intro to Python - Lists (4) (section: removing items from a list)
1. Famous People - Classwork/Homework: Intro to Python - Lists (5) (section: slicing a list)
1. Alphabet Slices
2. Protected List
3. Lab: Slicing Practice - Classwork/Homework: Intro to Python - Lists (6) (section: numerical lists)
1. First Twenty
2. Larger Sets (you don't need to submit this link)
3. Five Wallets - Classwork/Homework: Intro to Python Lists (7) (section: strings as lists)
- we are skipping over list comprehensions & tuples for now
- string methods we have learned before but this will be a good review - Classwork/Homework: Unit 2 Lab: Gymnast Scores
- Classwork: The Internet is for Everyone - Part I & Part II
1. With partners - skim the documents and look at each of the 9 points of "The Internet is for everyone - but it won't be if..." and discuss the challenges laid out at the end
2. Google Drive Post (be sure to put this your folder for this class)
Pick two of the challenges that are the most meaningful to you, or relate to some experience you've had - explain your choices and thoughts
Week 8: Nov 9 - Nov 13
- Practice: Sequencing, Selection & Iteration
- Practice: Algorithm Terminology
- Classwork: Abstractions
- Classwork: Delta Math assignment: lists_loops_november
- Classwork/Homework: Intro to Python - Lists (2) (section: lists & looping)
- most important is to READ the examples and try them out
- then complete the following exercises and submit link for each to the form on our assignments page
1. First List Loop
2. First Neat List Loop
3. Your First List Loop
- Classwork/Homework: Intro to Python - Lists (3) (section: common list operations)
*** you can skip the ordered numbers and ordered working lists ***
1. Working List
2. Starting from Empty
3. List Lengths
- Classwork/Homework: Python Lab before Thu Nov 12
- lists_1
- Classwork/Homework: Intro to Python - Lists (4) (section: removing items from a list)
1. Famous People
Week 7: Nov 2 - Nov 6
- Classwork/Homework: CodeHS - before Mon Nov 9
- 4.8 Random Numbers
- Classwork/Homework: Intro to Python - Lists (section: introducing lists)
- most important is to READ the examples and try them out
- then complete the following exercises and submit link for each to the form on our assignments page
1. First List
2. First Neat List
3. Your First List
- Classwork: Review Tracing with Delta Math - in class
- we will join Delta Math and complete a short tracing assignment
Site: DeltaMath.com
Teacher Code: 316750
Class to Join: ap_csp_stars
First Assignment: tracing_1
- Review Labs
- you should fork a copy of these to your own repl.it account
- DNA Complimenting
- in the middle
- odd_even
- Classwork: Algorithms
- algorithmic bias videos & discussions
- Practice: Sequencing, Selection & Iteration
- Practice: Algorithm Terminology
- Play: Kahoot - algorithms
- Classwork: Play the MadLibs games
- https://repl.it/join/dsnpjunj-rebeccad88
- https://repl.it/@JakeSteeves/Madlibs
- https://repl.it/@mrxe3/madliblab
- https://repl.it/join/gvmefrgq-bgleason2021
- https://repl.it/join/wphsybih-meghanlizotte
- https://repl.it/join/reoqofub-brendan2021
Week 6: Oct 26 - Oct 30
- Discussion: Algorithms
- Practice: Sequencing, Selection & Iteration
Practice: Algorithm Terminology - Review: String Methods
- Classwork: - in class labs
- Mad Libs - mon/tue
- Counting DNA Nucleotides - tue
- Transcribing DNA - tue
- Complimenting DNA - tue
- in_the_middle - thu/fri
- odd_even - thu/fri - Classwork/Homework: CodeHS Unit 4 Control Structures - before Mon Nov 2
- 4.7 For Loop Practice
in python is 2**n (where n is a number)
if n = 3 then this is the same as 2 * 2 * 2
Week 5: Oct 19 - Oct 23
- Review: Quia quiz ch_5 (period 5)
- Complete: Quia quiz py_5s
- Pseudocode Practice
- Classwork/Homework: Lab email_one - due before Thu Oct 22
- Classwork/Homework: CodeHS Unit 4 Control Structures - before Mon Oct 26
- 4.4 If Statements
- 4.5 For Loops
- 4.6 General For Loops
Week 4: Oct 13 - Oct 16
- Classwork/Homework: py_lab_ch_5_turtle - before Thu Oct 15
- Complete: Quia quiz ch_5
- Classwork/Homework: CodeHS Unit 4 Control Structures - before Mon Oct 19
- 4.1 Booleans
- 4.2 Logical Operators
- 4.3 Comparison Operators - Classwork/Homework: Lab email_one - due before Thu Oct 22
Week 3: Oct 5 - Oct 9
- Complete: Quia Quiz Runstone_4
- Complete: Academic Honesty Pledge
- Join: College Board
- Period 3: Q963KP
- Period 5: Q3YJ9G
- Homework/Classwork: py_lab_ch_4_strings - before Wed Oct 7
- Homework/Classwork: py_lab_ch_4_cash_register - before Wed Oct 7
- Join: CodeHS (class code: 1C68B)
- we will be switching to this for a bit after Runestone Chapter 5
- Homework/Classwork: Khan Academy - due before Thu Oct 8
- code: A7FYNPMU
- complete up to and including Digital Data Quiz 1
- Homework/Classwork: Chapter 5 Names for Turtles - before Tue Oct 13
- choose 4 exercises & 3 mixed-up code - challenge yourself
- be sure to check in the assignments/score to be sure you have 19/19 points - Homework/Classwork: py_lab_ch_5_turtle - before Thu Oct 15
Week 2: Sep 28 - Oct 2
- Join: College Board
- Period 3: Q963KP
- Period 5: Q3YJ9G
- Complete: Academic Honesty Pledge
- Join: Khan Academy Class code: A7FYNPMU
- Complete: Live Coding: input & casting (in class lesson)
- Review: Binary numbers & play - Binary Number Game (in class lesson)
- Complete: Khan Academy binary/decimal practice
- once you have joined Khan Academy class I can assign this
- Complete: Chapter 4 Names for Strings - before Mon Oct 4
- choose at least 4 exercies and 3 mixed-up code to complete
- be sure to Mark Complete at the bottom of the page if that is an option
- don't just do the 1st 3 you see - try to find different ones to test yourself with
- be sure to go the the assignments tab and score yourself to be sure you have 7/7 points
- Begin: py_lab_ch_4_strings - before Wed Oct 6
- Begin: py_lab_ch_4_cash_register - before Wed Oct 6
Week 1: Sep 21- Sep 25
- Join: Quia
- complete runestone_1 quiz
- Padlet: About You Introductions
- Set up: Repl.it account (use Python)
- we will do this together in class/meeting and write our first program/programs
- submit link to your working version - Homework/Classwork: Chapter 2 - What can computers do?
- View: Introduction to Binary Numbers
- Complete: runestone_2 quiz
- Classwork: py_lab_1 (will do this first lab together in class)
- Homework/Classwork: Begin Chapter 3 - Names for Numbers - for Monday Sep 28
- code - a set of instructions that a computer can understand. This is sometimes called a program.
- comment - Comments explain what we’re doing in the programs and are intended to be read by people - they do not alter the program in any way
- dot-notation - allows you to call a method/function on an object - example: student_name.lower()
- library - A library is a named group of related procedures and functions; the files contain functions that can be used by a program once they are loaded at the beginning (common ones are turtle, random, time)
- pixel - A pixel is one small part (element) of a picture. Pixels are stored in a grid and have both a x (horizontal) and y (vertical) value. A pixel has a color which can be defined by an amount of red, green, and blue with values from 0 to 255.
- program: A program is a set of instructions that a computer can understand to accomplish some goal. This is sometimes called code.
- RGB - (red, green, and blue) refers to a system for representing the colors to be used on a computer display, each color uses a byte of data, the bytes can also be represented by Hex numbers which are used in HTML code to represent color digitally.
- strings: a string is anything we can type between a pair of pair of single quotes ('Hi'), double quotes ("Hi"), or triple quotes ('''Hi'''). It is a sequence of characters.
- variable - a variable is a name associated with computer memory that can hold a value and that value can change.One example of a variable is the score in a game.
Important Note: Python with Turtle runs python 2.7 - that is why integer division does not give a decimal output:
10 / 3 = 3
BUT we want to use python 3 (like the workbook) so from now on create plain Python repl.it's
Python 3 integer division will give you a decimal output
10 / 3 = 3.3333333333333335
Vocabulary
Week 0: Sep 15 - Sep 18
- Discuss: class expectations and general overview of the course
- Set up: Google Folder for this class and share it with me
- Join: Slack Group
- Join: Runestone (apcsp_shs_2021)
- Join: Quia
- complete runestone_1 quiz - Padlet: About You Introductions
- Set up: Repl.it account
- we will do this together in class/meeting and write our first program/programs
- - use this form to submit the link when done (for practice)
- Homework/Classwork- complete chapter 1 - What is this book about? - due before Mon Sep 21
(you can give the pre-test a try but I am not grading this and I don't expect you to know the answers - but it will give you a quick overview of things you will learn) - Homework/Classwork:
- 2 items of personal interest (so we get to know something about each other)
- 1 item of technology that has been important to you (let's agree not to use phones, xbox, or computers)
- image of yourself or one of these things
* prepare these answers/prompts for next class meeting and add to this padlet
(you don't need to create an account but do add your name to the title) - Homework/Classwork: Chapter 2 - What can computers do?