Difference between revisions of "IB Computer Science 1"

From WLCS
 
Line 1: Line 1:
== Wednesday - Friday (10/14/15 - 10/16/15) ==
+
== [[IBCS1 - Archives]] ==
'''Agenda:'''
 
* [http://www.apsva.us/domain/2011 APS PRIME Internship Program] - see Ms. Burgos for more information
 
* [http://www.doe.virginia.gov/instruction/governors_school_programs/summer_residential/index.shtml VA Governor's School - Summer Residential Programs] - see Ms. Burgos for more information
 
* Introducing the Debugger
 
*# Load your Lab3.py code
 
*# Set a debug breakpoint at the line where the world is created (clicking on the left gray gutter will leave a red dot)
 
*# Hit the debug button (ladybug)
 
*# What happens? The code should execute, but stop at the debug breakpoint
 
*# You may now use the debug stepping buttons:
 
*## Step-into (arrow into box) - executes current line and steps into any function calls
 
*## Step-over (arrow over box) - executes current line and goes to next one (does *not* enter function calls)
 
*## Step-out of (arrow out of box) - steps out of the current function call
 
* [https://docs.google.com/document/d/1vJ30Qp_CzcTwMsuZMjAn0e6a3Nce-5fNEHeZlGBbBc4/edit?usp=sharing Lab 10: Lab 2 Redo]
 
* [https://docs.google.com/document/d/1R_Qd7nCcXNGyEtQfwUE1gCEmGhd7M_aaPCO3wuou4h4/edit?usp=sharing Lab 11: Maze Solver]
 
 
 
== Friday (10/9/15) ==
 
'''Warmup:'''
 
* Think about the following questions (you may discuss with a partner):
 
*# What is the purpose of a password for a login (authentication) system?
 
*# Why do password systems require a minimum password length (e.g. 8 characters or more)?
 
*# Why do password systems require the use of both upper and lowercase characters as well as special characters (e.g. !@#$%^&*)?
 
*# Do all password systems have identical password requirements?
 
*# What happens when people have too many different passwords?
 
 
 
'''Agenda:'''
 
* Cybersecurity - password authentication attacks
 
* Revisit '''warmup_10_5_15.py'''
 
*# Copy and paste the code from '''warmup_10_5_15.py''' into a new file named '''while_login.py'''
 
*# We will walk through different ways to improve our password system
 
*# First, let's allow the user to retry logins using a while loop
 
*# Second, let's prevent known password attacks using a while loop
 
* while loops
 
** [[Media:PythonWhileLoops.pptx]]
 
* [https://docs.google.com/document/d/1mmP0-7Ql2VcRCCsBS7H4SPTAY9cX_TBo3CIEvkimRxo/edit?usp=sharing Lab 8: Introducing the While Loop]
 
* [https://docs.google.com/document/d/1Opwn1Uu2MlDteFshAnjtpB7Q5tFsd6ZgWSkhayHZiNw/edit?usp=sharing Lab 9: Simplifying Repetitive Statements]
 
 
 
== Wednesday (10/7/15) ==
 
'''Agenda:'''
 
* Complete [https://docs.google.com/document/d/1b5PcudfszLRpoXL8KFQR7YpCvXxivelSuTZZHHBASZg/edit?usp=sharing Lab 7: Functions & Conditionals]
 
* Introduction to Iteration
 
* while loops
 
** [[Media:PythonWhileLoops.pptx]]
 
* [https://docs.google.com/document/d/1mmP0-7Ql2VcRCCsBS7H4SPTAY9cX_TBo3CIEvkimRxo/edit?usp=sharing Lab 8: Introducing the While Loop]
 
* [https://docs.google.com/document/d/1Opwn1Uu2MlDteFshAnjtpB7Q5tFsd6ZgWSkhayHZiNw/edit?usp=sharing Lab 9: Simplifying Repetitive Statements]
 
 
 
== Monday (10/5/15) ==
 
'''Warmup:'''
 
# Create a new file named warmup_10_5_15.py
 
# Prompt the user for a username and store it in a variable named username
 
# Prompt the user for a password and store it in a variable named password
 
# Write an if-else-statement that checks if the username matches "wlcs" and the password matches "awesome"
 
# Print out "Login successful" if the username and password are correct, and "Login rejected" otherwise
 
 
 
'''Agenda:'''
 
* Complete [https://docs.google.com/document/d/1b5PcudfszLRpoXL8KFQR7YpCvXxivelSuTZZHHBASZg/edit?usp=sharing Lab 7: Functions & Conditionals]
 
 
 
== Thursday (10/1/15) ==
 
'''Warmup:'''
 
* Go to Google Classroom and check if you have turned in every lab assignment
 
 
 
'''Agenda:'''
 
* Back to School Night Debrief
 
* Period 1 - Complete Labs 5 & 6
 
* Introduction to Conditionals
 
** Comparison operators (<, >, <=, >=, ==, !=)
 
** Boolean values: True, False
 
** [[Comparison operators assignment]]
 
** Logic operators: and, or, not
 
** [[Media:BooleanLogic.ppt]]
 
** [[Logical operators assignment]]
 
** if statement
 
*** [[Media:PythonIfStatements.pptx]]
 
** if-else statement
 
** nested if statements
 
* Letter Grade Calculator
 
*# Prompt the user for a number (0-100) (if you don't remember, look at past notes and lectures)
 
*# Use if-statements, comparison operators, and logical operators (and, or, not)
 
*# Print out the appropriate letter grade for the number (A, B+, B, C+, C, D+, D, E)
 
* Menu System
 
*# Find a fast food menu that lists different items and their caloric counts
 
*# Print out a menu of 5 of those items
 
*# Prompt the user to make a choice of one of the menu items
 
*# Using if statements, determine what choice the user made, and print out the calories in the order
 
 
 
== Back to School Night ==
 
* [https://docs.google.com/presentation/d/1PoA335gHnDCoWpGEpgHLDDaVzxjZ7fdE-oDaQaiENaQ/edit?usp=sharing Back to School Night Presentation]
 
 
 
== Tuesday (9/29/15) ==
 
'''Warmup:'''
 
* Go to Google Classroom and check if you have turned in every lab assignment
 
 
 
'''Agenda:'''
 
* [https://docs.google.com/document/d/1GJ4h-fZz7XnOBjJAFo9QRjuDW2ONZgSZCGSfHlAZNzA/edit?usp=sharing Lab 5: Robot Function Party]
 
* Introduction to if-statements
 
** [[Media:PythonIfStatements.pptx]]
 
* [https://docs.google.com/document/d/1aJbsKR85rOa2N3KpCZQhfkAUcZbgVMt66xQI19QLGSY/edit?usp=sharing Lab 6: What if?]
 
 
 
== Friday (9/25/15) ==
 
'''Warmup:'''
 
# Open a file named '''warmup_9_25_15.py'''
 
# Define a function named '''inch2cm(inches)'''
 
# It should print the number of cm by using the given parameter/argument '''inches'''
 
# Make several function calls to test the function:
 
## inch2cm(1) should print 2.54
 
## inch2cm(5) should print 12.7
 
## inch2cm(12) should print 30.48
 
 
 
'''Agenda:'''
 
* Functions Review
 
* [https://docs.google.com/document/d/1o_a2BrAqi8Hyuf3XYGXzMe2IrpUTZRvTvuCOPvzncJ8/edit?usp=sharing Lab 3: Functions]
 
* [https://docs.google.com/document/d/18PXbXIEA445ih_zTFJoS-6XdbbZ2cXS1Ic9A2KaC8TE/edit?usp=sharing Lab 4: More Function Fun]
 
 
 
== Wednesday (9/23/15) ==
 
'''Agenda:'''
 
* Java Pre-assessment
 
** Does *not* count for a grade
 
** Skip questions that you do not understand
 
* Student accounts
 
** Username: first initial + last name
 
** Password: student ID #
 
* Introduction to Functions
 
** Math examples
 
* [https://docs.google.com/document/d/1o_a2BrAqi8Hyuf3XYGXzMe2IrpUTZRvTvuCOPvzncJ8/edit?usp=sharing Lab 3: Functions]
 
* [https://docs.google.com/document/d/18PXbXIEA445ih_zTFJoS-6XdbbZ2cXS1Ic9A2KaC8TE/edit?usp=sharing Lab 4: More Function Fun]
 
 
 
== Monday (9/21/15) ==
 
'''Warmup:'''
 
# Go to Google Classroom
 
# Make sure that you have turned in every assignment (including pyKarel Lab 1)
 
 
 
'''Agenda:'''
 
* pyKarel review
 
* [https://docs.google.com/document/d/161XC5uewqdRTSAxO68JrMULymp9gmoclP4NuFnNUTbE/edit?usp=sharing Lab 2: World Building & Robot Parameters]
 
 
 
== Thursday (9/17/15) ==
 
'''Agenda:'''
 
* Period 1 - Chair switch
 
* WingIDE101 or Wing101
 
* [[Quadratic Formula Assignment]]
 
** Demo to Mr. Bui when completed
 
** Be sure to save your quad.py file in your Google Drive
 
* Introduction to pyKarel
 
** Go to Google Classroom for necessary additional files
 
** [https://docs.google.com/document/d/19BpBSBYQ4jn2XC5RO6Evu2r-pfotAUBzsJ8JIi39xxk/edit?usp=sharing Lab 1: My First pyKarel]
 
 
 
== Tuesday (9/15/15) ==
 
'''Agenda:'''
 
* Experienced Programming Challenges
 
** [http://projecteuler.net Project Euler] - Math Programming Quest
 
** [http://rosalind.info/ Rosalind] - Bioinformatics Programming Quest
 
* Input and Output Review
 
* Math Operations
 
** Addition +
 
** Subtraction -
 
** Multiplication *
 
** Division /
 
** Exponential **
 
** Order of operations!
 
* Mad Libs exercise
 
*# Prompt the user to enter a noun and store it in a variable named '''noun'''
 
*# Prompt the user to enter a verb and store it in a variable named '''verb'''
 
*# Prompt the user to enter another noun and store it in a variable named '''noun2'''
 
*# Print out a message that contains noun, verb, and noun2
 
* Circle calculations exercise
 
*# Prompt the user to enter the radius of a circle (this should be a float)
 
*# Calculate and print out the circumference of the circle.  Make sure your output looks like: "Circumference: ###"
 
*# Calculate and print out the area of the circle.  Make sure your output looks like: "Area: ###"
 
* Slope calculation exercise
 
*# Prompt the user to enter x1 (this should be a float)
 
*# Prompt the user to enter y1 (this should be a float)
 
*# Prompt the user to enter x2 (this should be a float)
 
*# Prompt the user to enter y2 (this should be a float)
 
*# Calculate and print out the slope.  Make sure your output looks like: "Slope: ###"
 
* [[Quadratic Formula Assignment]]
 
** Demo to Mr. Bui when completed
 
 
 
== Friday (9/11/15) ==
 
'''Warmup:'''
 
* Re-enroll into [http://classroom.google.com Google Classroom]
 
** Class code:
 
*** Period 1: aexivy
 
*** Period 5: p9ix40t
 
*** Period 7: 7hgrpaf
 
 
 
'''Agenda:'''
 
* Web Browser and Desktop tricks
 
** Tabbed Browsing
 
** Tiling windows
 
** Keyboard shortcuts
 
*** Ctrl-T = New Tab
 
*** Ctrl-Tab = Switch Tabs
 
*** Ctrl-N = New Window
 
*** Alt-Tab = Switch Windows
 
*** Windows-Left/Right = Tile Window to Left/Right
 
*** Windows-Up = Maximize
 
 
 
* Introduction to Python
 
** [http://www.pythontutor.com http://www.pythontutor.com] - Code Visualizer
 
** WingIDE 101
 
** [http://en.wikipedia.org/wiki/Hello_world_program Hello world program]
 
* Experienced Students Option
 
** Go to Links->Programming Practice
 
** Or work ahead as fast as you can by accessing Links->Archived Websites
 
* [[Media:BasicProgrammingTerms.ppt]]
 
* Introduction to Values, Types, and Variables
 
** [[Media:ValuesTypesVariables.ppt]]
 
** [[Values, Types, and Variables Identification assignment]]
 
* Input and Output
 
** [[Media:PythonInputOutput.ppt]]
 
* Mad Libs exercise
 
*# Prompt the user to enter a noun and store it in a variable named '''noun'''
 
*# Prompt the user to enter a verb and store it in a variable named '''verb'''
 
*# Prompt the user to enter another noun and store it in a variable named '''noun2'''
 
*# Print out a message that contains noun, verb, and noun2
 
* Circle calculations exercise
 
*# Prompt the user to enter the radius of a circle (this should be a float)
 
*# Calculate and print out the circumference of the circle.  Make sure your output looks like: "Circumference: ###"
 
*# Calculate and print out the area of the circle.  Make sure your output looks like: "Area: ###"
 
* Slope calculation exercise
 
*# Prompt the user to enter x1 (this should be a float)
 
*# Prompt the user to enter y1 (this should be a float)
 
*# Prompt the user to enter x2 (this should be a float)
 
*# Prompt the user to enter y2 (this should be a float)
 
*# Calculate and print out the slope.  Make sure your output looks like: "Slope: ###"
 
 
 
'''Homework:'''
 
# Go to Syllabus (on the left)
 
# Read it
 
# Complete the agreement form with your parent (you will need your APS Google login)
 
 
 
== Wednesday (9/9/15) ==
 
* Name cards
 
* Complete the [https://docs.google.com/spreadsheet/viewform?key=0ApPgoX5sTp-_cDZfazFTTWJTMnp2TUhKTkpCQmtGUEE Student Survey]
 
* Misc logistics
 
** 20/10 no pass policy
 
** Location of bathrooms
 
** Sign in/out sheets
 
** Mr. Bui has C Lunch (3rd Lunch)
 
* [[IB Computer Science I Syllabus]]
 
** Complete online syllabus agreement form by the end of next week (9/18/15)
 
* [http://classroom.google.com Google Classroom]
 
** Sign into your APS Google accounts
 
** Class code:
 
*** Period 1: aexivy
 
*** Period 5: p9ix40t
 
*** Period 7: 7hgrpaf
 
* IT Resources for Students (UserID: StudentID# and Password: Birthday)
 
** Google Apps - [http://www.apsva.us/google http://www.apsva.us/google]
 
** Dropbox - [http://www.dropbox.com http://www.dropbox.com]
 
** Others (OneDrivedrive, etc.)
 
* What is computer science?
 
* Introduction to Python
 
** [http://www.pythontutor.com http://www.pythontutor.com] - Code Visualizer
 
** WingIDE 101
 
** [http://en.wikipedia.org/wiki/Hello_world_program Hello world program]
 
 
 
'''Homework:'''
 
# Go to Syllabus (on the left)
 
# Read it
 
# Complete the agreement form with your parent (you will need your APS Google login)
 
 
 
== Tuesday (9/8/15) ==
 
* Introductions
 

Latest revision as of 08:28, 13 September 2023