AP CSP 1.1.4-1.1.6

Relational operators - Used to test the relationship between two variables, expressions, or values. A comparison using a relational operator evaluates to a Boolean value. For example, a b evaluates to true if a and b are equal; otherwise, it evaluates to false.  Operators include: , !=, >, <, >=, and >=. 

Boolean - An expression that evaluates to either true or false; used in the conditional of an if structure. (a == b evaluates to true if a and b are equal; otherwise, it evaluates to false. Similarly, a != b evaluates to true if a and b are not equal; false otherwise.)

conditional expressions - A comparison, usually in a while or if statement, that evaluates to a Boolean value of True or False

arithmetic operations - Mathematical processes that are part of most programming languages. They include addition, subtraction, multiplication, division, and modulus operators.

decidable problem - produce some predictable and correct output

undecidable problem - some computational problems cannot be solved by an algorithm.

To compare 2 values use - a rational operator

When to use a while loop - When you want something to happen as long as a condition stays true, you use a while loop.

What is it called when a loop never starts - Zero iteration condition

When is code considered an infinite loop - when it never stops

What does != do - compares for equality

What is a nested loop - loop within a loop(For step in range over for step in range. For each one time the outer loop runs the inner loop runs the set amount of times)

What are some advantages of using nested loops in a program? - Using nested loops allows you to perform a loop inside of another loop. An advantage of this is when the repetition of two tasks depend on each other. It makes it so that for every repetition of the first task, a second task within it can be repeated a number of times.

zip file - A file that is stored in a compressed format, often containing multiple files

compressed - A file that is stored in a format that makes the file size smaller to save space on the computer.

You used existing algorithms to maneuver your robot through a maze. In what ways did the algorithms help or hinder your development? - By having the existing algorithms, it made it easier as the move and turn_left method were already defined. Along with this, it made it easier to reuse the same code over once it was already used. This was useful as it allowed me to copy the same code from fist part, (especially in A-B) and then use it in the second part.  However, it hindered as the robot had no ability to turn right, making the mazes move difficult.

What are 4 reasons for buggy code? - The first reason is human error which comes from human imperfection and the fact that programs are not perfect. Others are things such as sloppy programming and untested code.

bugs - Part of a program that causes an error or undesired output.

debug - The process of figuring out why code doesn't behave as expected and eliminating bugs to make it work as desired.

sequentially - Code that executes in the order they appear in the code segment.

initialized - When a variable is given a value for the first time. Until a variable is initialized, it is undefined.

interpret  - A computer program that converts a program written in a higher-level language into a lower-level language and executes it, beginning execution before converting the entire program.

block strings - In Python, strings that begin with ''' and can span multiple lines. They are often used to temporarily deactivate code.

incremental counter - A variable that stores an integer with increasing (or decreasing) value. For example, a common incrementing counter is a variable that starts at 0 and has 1 added to, resulting in subsequent values 1, 2, 3, etc.

iteration - A repeating portion of an algorithm. Iteration repeats a specified number of times or until a given condition is met. Also used to refer to a single execution of that repetitive procedure. 

Describe the career QA - QA is quality assurance, when doing this job, a person debugs and tests software to ensure the production of a high-quality product.

Why would you want to use block strings? - Block strings allow a person to deactivate a certain part of a code, allowing only a certain part of a code to be ran. This could be useful when trying to find an error in a certain section of your program.

6 guidelines when naming variables - Six guidelines to follow when naming variables are to start variables with a letter or an underscore, only use alpha-numeric characters, don’t use Python keywords in the names, start variable names with lowercase letters, use underscores to separate words, and don’t use uppercase letters.

What can a programmer do to reduce bugs in code? - To reduce bugs in code, a programmer can do many things, such as using well-named variables, constantly testing code to see if it does what it should, and being careful while coding in order to avoid spelling mistakes, which can cause errors.

trtl.setheading() - input a number between 0-360 and sets the direction the turtle is facing