Difference between revisions of "IB Computer Science 1"

From WLCS
(40 intermediate revisions by the same user not shown)
Line 1: Line 1:
== Wednesday (2/19/20) ==
+
== Monday - Friday (3/29/20 - 4/3/20) : Self-distancing : Week 3 ==
'''Agenda:'''
+
* Free Online Java Textbook: https://books.trinket.io/thinkjava2/
* Missing Robots + Item Collection Game (Top Down) w/ lists and loops demo
+
* for loop review and exercises
* Strings and Lists notes - https://docs.python.org/3/library/stdtypes.html#string-methods
+
** https://www.youtube.com/watch?v=h4ApLHe8tbk
** split()
+
** Complete the 4 for loop repl.its
* File Reading and Writing - https://docs.python.org/3/tutorial/inputoutput.html#reading-and-writing-files
+
* Java Arrays
** [[Media:Constitution.txt]]
+
** Read [https://drive.google.com/open?id=1Ayzvd1q-6RwZKplUtLHDCCLyO5XIR5kyeKUi8-htErY Java arrays]
*** How many times does the word "the" appear in the constitution?  (capitalized or not)
+
** Complete Java arrays exercises in repl.it
** http://courses.washington.edu/b517/Datasets/datasets.html
+
* Java Methods (functions)
* Practice with the datasets...
+
** Read through [https://docs.google.com/presentation/d/1L-tbBp51YuUoTWldXFBr6JGcyHF5sBy_flfPGiqlVAQ/edit?usp=sharing Java methods]
** Average length of a group of sharks - http://courses.washington.edu/b517/Datasets/sharklengths.csv
+
** Complete the Static Methods repl.it assignment
** Birthdata - http://courses.washington.edu/b517/Datasets/BirthsKingCounty2001.txt
+
 
*** Male : Female birth ratio
+
== Monday - Friday (3/23/20 - 3/27/20) : Self-distancing : Week 2 ==
*** Racial/ethnic percentages
+
* Mr. Bui is in the process of closing out 3rd Quarter grades
* Benford's Law Assignment
+
* Watch [https://www.youtube.com/watch?v=y-exbVWzPJ4 Java Method Signatures]
*# Read and watch [http://www.kirix.com/blog/2008/07/22/fun-and-fraud-detection-with-benfords-law/ Benford's Law and Fraud Detection]
+
* Complete the [https://docs.google.com/document/d/1QdwkorQtCghHqfqZ5QSH-RfuRoNUXGsXRjaLZ6MDJNI/edit?usp=sharing Java Processing: Bouncing Ball Lab]
*# Further reading [http://mathworld.wolfram.com/BenfordsLaw.html Benford's Law]
+
* Java References (if you feel like they'll be useful or you want to skim them to see what's there)
*# Research and find a set of naturally occurring numbers.  Here are some ideas, but you can come up with your own:
+
** [https://introcs.cs.princeton.edu/java/11cheatsheet/ Java Cheatsheet (Princeton)]
*#*[http://testingbenfordslaw.com/ Testing Benford's Law]
+
** [http://interactivepython.org/runestone/static/java4python/index.html Java for Python Programmers]
*#*[http://www.data.gov U.S. Government's Open Data]
+
** [https://processing.org/reference/ Processing (Java) Reference]
*#** [https://catalog.data.gov/dataset?res_format=CSV Data.gov Datasets]
+
* You will be converting several of your old Python Processing animations to Java Processing. '''You do not need to turn them in yet. Simply verify that it works yourself.'''
*#* [http://www.census.gov/ U.S. Census Bureau]
+
** Convert your Python Processing Emoji to Java
*#* [https://www.tableau.com/learn/articles/free-public-data-sets Tableau: Free Public Data Sets]
+
** Convert your Python Processing Hover Buttons to Java
*#* [https://www.springboard.com/blog/free-public-data-sets-data-science-project/ Springboard: Free Public Data Sets]
+
** Convert your Python Processing Tic-Tac-Toe to Java
*#* Heights of mountains
+
* If you do not have your Python Processing versions of the assignments above, then you may use somebody else's Python Processing code just to practice porting it to Java. You may find the Python version of some programs [https://drive.google.com/drive/folders/1Y_RKhGeK8snV4rc85zmZltlXFvsTvjWL?usp=sharing here]
*#* Atomic weights in the periodic table
+
* Make sure you successfully execute and test each of the programs that you convert over to Java
*#* Baseball statistics
+
* Feel free to practice converting other Python Processing programs to Java
*#* etc.
+
 
*# Create a text file that contains a list of your numbers (try to have a list of ~1000 numbers if possible)
+
== Tuesday - Friday (3/17/20 - 3/20/20) : Self-distancing : Week 1  ==
*#* There are many different ways to do this...some people use Excel, Google Sheets, Sublime, Notepad, etc.
+
* 3rd Quarter ends '''Friday (3/20/20)'''
*# Write a program that loads your text file, reads the data, extracts the leading digit(s) of the data set, and displays each digit's frequency
+
** All IB CS 1 grades are currently being entered for the 3rd quarter, so if you check and notice a grade is incorrect, then please e-mail Mr. Bui
 +
** Recheck your IB CS 1 grade daily because Mr. Bui is updating it right now.
 +
** If you wish to update a grade b/c you needed to complete a missing/late assignment, then please e-mail Mr. Bui
 +
** No work for 3rd Quarter will be accepted after '''Friday (3/20/20)'''
 +
* 4th quarter schedule of assignments will be posted soon (after Mr. Bui finishes closing out 3rd quarter grades)
  
 +
== Monday (3/16/20) : Self-distancing : Week 1 ==
 +
* All students are still expected to have completed all the repl.its assigned when school was still in session last week (see previous date below)
 +
* Mr. Bui is developing a weekly schedule of Java-related programming tasks and resources. <del>A complete schedule should be posted by Tuesday (3/17/20) morning</del>
 +
* Mr. Bui is also developing a question-answer workflow so that students can ask general and specific questions. The workflow will look something like this:
 +
** General questions should be posted in the Canvas Discussion area; however, the student should check if any existing discussion threads already answer their question. If not, then a new thread should be created for their question
 +
** Specific questions about student code will require students to take a screenshot of their own code and message it to Mr. Bui. The Canvas messaging system will likely be used for this because Mr. Bui does not want his inbox to be flooded
 +
* If you have any questions right now, please feel free to e-mail Mr. Bui or create a Discussion thread. Please note that if you e-mail a question, and it's a good question, then Mr. Bui may create a thread himself to repost and answer your question
 +
* Please note: Mr. & Mrs. Bui have their own children at home with them, so do not expect immediate responses.
  
== Wednesday - Friday (2/12/20 - 2/14/20) ==
+
== Thursday (3/12/20) ==
 
'''Agenda:'''
 
'''Agenda:'''
* Python Lists Quiz in Canvas
+
* Scanner review
* Re-implement Robots + Item Collection Game (Top Down) w/ lists and loops
+
* All repl.its through quadratic formula should be done at this point
** Demo your game
+
* Java Conditionals (booleans, comparisons, logic ops, if, while)
* Strings and Lists notes - https://docs.python.org/3/library/stdtypes.html#string-methods
+
* Complete the following repl.its
** split()
+
** 2 x Conditional Statement repl.its
* File Reading and Writing - https://docs.python.org/3/tutorial/inputoutput.html#reading-and-writing-files
+
** 4 x While Loop Practices
** [[Media:Constitution.txt]]
+
** Taylor Series Pi (4th quarter)
** http://courses.washington.edu/b517/Datasets/datasets.html
+
** Taylor Series E (4th quarter)
  
== Monday (2/10/20) ==
+
== Tuesday (3/10/20) ==
 
'''Agenda:'''
 
'''Agenda:'''
* Lists quiz on '''Wednesday (2/12/20)'''
+
* Java's Input Scanner
** List basics (creating, accessing, modifying, etc.)
+
** Read every line of https://repl.it/@paulbui/Java-Scanner-Input
** List traversal (loops w/ lists)
+
* Be able to answer the following questions about https://repl.it/@paulbui/Java-Scanner-Input
** List summation, search, and/or min/max
+
*# What statement is used at the top of the file to import the Scanner? (Line 1)
* Lists of Objects
+
*# How do we declare a Scanner variable and initialize it? (Line 9)
** Bouncing Ball w/ lists
+
*# How do we print message prompts to the user? (Lines 12, 17, 20)
** Flappy Bird w/ lists
+
*# How do we scan the keyboard for an inputted String? (Line 13)
* Assignment: re-implement Robots + Item Collection Game (Top Down) w/ lists and loops
+
*# How do we scan the keyboard for an inputted int? (Line 18)
** You should have 3 lists: allObjects, robots, & items
+
*# How do we scan the keyboard for an inputted double? (Line 21)
 +
* Complete the My First Scanner Java repl.it (should be done by the end of class period)
 +
* Complete the Rectangle Area Calculate Java repl.it (should be done by the end of class period)
 +
* Complete the Distance Formula Java repl.it (should be done by the end of class period)
 +
* Work on the Quadratic Formula Java repl.it (most people should be done with this too by the end of the period)
 +
 
 +
'''Homework:'''
 +
* Complete the Quadratic Formula by next class (or have questions if you are stuck)
  
== Tuesday - Thursday (2/4/20 - 2/6/20) ==
+
== Wednesday - Friday (3/4/20 - 3/6/20) ==
'''Warmup:'''
+
'''Agenda:'''
* Complete the bigger() and isDigit() repl.its
+
* App Catalog -> JGrasp
 +
* Turn in Download worksheets!
 +
* Introduction to Java
 +
** Join the [https://repl.it/classroom/invite/m8cStYC new Java repl.it course]
 +
** Basic syntax - Hello World
 +
** Variable declaration and initialization
 +
** Integer division
 +
** Casting
  
 +
== Monday (3/2/20) ==
 
'''Agenda:'''
 
'''Agenda:'''
* Course Request Forms
+
* Watch [https://archive.org/details/DownloadTrueStoryInternet/Download_-_The_True_Story_of_the_Internet_-1-_Browser_Wars.avi Download: The True Story of the Internet: Browser Wars]
** Rising Seniors -> IB CS 2 and/or AP CS A and/or AP CS Principles
+
** Complete the worksheet questions in Canvas. Due on '''Wednesday 3/4/20'''
** Rising Juniors -> AP CS A and/or AP CS Principles
+
* Watch [https://archive.org/details/DownloadTrueStoryInternet/Download_-_The_True_Story_of_the_Internet_-2-_Search.AVI Download: The True Story of the Internet: Search]
* Review [[Python List Exercises]]
+
** Complete the worksheet questions in Canvas. Due on '''Wednesday 3/4/20'''
* Complete List Repl.its by '''Thursday 2/6/20'''
+
 
** List Review Exercises
+
'''Homework:'''
** List Search
+
* Watch the videos and complete the worksheets in Canvas if you did not finish them in class. Due on '''Wednesday 3/4/20'''
** List Minimum
 
** List Maximum
 
** List Reverse
 
* Optional List Challenge:
 
** Complete Random Number List and List Surprise from [[Advanced Python List Exercises]]
 
* Lists of Objects
 
** Bouncing Ball w/ lists
 
** Flappy Bird w/ lists
 
  
== [[IBCS1 - 1920 - January]] ==
 
== [[IBCS1 - 1920 - December]] ==
 
== [[IBCS1 - 1920 - November]] ==
 
== [[IBCS1 - 1920 - October]] ==
 
== [[IBCS1 - 1920 - September]] ==
 
 
== [[IBCS1 - Archives]] ==
 
== [[IBCS1 - Archives]] ==
 +
* [[IBCS1 - 1920 - February]]
 +
* [[IBCS1 - 1920 - January]]
 +
* [[IBCS1 - 1920 - December]]
 +
* [[IBCS1 - 1920 - November]]
 +
* [[IBCS1 - 1920 - October]]
 +
* [[IBCS1 - 1920 - September]]
 +
* [[IBCS1 - Archives|IBCS1 - Previous Years]]

Revision as of 14:23, 31 March 2020

Monday - Friday (3/29/20 - 4/3/20) : Self-distancing : Week 3

Monday - Friday (3/23/20 - 3/27/20) : Self-distancing : Week 2

  • Mr. Bui is in the process of closing out 3rd Quarter grades
  • Watch Java Method Signatures
  • Complete the Java Processing: Bouncing Ball Lab
  • Java References (if you feel like they'll be useful or you want to skim them to see what's there)
  • You will be converting several of your old Python Processing animations to Java Processing. You do not need to turn them in yet. Simply verify that it works yourself.
    • Convert your Python Processing Emoji to Java
    • Convert your Python Processing Hover Buttons to Java
    • Convert your Python Processing Tic-Tac-Toe to Java
  • If you do not have your Python Processing versions of the assignments above, then you may use somebody else's Python Processing code just to practice porting it to Java. You may find the Python version of some programs here
  • Make sure you successfully execute and test each of the programs that you convert over to Java
  • Feel free to practice converting other Python Processing programs to Java

Tuesday - Friday (3/17/20 - 3/20/20) : Self-distancing : Week 1

  • 3rd Quarter ends Friday (3/20/20)
    • All IB CS 1 grades are currently being entered for the 3rd quarter, so if you check and notice a grade is incorrect, then please e-mail Mr. Bui
    • Recheck your IB CS 1 grade daily because Mr. Bui is updating it right now.
    • If you wish to update a grade b/c you needed to complete a missing/late assignment, then please e-mail Mr. Bui
    • No work for 3rd Quarter will be accepted after Friday (3/20/20)
  • 4th quarter schedule of assignments will be posted soon (after Mr. Bui finishes closing out 3rd quarter grades)

Monday (3/16/20) : Self-distancing : Week 1

  • All students are still expected to have completed all the repl.its assigned when school was still in session last week (see previous date below)
  • Mr. Bui is developing a weekly schedule of Java-related programming tasks and resources. A complete schedule should be posted by Tuesday (3/17/20) morning
  • Mr. Bui is also developing a question-answer workflow so that students can ask general and specific questions. The workflow will look something like this:
    • General questions should be posted in the Canvas Discussion area; however, the student should check if any existing discussion threads already answer their question. If not, then a new thread should be created for their question
    • Specific questions about student code will require students to take a screenshot of their own code and message it to Mr. Bui. The Canvas messaging system will likely be used for this because Mr. Bui does not want his inbox to be flooded
  • If you have any questions right now, please feel free to e-mail Mr. Bui or create a Discussion thread. Please note that if you e-mail a question, and it's a good question, then Mr. Bui may create a thread himself to repost and answer your question
  • Please note: Mr. & Mrs. Bui have their own children at home with them, so do not expect immediate responses.

Thursday (3/12/20)

Agenda:

  • Scanner review
  • All repl.its through quadratic formula should be done at this point
  • Java Conditionals (booleans, comparisons, logic ops, if, while)
  • Complete the following repl.its
    • 2 x Conditional Statement repl.its
    • 4 x While Loop Practices
    • Taylor Series Pi (4th quarter)
    • Taylor Series E (4th quarter)

Tuesday (3/10/20)

Agenda:

  • Java's Input Scanner
  • Be able to answer the following questions about https://repl.it/@paulbui/Java-Scanner-Input
    1. What statement is used at the top of the file to import the Scanner? (Line 1)
    2. How do we declare a Scanner variable and initialize it? (Line 9)
    3. How do we print message prompts to the user? (Lines 12, 17, 20)
    4. How do we scan the keyboard for an inputted String? (Line 13)
    5. How do we scan the keyboard for an inputted int? (Line 18)
    6. How do we scan the keyboard for an inputted double? (Line 21)
  • Complete the My First Scanner Java repl.it (should be done by the end of class period)
  • Complete the Rectangle Area Calculate Java repl.it (should be done by the end of class period)
  • Complete the Distance Formula Java repl.it (should be done by the end of class period)
  • Work on the Quadratic Formula Java repl.it (most people should be done with this too by the end of the period)

Homework:

  • Complete the Quadratic Formula by next class (or have questions if you are stuck)

Wednesday - Friday (3/4/20 - 3/6/20)

Agenda:

  • App Catalog -> JGrasp
  • Turn in Download worksheets!
  • Introduction to Java
    • Join the new Java repl.it course
    • Basic syntax - Hello World
    • Variable declaration and initialization
    • Integer division
    • Casting

Monday (3/2/20)

Agenda:

Homework:

  • Watch the videos and complete the worksheets in Canvas if you did not finish them in class. Due on Wednesday 3/4/20

IBCS1 - Archives