APCSP Create

You are required to:

  • independently develop an algorithm that integrates two or more algorithms and that is fundamental for your program to achieve its intended purpose;
  • develop an abstraction that manages the complexity of your program;
  • create a video that displays the running of your program and demonstrates its functionality;
  • write responses to all the prompts in the performance task; and
  • submit your entire program code.

Program Requirements

Your program must demonstrate a variety of capabilities and implement several different language features that, when combined, produce a result that cannot be easily accomplished without computing tools and techniques. Your program should draw upon mathematical and logical concepts, such as use of numbers, variables, mathematical expressions with arithmetic operators, logical and Boolean operators and expressions, decision statements, iteration, and/or collections.

Your program must demonstrate:

  • use several effectively integrated mathematical and logical concepts, from the language you are using;
  • implementation of an algorithm that integrates two or more algorithms and integrates mathematical and/or logical concepts; and
  • development and use of abstractions to manage the complexity of your program (e.g. procedures, abstractions provided by the programming language, APIs).

Submission Requirements

  1. Video

    Submit one video in .mp4, .wmv, or .mov format that demonstrates the running of at least one significant feature of your program. Your program must not exceed 1 minute in length and must not exceed 30MB in size.

  2. Written Responses

    Submit one PDF file in which you respond directly to each prompt. Clearly label your responses 2a–2d in order. Your responses to all prompts combined must not exceed 750 words, exclusive of the Program Code.

    1. Provide a written response or audio narration in your video that:
      • identifies the programming language;
      • identifies the purpose of your program; and
      • explains what the video illustrates.
      (Must not exceed 150 words)
    2. Describe the incremental and iterative development process of your program, focusing on two distinct points in that process. Describe the difficulties and/or opportunities you encountered and how they were resolved or incorporated. In your description clearly indicate whether the development described was collaborative or independent. At least one of these points must refer to independent development. (Must not exceed 200 words)
    3. Capture and paste a program code segment that implements an algorithm (marked with an oval in section 3 below) and that is fundamental for your program to achieve its intended purpose. This code segment must be an algorithm that you developed individually on your own, must include two or more algorithms, and must integrate mathematical and/or logical concepts. Describe how each algorithm within your selected algorithm functions independently, as well as in combination with others, to form a new algorithm that helps to achieve the intended purpose of the program. (Must not exceed 200 words)
    4. Capture and paste a program code segment that contains an abstraction you developed individually on your own (marked with a rectangle in section 3 below). This abstraction must integrate mathematical and logical concepts. Explain how your abstraction helped manage the complexity of your program. (Must not exceed 200 words)
  3. Program Code

    Capture and paste your entire program code in this section.

    • Mark with an oval the segment of program code that implements the algorithm you created for your program that integrates other algorithms and integrates mathematical and/or logical concepts.
    • Mark with a rectangle the segment of code that represents an abstraction that you developed.
    • Include comments or acknowledgments for program code that has been written by someone else.