Sie sind auf Seite 1von 5

Create Applications from Ideas

Written Response Submission Template


Submission Requirements
2. Written Responses
Submit one PDF document in which you respond directly to each prompt. Clearly label
your responses 2a 2d in order. Your response to all prompts combined must not
exceed 750 words, exclusive of the Program Code.
Program Purpose and Development
2a. 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.

(Approximately 150 words)


Insert response for 2a in the text box below.

The app, Daily Planner, was created using MIT App Inventor as the programming language. This
app is intended to allow users to create a weekly log of their upcoming activities so that they can
manage their schedules and make sure that they do not forget an important event. The app also
has a step and distance tracker so that the user can see how many steps they have taken and how
many kilometers or miles they have walked during the week. The video shows an example of
logging an event and how the events are stored. First, the user picks which day they want to edit.
They can add up to seven events before then having to override previous events. In the video,
two events and their times were added to Sunday, and then the screen was reentered to show
that they were stored. Then all events were cleared.

AP Computer Science Principles Effective Fall 2015 through Spring 2017 Page 1 of 5
2b. 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 program development. (Approximately 200 words)

Insert response for 2b in the text box below.

Once it was decided that the app was going to be a calendar app, my partner and I started testing
different coding and UI set up. The first thing that was done was creating the user interface so
that we could figure out how it should look and how we must write the code based on the
different components. Eight pages were created, the first being the home screen while the rest
were each of the days of the week. We wanted to implement a date and/or time picker so the
user could add the event and when it took place, so I decided to take up the task. I ended up
taking out the date picker because it was difficult to figure out how to save the data in each date
of a whole year. The hard part about the time picker was getting it from military time to the 12-
hour clock. I tested multiple algorithms for the clock to start over after 12 and deciding whether
to say A.M. or P.M.. Another opportunity and difficulty I ran into myself was implementing an
algorithm. After thinking about it, I decided to add a step counter. This tracker would count the
number of steps taken per week. I implemented the algorithm through the conversion from
kilometers to miles and vice versa.

AP Computer Science Principles Effective Fall 2015 through Spring 2017 Page 2 of 5
2c. Capture and paste an image or images of the program code segment that
implements an algorithm (marked with an oval in section 3) that is fundamental for your
program to achieve its intended purpose.

Your code segment must include an algorithm that integrates other algorithms and
integrates 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.
(Approximately 200 words)
Insert text response for 2c in the plain box below.

The algorithm displayed is used to convert the total distance walked from kilometers to miles.
First, the app has to decide whether it is displaying the distance in either kilometers or miles. This
selection is decided by the user. If the user selects miles, then this algorithm is accessed. The
total walking distance is stored in a TinyDB, so the app starts by getting the value from that
database. The value is originally stored in meters, so the algorithm first converts from meters to
kilometers by dividing the distance by 1,000. Then, to convert from kilometers to miles, the
algorithm multiplies the value by 0.621371. The number achieved is usually going to end up
containing a large string of decimals, so code is used to set the number to display only 2 decimals.
To set the text to display the final value, the title Total Distance this Week:, the distance value
in miles, and the units miles are joined and displayed on the screen for the user to see.

AP Computer Science Principles Effective Fall 2015 through Spring 2017 Page 3 of 5
2d. Capture and paste an image or images of the program code segment that contains
an abstraction you developed (marked with a rectangle in section 3)

Your abstraction should integrate mathematical and logical concepts.


Explain how your abstraction helped manage the complexity of your program.
(Approximately 200 words)
Insert text response for 2d in the plain box below.

AP Computer Science Principles Effective Fall 2015 through Spring 2017 Page 2 of 5
The abstraction displayed is a procedure designed to allow the app to figure out the time and
display it in a 12-hour clock (A.M. and P.M.) form instead of in military time (24-hour clock) form.
The procedure uses logic by containing multiple if/else statements, specifically when deciding if it
is A.M. or P.M. or if it needs to insert a 0 in the minutes. The procedure uses math by having to
take the modulo of 12, allowing the program to discern if it is before or after noon. The
abstraction is used three times on each of the date pages of the app. It is called when the screen
initializes, when the add button is selected, and after the user selects the time. The manages the
complexity of the program because, by abstracting a procedure, I do not have to rewrite this code
multiple times for each page. It also allowed me to just copy and paste this same procedure
across the different screens instead of having to rewrite the procedure for each screen. I just
needed to make sure that the components referenced in the code were under the same names
on each page.

AP Computer Science Principles Effective Fall 2015 through Spring 2017 Page 2 of 5

Das könnte Ihnen auch gefallen