No guests here! Course: AP Computer Science A
Skip to main content
Computer Science with Mr MJ
  • You are currently using guest access (Log in)

AP Computer Science A

  1. Home
  2. Courses
  3. ACS Courses Rebuilt - June 14 2023
  4. AP Computer Science A
  • Plan

    n

    Plan
  • Knowing How to Learn Best

    Knowing How to Learn Best

    • How To Use ChatGPT To Learn Any Skill Quickly (Tutorial)

      Use Chat GPT to learn and master any skill in the entire world using specific prompts.
      By the end of the video, you'll know about all the endless learning possibilities that you can use to build your skills.

      It is highly encouraged that you watch this video to the end, take notes, and implement into your own life.

      Check out ChatGPT here: https://chat.openai.com/

      vYvOTGk7hOA


      Discussion questions:  With so much that is changing with AI, what value could you bring to society in your career? (Elon Musk on Open AI and its impact)
      bkvhH77mAwA

    Knowing How to Learn Best
  • Past Papers 2021-1999

    Past Papers 2021-1999

    • Questions are available in the AP Classroom question bank.

       

      2021 Free-Response Questions

      Questions

      Scoring

      Samples and Commentary

      Free-Response Questions

      Scoring Guidelines

      Chief Reader Report

      Scoring Statistics

      Scoring Distribution

      Sample Responses Q1

      Sample Responses Q2

      Sample Responses Q3

      Sample Responses Q4



      2019 Free-Response Questions

      Questions

      Scoring

      Samples and Commentary

      Free-Response Questions

      Scoring Guidelines

      Chief Reader Report

      Scoring Statistics

      Scoring Distribution

      Sample Responses Q1

      Sample Responses Q2

      Sample Responses Q3

      Sample Responses Q4

       

      2018 Free-Response Questions

      Questions

      Scoring

      Samples and Commentary

      Free-Response Questions

      Scoring Guidelines

      Chief Reader Report

      Scoring Statistics

      Scoring Distributions

      Sample Responses Q1

      Sample Responses Q2

      Sample Responses Q3

      Sample Responses Q4

       

      2017 Free-Response Questions

      Questions

      Scoring

      Samples and Commentary

      Free-Response Questions

      Scoring Guidelines

      Chief Reader Report

      Scoring Statistics

      Scoring Distributions

      Sample Responses Q1

      Sample Responses Q2

      Sample Responses Q3

      Sample Responses Q4

       

      2016 Free-Response Questions

      Questions

      Scoring

      Samples and Commentary

      Free-Response Questions

      Scoring Guidelines

      Student Performance Q&A

      Scoring Statistics

      Score Distributions

      Sample Responses Q1

      Sample Responses Q2

      Sample Responses Q3

      Sample Responses Q4

       

      2015 Free-Response Questions

      Questions

      Scoring

      Samples and Commentary

      Free-Response Questions

      Scoring Guidelines

      Student Performance Q&A

      Scoring Statistics

      Score Distributions

      Sample Responses Q1

      Sample Responses Q2

      Sample Responses Q3

      Sample Responses Q4

       

      2014 Curriculum Change

      GridWorld is a computer program case study written in Java that was used with the AP Computer Science program from 2008 to 2014.

      The GridWorld Case Study was used as a substitute for writing a single large program as a culminating project. Due to obvious time restraints during the exam, the GridWorld Case Study was provided by the College Board to students prior to the exam. Students were expected to be familiar with the classes and interfaces (and how they interact) before taking the exam. The case study was divided into five sections, the last of which was only tested on the AB exam. Roughly five multiple-choice questions in Section I were devoted to the GridWorld Case Study, and it was the topic of one free response question in Section II.

       

      Historically, the AP exam used several programs in its free-response section to test students' knowledge of object-oriented programs without requiring them to develop an entire environment. These programs were called Case Studies.

       

      This practice was discontinued as of the 2014–15 school year and replaced with optional labs that teach concepts.

       

      2014 Free-Response Questions

      Questions

      Scoring

      Samples and Commentary

      Free-Response Questions

      Scoring Guidelines

      Student Performance Q&A

      Scoring Statistics

      Score Distributions

      Sample Responses Q1

      Sample Responses Q2

      Sample Responses Q3

      Sample Responses Q4

       

      2013 Free-Response Questions

      Questions

      Scoring

      Samples and Commentary

      Free-Response Questions

      Scoring Guidelines

      Student Performance Q&A

      Scoring Statistics

      Score Distributions

      Sample Responses Q1

      Sample Responses Q2

      Sample Responses Q3

      Sample Responses Q4

       

      2012 Free-Response Questions

      Questions

      Scoring

      Samples and Commentary

      Free-Response Questions

      Scoring Guidelines

      Student Performance Q&A

      Scoring Statistics

      Score Distributions

      Sample Responses Q1

      Sample Responses Q2

      Sample Responses Q3

      Sample Responses Q4

       

      2011 Free-Response Questions

      Questions

      Scoring

      Samples and Commentary

      Free-Response Questions

      Scoring Guidelines

      Student Performance Q&A

      Scoring Statistics

      Score Distributions

      Sample Responses Q1

      Sample Responses Q2

      Sample Responses Q3

      Sample Responses Q4

       

      2010 Free-Response Questions

      Questions

      Scoring

      Samples and Commentary

      Free-Response Questions

      Scoring Guidelines

      Student Performance Q&A

      Scoring Statistics

      Score Distributions

      Sample Responses Q1

      Sample Responses Q2

      Sample Responses Q3

      Sample Responses Q4

       

      2009 Free-Response Questions

      Questions

      Scoring

      Samples and Commentary

      Free-Response Questions

      Scoring Guidelines

      2009 Canonical Solutions

      Student Performance Q&A

      Scoring Statistics

      Grade Distributions

      Sample Responses Q1

      Sample Responses Q2

      Sample Responses Q3

      Sample Responses Q4

       

      2008 Curriculum Change

      GridWorld is a computer program case study written in Java that was used with the AP Computer Science program from 2008 to 2014.

      The GridWorld Case Study was used as a substitute for writing a single large program as a culminating project. Due to obvious time restraints during the exam, the GridWorld Case Study was provided by the College Board to students prior to the exam. Students were expected to be familiar with the classes and interfaces (and how they interact) before taking the exam. The case study was divided into five sections, the last of which was only tested on the AB exam. Roughly five multiple-choice questions in Section I were devoted to the GridWorld Case Study, and it was the topic of one free response question in Section II.

       

      2008 Free-Response Questions

      Questions

      Scoring

      Samples and Commentary

      Free-Response Questions

      Scoring Guidelines

      Student Performance Q&A

      Scoring Statistics

      Grade Distributions

      Sample Responses Q1

      Sample Responses Q2

      Sample Responses Q3

      Sample Responses Q4

       

      2007 Free-Response Questions

      Questions

      Scoring

      Samples and Commentary

      Free-Response Questions

      Scoring Guidelines

      Student Performance Q&A

      Scoring Statistics

      Grade Distributions

      Sample Responses Q1

      Sample Responses Q2

      Sample Responses Q3

      Sample Responses Q4

       

      2006 Free-Response Questions

      Questions

      Scoring

      Samples and Commentary

      Free-Response Questions

      Scoring Guidelines

      Student Performance Q&A

      Scoring Statistics

      Grade Distributions

      Sample Responses Q1

      Sample Responses Q2

      Sample Responses Q3

      Sample Responses Q4

       

      2005 Free-Response Questions

      Questions

      Scoring

      Samples

      Free-Response Questions

      Scoring Guidelines

      Scoring Commentary

      Student Performance Q&A

      Scoring Statistics

      Grade Distributions

      Sample Response

       

      2004 Free-Response Questions

      Questions

      Scoring

      Samples

      Free-Response Questions

      Scoring Guidelines

      Scoring Commentary

      Student Performance Q&A

      Scoring Statistics

      Grade Distributions

      Sample Responses Q1

      Sample Responses Q2

      Sample Responses Q3

      Sample Responses Q4

       

      2003 Curriculum Change

      ​​Case studies were used in AP Computer Science curriculum starting in 1994.

      The Marine Biology Case Study (MBCS) was a program written in C++ until 2003, then in Java, for use with the A and AB examinations.

       

      2003 Free-Response Questions

      Questions

      Scoring

      Samples

      Free-Response Questions

      Scoring Guidelines

      Scoring Commentary

      Student Performance Q&A

      Scoring Statistics

      Grade Distributions

      Sample Responses Q1

      Sample Responses Q2

      Sample Responses Q3

      Sample Responses Q4

       

      2002 Free-Response Questions

      Questions

      Scoring

      Samples

      All Questions

      Scoring Guidelines

      Scoring Commentary

      Student Performance Q&A

      Grade Distributions

      Sample Responses Q1

      Sample Responses Q2

      Sample Responses Q3

      Sample Responses Q4

       

      2001 Free-Response Questions

      Questions

      Scoring

      Samples

      All Questions

      Scoring Guidelines

      Scoring Commentary

      Student Performance Q&A

      Sample Responses Q1

      Sample Responses Q2

      Sample Responses Q3

      Sample Responses Q4

       

      2000 Curriculum change

      Big Integer case study (1994-1999)

      The Big Integer case study was in use prior to 2000. It was replaced by the Marine Biology case study.

       

      2000 Free-Response Questions

      Questions

      Scoring

      Samples

      All Questions

      Scoring Guidelines

      Scoring Commentary

      Sample Responses Q1

      Sample Responses Q2

      Sample Responses Q3

      Sample Responses Q4

       

      1999 Free-Response Questions

      Questions

      Scoring

      Samples

      All Questions

      Student Performance Q&A



    Past Papers 2021-1999
  • Daily Resources and Learning Intentions

    Daily Resources and Learning Intentions

    •  

      NOTICE

      Open the learning intentions and resources at the start of each class.

      When absent or away from school, all students are expected to self-help and complete the activities using the resources posted below.

    • Learning Intentions and Resources

      gqufmiW0BKVw5VNsUyTjPTyx4uogUwO56W6v91JciFgps5n-TCrnI048Lu4od8xl-dQoW0ECvoQQqHx_WCT75WpD_tjTtra3in1oiJi9t1WuvmhnVXm9Wl0lpoStCgCVxFCRhuUkk2ZtWDaEZJXRV40  Q56FY8Xsms2SZ2_60DxfVHUKLVwyti16AeyQzKV7AbFVLjVYpxISanRwwjf3IF7-zb41gomaP6zERhj03DHRQ6YiARxx4BGsmABZ_8dc6tMK7ZZ-QAA_X_w6HHy_-oTeyobLrmgPHjLsH_nBQQlPWvQ          bzZNOwkv6v3YHuInOH6rFTXQaNoMieA3L9a-7_OQ8siZQxoYohqc2qRgLZubAtjT08vH0rrpNdhtqlsreu9sv_JOYUtEjhvx5lfPGl5QZrWi3w_XHqmLyEx6I16bcV2_ccwfDmOUA7ILSRHIiPt51jM   EYzwJfY527wU3SCs5uDo-5ArWvSiQ7NrSg9uS6W0_P_9cWdrMQ1amcwwXoM4gZICQ8JPXFMd1x8bEVB8bJFcnwTOSd2Jqe86HjwbRlWWYOvBLGBA94cVwewKvH4PDVIwQlVdCkydqwBdynb8rXIalUQ          6Jg9_CP-nwXXHVMRggeYKo4mQV3T1VyIX6j6_CW74QLQkSIaPTBfDMuuivG58YC7EUjDnggMbluZsYh0q57P8CARnTcmbebynEFAsm80UI_meD0jPb23dCQ5Ci4cLJOCZqB-ia18a67oD_lHKjJyn9w  

      DATE

      TOPIC

      LEARNING INTENTIONS & RESOURCESSummative

      Thu 2 Mar

      End of course content - Revision period and Targets.

      wed 28 Feb

      End of course content - Revision period and Targets.

      Thu 22 Feb

      Mr Mj Absent (Covid) - Revise, Preapre for Exams.

      Tue 24 Jan

      Recursion - Merge Sort Click Here

      Fri 20 Jan

      Recursion Click Here

      Tue 17 Jan

      Recursion Click Here

      Test Notification  - 31 JAN - Summative Test - 2D Arrays - MCQ + FRQ Type

      Tue 17 Jan

      2D Arrays - Exam Prep

      Click Here

      Fri 13 Jan

      2D Arrays

      Click Here

      Thu 12 Jan

      2D Arrays 

      Click Here

      Tue 10 Jan

      2D Arrays

      Click Here

      Tue 6 Dec

      Test - FRQ + MCQ (OOP)

      Click Here

      Test Notification Reminder - Summative Test - MCQ + FRQ Type - Full OOP (6th December)

      Fri 2 Dec

      Coding Challenge - Standard Algorithms Click Here

      Thu 1 Dec

      Standard Algorithms & Course Reflection Click Here

      Tue 29 Nov

      Standard Algorithms for Searching and Sorting Click Here

      Test Change Notification - Summative Test - MCQ Type - Full OOP (6th December)

      Fri 25 Nov

      Java Abstract Keyword + Interface + Card Game Sort App Click Here

      Thurs 24

      OOP videos Click Here

      Tue 22 Nov

      Bubble Sort App with OOP Click Here

      Tues 15 Nov

      OOP Projects - Inheritance and Polymorphism Click Here

      Test Notification - Summative Test - MCQ Type - Full OOP (24th November)

      Fri 11 Nov

      OOP - Polymorphism, Overriding, Inheritance Click Here

      Thu 10 Nov

      OOP - Polymorphism, Overriding, Inheritance Click Here

      Tue 8 Nov

      OOP - Showcase Click Here

      Fri 4 Nov

      OOP - Showcases / Consolidation, Inheritance, Polymorphism Click Here

      Thu 3 Nov

      OOP - Encapsulation, data hiding, OOP Graphics Click Here

      Tue 18 Oct

      OOP - Encapsulation, data hiding, OOP Graphics Click Here

      Fri 14 Oct

      Classes, Records, Arrays of Record, Null Click Here

      Thur 13 Oct

      Classes, Records, Arrays of Record, Null Click Here

      Test Notification - AP Central Exam Type - 10 x MCQ + 1 x FRQ (45 minutes)    |  Tuesday 11th October

      Until 10th Oct 1-Dimensional Arrays and Exam Practice

      Click Here

      AP Exam Practice MCQ

      AP Exam Practice FRQ

      Fri 23 Sep 1-Dimensional Arrays

      Click Here

      Thu 22 Sep Strings + Exam Written Responses

      Click Here

      Fri 16 Sep Problem Solving - String Functions

      Click Here

      Thu 15 Sep String Functions

      Click here

      Tue 13 Sep

      Methods(); Identifier scope: local & global; Actual and Formal Parameters; Static keyword; void, return types; Menus and Clear Screen Techniques 

      Click here

      Fri 9 Sep

      Using Switch Statements

      Click here

      Thu 8 Sep

      Modulo Arithmetic & Coding

      Click here

      Tue 6 Sep

      MCQ Do-While & Switch Statements

      Click here

      Fri 2 Sept

      Do While - Bottom Driven Loops

      Click here

      Thurs 1 Sept

      Collaboration  - SinX Solutions and Processing

      Click here

      Tues 30th Aug

      Nested Loops - Numerical Triangles

      Click here

      Thurs 25th Aug

      Prior Learning Check

      Click here

      Tues 23rd Aug

      Getting Connected

      Click here

    Daily Resources and Learning Intentions
  • Course Overview & Assessment

    Course Overview & Assessment

    • For any aspiring programmer, the benefits of learning Java are foundational to learning subsequent coding languages such as C, C#, C++, Python and others. This is because Java teaches new coders how to think like a programmer, working through processes with logic and testing out ideas.

    • Course Description

      AP Computer Science A is an introductory college-level computer science course. Students cultivate their understanding of coding through analysing, writing, and testing code as they explore concepts like modularity, variables, and control structures.  This AP course at ACS Cobham focuses on developing students' capacity to think creatively, innovatively, analytically, logically, and critically and to apply skills, knowledge and understanding of programming, using Java, in a range of contexts to solve problems.  Creative, critical and meta-cognitive thinking skills are developed through students’ practical involvement in projects.

      Fundamental topics in this course include the design of solutions to problems, the use of data structures to organise large sets of data, the development and implementation of algorithms to process data and discover new information, the analysis of potential solutions, and the ethical and social implications of computing systems. The course emphasises object-oriented programming and design using the Java programming language.

      ​This a course in which diverse aspects of a student’s prior knowledge and skills can be brought together.  Students will be given opportunities to build on their technology and programming skills when designing and integrating coded solutions throughout the course. Through approaches such as modelling and prototyping and other student-centred activities, students will develop knowledge and understanding of both practical and theoretical concepts of Computer Science.

      Participation in Computer Science at ACS Cobham appeals to students through practical activities and their enjoyment of learning about and using computers. As a result of studying this course, students will be equipped to make appropriate use of and informed choices about computational technologies both at a personal level and in the workplace. Students will be prepared for future developments and directions in the exciting and challenging field of Computer Science. They can develop an interest in, enjoyment of and critical reflection about computer technology as an integral part of modern society.

      Prerequisites

      It is recommended that students have successfully completed a first-year high school algebra course with a strong foundation of basic linear functions, the composition of functions, and problem-solving strategies that require multiple approaches and collaborative efforts. In addition, students should be able to use a Cartesian (x, y) coordinate system to represent points on a plane. It is important that students and their advisers understand that any significant computer science course builds upon a foundation of mathematical reasoning that should be acquired before attempting such a course.

      Prior computer science experience is required to take this course at ACS Cobham and so students must have completed our Computer Java course first, or an equivalent course such as IGCSE Computer Science (Grade B) using Java.  All students must have at at-least Mathematics IM1 Standard, Grade 4, or its equivalent (IGCSE C), to enrol in this course.

    • Course Unit Plan

    • Learning Enrichment and Challenge

      d

    • Assessment and Exam Format

      Section I: Multiple Choice

      40 Questions | 1 Hour 30 Minutes | 50% of Exam Score

      • The multiple-choice section includes mostly individual questions, occasionally with 1–2 sets of questions (2 questions per set).
      • Computational Thinking Practices 1, 2, 4, and 5 are all assessed in the multiple-choice section.

      Section II: Free Response

      4 Questions | 1 Hour 30 Minutes | 50% of Exam Score

      All free-response questions assess Computational Thinking Practice 3: Code Implementation, with the following focus:

      • Question 1: Methods and Control Structures—Students will be asked to write program code to create objects of a class and call methods, and satisfy method specifications using expressions, conditional statements, and iterative statements.
      • Question 2: Classes—Students will be asked to write program code to define a new type by creating a class and satisfy method specifications using expressions, conditional statements, and iterative statements.
      • Question 3: Array/ArrayList—Students will be asked to write program code to satisfy method specifications using expressions, conditional statements, and iterative statements and create, traverse, and manipulate elements in 1D array or ArrayList objects.
      • Question 4: 2D Array—Students will be asked to write program code to satisfy method specifications using expressions, conditional statements, and iterative statements and create, traverse, and manipulate elements in 2D array objects.

    • Exam Java Reference

    • Course at a Glance

    • AP Central - Course Units & Exam Practice

    Course Overview & Assessment
  • Enhancement & Enrichment Options and Planning

    Enhancement & Enrichment Options and Planning

    • Tasks

      • CodingBat
      • LeetCode
      • HackerRank
      • UK Coding Olympiad Questions
      • Top 75 Programming Interview Questions with Answers
      • Top 30 Programming / Coding Interview Questions & Answers
      • Top 50 Programming Interview Questions
      • Data Structures for Coding Interviews in Java
      Please note that an extension is an option and a personal choice for each student. 
      All students are expected to complete the same assessments for AP CSA.  However, the ways in which they build solutions, at an extended level, are up to each student in collaboration with the teacher so that developments are in line with the IB content. 
      • Students can choose to extend all solutions by implementing SWING GUI
      • Developing OOP games, physics, and The Arts using Processing with ps.j5 type scripting with Java.
      • Developing solutions using JavaScript, HTML, and CSS.
    Enhancement & Enrichment Options and Planning
  • Prerequisite Course Content - Fundamentals in Java

    Prerequisite Course Content - Fundamentals in Java

    • Essential Prerequisite

      Students must have already completed studies in programming with Java before enrolling and starting this advanced AP Computer Science course.  Which includes the use of the command line to compile and execute Java programs; The use of BlueJ to create, compile, test and debug Java programs; a good understanding or error types which includes syntax error, run-time error and logic erros; a wide range of data types which must includes int, float and boolean; a good understanding of binary and hexadecimal; a good use of boolean logic with flags to control program flow; input and output using the io console; selection techniques, iterations with While and FOR loops.

    • Variables and Formulas - Detailed

      Branching and Decision Making

      Iterations and Loops

    Prerequisite Course Content - Fundamentals in Java
  • Unit 1 - Further Programming

    Unit 1 - Further Programming

    • Content Overview

      Students learn to:

      design, develop and document software solutions;  extend the method of iterations beyond that of the Comp Java course using nested loops and bottom-driven loops;  to master standard operations on Strings and lists using 1 x dimensional arrays;  explore standard coding techniques for searching and sorting data;  process lists using standard algorithms for a linear search and an iterative bubble sort; to insert into ordered lists using a sample insert algorithm; understand the impact of top-down design and modular programming to solve complex problems through collaborative teamwork; design and develop user-defined functions and procedures; design and develop solutions using records; to process, search and sort arrays of records; to delete records from an array and append records to an array;  testing and evaluating software solutions;

      Assessment:

      Logbooks:  Students record programs to show good programming styles and techniques.  Students present testing strategies and evaluate their solutions to a range of challenges of increasing difficulty.  

      Extension Student Project:  Students develop a solution to a real-world problem to demonstrate mastery of coding styles and techniques.  Students use a top-down approach to design and develop modular solutions through teamwork.

    • AP CSA Reinforcement of Prior Learning

    • Advanced Iterations

    • AP CSA Functions
    • AP CSA Operations on Strings

    • AP CSA - 1 Dimensional Arrays

    • Further Programming and Algorithms

      • Software Design Techniques - Stubs and Drivers
      • Standard Algorithm - Bubble Sort
      • Summative Test
        • Question 3 Type: Array/ArrayList—Students will be asked to write program code to satisfy method specifications using expressions, conditional statements, and iterative statements and create, traverse, and manipulate elements in 1D array or ArrayList objects.
        • Question 4: 2D Array—Students will be asked to write program code to satisfy method specifications using expressions, conditional statements, and iterative statements and create, traverse, and manipulate elements in 2D array objects.
      • Compound Data Types - Creating Records
      • Deleting Records from an Array - Exploring null object values
      • Appending Records to the end of an Array
      • Summative Assessment - Challenge: Doctors Clinic Database with Records
      • Summative Test
        • Question 3 Type: Array/ArrayList—Students will be asked to write program code to satisfy method specifications using expressions, conditional statements, and iterative statements and create, traverse, and manipulate elements in 1D array or ArrayList objects.
        • Question 4: 2D Array—Students will be asked to write program code to satisfy method specifications using expressions, conditional statements, and iterative statements and create, traverse, and manipulate elements in 2D array objects.

    Unit 1 - Further Programming
  • Unit 1.1 - OOP Programming

    Unit 1.1 - OOP Programming

    • Students extend their understanding of programming in Java with practical investigations into the fundamentals of OOP.  Students solve problems and demonstrate knowledge and understanding of abstraction, encapsulation, polymorphism and inheritance.

      Assessment: 

      Unit 1.2*
      OOP Mini Project

    Unit 1.1 - OOP Programming
AP Computer Science A
Knowing How to Learn Best
Past Papers 2021-1999
Daily Resources and Learning Intentions
Course Overview & Assessment
Enhancement & Enrichment Options and Planning
Prerequisite Course Content - Fundamentals in Java
Unit 1 - Further Programming
Unit 1.1 - OOP Programming
Home
Calendar
You are currently using guest access (Log in)
Home