Students have used if and if-else statements to execute blocks of code …
Students have used if and if-else statements to execute blocks of code based on a condition. In this lesson, students explore the functionality of nested if statements and learn to use these to test a combination of conditions. Students use nested if statements to write an algorithm to compare pairs of values in a 1D array. This lesson is aligned to CSTA standards.
Students revisit logical operators to explore the use of the && (and) …
Students revisit logical operators to explore the use of the && (and) and || (or) operators. Students use truth tables to evaluate Boolean expressions and learn about short-circuited evaluation. This lesson is aligned to CSTA standards.
Students learn about De Morgan's Laws and how they are applied to …
Students learn about De Morgan's Laws and how they are applied to Boolean expressions. Students explore how equivalent Boolean expressions evaluate to the same value in all cases. Students then use truth tables to evaluate compound Boolean expressions and prove De Morgan's Laws. This lesson is aligned to CSTA standards.
Students have written methods that require an object to be created before …
Students have written methods that require an object to be created before the method can be called. In this lesson, students revisit the static keyword and learn to write and call static methods. Students explore their functionality and identify scenarios for their use. Students then practice writing and calling static methods to solve problems. This lesson is aligned to CSTA standards.
Students explore the Math class to learn about its structure and available …
Students explore the Math class to learn about its structure and available methods. As students review the documentation for the Math class, they revisit the final keyword and learn how it can be used to prevent inheritance. Students practice using methods in the Math class to solve problems. This lesson is aligned to CSTA standards.
Students learn how casting operators can be used to temporarily convert a …
Students learn how casting operators can be used to temporarily convert a value to a different type. Students explore the effect of using the (int) and (double) casting operators on a value and expression. Students also use casting operators to round a double value to the nearest integer. This lesson is aligned to CSTA standards.
Students revisit the Math class and learn to use the Math.random() method …
Students revisit the Math class and learn to use the Math.random() method to generate random numbers. Students explore how to manipulate the values returned from Math.random() to produce a random int or double in a specific range. Students then practice generating and using random numbers. This lesson is aligned to CSTA standards.
Students practice working with 2D arrays and modifying standard algorithms to plan …
Students practice working with 2D arrays and modifying standard algorithms to plan and implement an algorithm to shift a 2D array. Students explore how the elements in a 1D array can be shifted and then write pseudocode to modify the algorithm to be applied to a 2D array. This lesson is aligned to CSTA standards.
For this project, students use the skills they have developed throughout this …
For this project, students use the skills they have developed throughout this unit to create new image filters to use in a collage or animation that portrays personal experiences and/or interests. After brainstorming and planning, students develop their programs. This lesson is aligned to CSTA standards.
Students planned their visuals and algorithms to create a collage or animation …
Students planned their visuals and algorithms to create a collage or animation about their personal experiences and/or interests. Students continue to develop their projects to implement algorithms to create a new image filter and their collage or animation. Students reinforce software development skills and processes as they participate in a code review to give and use feedback as they develop their program. This lesson is aligned to CSTA standards.
Students conducted code reviews at the end of the previous lesson to …
Students conducted code reviews at the end of the previous lesson to give and receive feedback that assists in identifying areas of improvement and fixes for problems they encountered. At this stage of the project, students consider this feedback as they finalize development in this lesson. Students share their final projects with their peers to celebrate their successes. This lesson is aligned to CSTA standards.
Students practice developing solutions to AP CSA FRQs on a mock 2D …
Students practice developing solutions to AP CSA FRQs on a mock 2D Arrays FRQ. Students apply decomposition and annotation strategies to identify the key components of the problem and validate their solutions using Scoring Guidelines. This lesson is aligned to CSTA standards.
Students explore the structure of two-dimensional (2D) arrays and identify similarities and …
Students explore the structure of two-dimensional (2D) arrays and identify similarities and differences between 1D and 2D arrays. Students learn to access and modify individual elements by referring to their row and column index values. Students then practice declaring and initializing 2D arrays using the new keyword and initializer lists and work with the elements stored in the arrays. This lesson is aligned to CSTA standards.
Students will be able to: (1) Apply standard 1D array algorithms to …
Students will be able to: (1) Apply standard 1D array algorithms to a 2D array and (2)Write nested loops to traverse a two-dimensional (2D) array in row-major order. This lesson is aligned to CSTA standards.
Students learn to use nested loops to traverse a 2D array in …
Students learn to use nested loops to traverse a 2D array in column-major order and differentiate between column-major and row-major traversals. Students identify scenarios that are best for traversing in row-major and column-major order and develop an algorithm to traverse a 2D array in column-major order to find the sum of all values in each column of the array. Students then practice applying standard 1D array algorithms to 2D arrays to find information and perform calculations. This lesson is aligned to CSTA standards.
Students revisit the algorithm they developed to reverse a 1D array and …
Students revisit the algorithm they developed to reverse a 1D array and plan an algorithm to reverse a 2D array using pseudocode and manipulatives. Students then implement their algorithm in Java and practice applying their algorithm to various scenarios. This lesson is aligned to CSTA standards.
Students revisit enhanced for loops to explore how these are used with …
Students revisit enhanced for loops to explore how these are used with 2D arrays. In the process, students discover that objects can be modified using an enhanced for loop because the loop variable is an alias of the object reference in the array. Students explore how enhanced for loops can be used with 2D arrays and identify similarities and differences between using enhanced for loops with 1D arrays and 2D arrays. Students then practice using enhanced for loops with 2D arrays. This lesson is aligned to CSTA standards.
Students apply their knowledge of 2D arrays and object-oriented programming to create …
Students apply their knowledge of 2D arrays and object-oriented programming to create image filters using The Theater. Students learn how images are made up of pixels and that pixels consist of red, green, and blue color values and explore the Image and Pixel classes. Students write pseudocode to create an image filter that sets a specific color value to zero and then implement their algorithm in Java. This lesson is aligned to CSTA standards.
Students explore the beneficial and harmful impacts of programs by analyzing and …
Students explore the beneficial and harmful impacts of programs by analyzing and discussing real-world applications of image manipulation, such as deepfakes. Students discover that deepfakes are created using large amounts of data and reflect on how data is collected and the ethical and social implications of data collection. This lesson is aligned to CSTA standards.
Students practice working with 2D arrays and modifying standard algorithms to create …
Students practice working with 2D arrays and modifying standard algorithms to create new image filters using The Theater. Students explore an example of a new image filter and then write pseudocode to create a grayscale image filter. Students implement their algorithm in Java and create additional image filters by modifying Pixel objects stored in a 2D array. This lesson is aligned to CSTA standards.
No restrictions on your remixing, redistributing, or making derivative works. Give credit to the author, as required.
Your remixing, redistributing, or making derivatives works comes with some restrictions, including how it is shared.
Your redistributing comes with some restrictions. Do not remix or make derivative works.
Most restrictive license type. Prohibits most uses, sharing, and any changes.
Copyrighted materials, available under Fair Use and the TEACH Act for US-based educators, or other custom arrangements. Go to the resource provider to see their individual restrictions.