# Abstraction Summative – Jacob

Definition of Abstraction:

A simpler way of representing something

An example of abstraction is google maps it is a simpler way of representing streets.

I made my abstractions by starting at the most complex form of abstraction which was pseudo code. Then I made the pseudo code simpler by just outlining the steps the pseudo code takes which was a flowchart. Finally I made my simplest form of abstraction which was a paragraph explaining the machine. The process of doing this is done by starting of using a complicated form of abstraction and making the representation simpler. Doing this helps programmers write code because they know what to write rather than getting confused by looking at something complicated.

Psuedo code:

Flow chart middle tier of abstraction:

Simplest way of abstraction:

Flowchart (middle tier of abstraction) improved:

Abstraction can be very useful for programming as demonstrated here. In programming it is easier to create a simpler way of representing the program and code from there instead of using a very complicated form of the code. Abstraction can be used for mathematical problems such as the Konigberg bridges problem where Euler used abstraction to solve the problem by represent the seven bridges more simply. The Konigsberg bridge problem was is it possible only to walk on one time on each bridge in a day and Euler found with the help of his abstraction that it was impossible. The simplest form of abstraction won’t give you details but will provide a good founding base to code and once you start coding the more detailed parts the more complicated abstraction you need.

Konigsberg bridge problem Abstraction image:

Abstraction Code:

https://github.com/theweponyrebel/APCSP/blob/master/Abstraction%20Summaitve.py

My code has different abstraction levels to it one being complex form of abstraction and one being low form of abstraction. I have a print statement and a input variable that are very low forms of abstraction they are low levels of abstractions because they are simple code. My higher forms of abstraction are the function that is a more complex form of abstraction because it is more complicated code.

Why is a high level program easier to understand than a lower-level language in a program?

A high level program will use code that sounds more like english than a lower level program. Also a higher level program will be more streamline and organised rather than a lower level program that might have a lot of if statements and print statements.

Sources:

“Seven Bridges of Königsberg.” Wikipedia, Wikimedia Foundation, 27 Aug. 2017, en.wikipedia.org/wiki/Seven_Bridges_of_K%C3%B6nigsberg.