# CS in Algebra

## Unit 1 - Course A

### Lesson 1: Evaluation Blocks and Arithmetic Expressions

• Evaluate: Perform the computation in an expression, producing an answer.
• Evaluation Block: A block of code that represents the structure of an expression
• Expression: Any valid unit of code that resolves to a value.
• Function: A mathematical object that takes in some inputs and produces an output.
• Value: A specific piece of data, like 5 or "hello".

### Lesson 2: Strings and Images

• Data Type: All values in a programming language have a "type" - such as a Number, Boolean, or String - that dictates how the computer will interpret it. For example 7+5 is interpreted differently from "7"+"5"
• Image: A type of data used for graphics or pictures.
• String: Any sequence of characters between quotation marks (ex: "hello", "42", "this is a string!").

### Lesson 3: Contracts, Domain, and Range

• Contract: A statement of the name, domain, and range of a function.
• Domain: The type of data that a function expects.
• Range: The type of data that a function produces.

### Lesson 4: Writing Contracts

• Rotate: To turn a shape around a center point.
• Scale: To increase the dimensions of a shape by the same factor in all directions.
• Translate: To move a shape from one location to another.

### Lesson 5: Defining Variables and Substitution

• Define: Associate a descriptive name with a value.
• Variable: A reference to a value or expression that can be used repeatedly throughout a program.

### Lesson 6: Fast Functions

• Function: A mathematical object that takes in some inputs and produces an output.
• Independent Variable: An input variable the is controlled by the user.
• Parameter: A value or expression belonging to the domain of a function.
• Variable: A reference to a value or expression that can be used repeatedly throughout a program.

### Lesson 7: Composite Functions

• Parameter: A value or expression belonging to the domain of a function.

### Lesson 8: The Design Recipe

• Constant: A fixed number in a relationship.
• Dependent Variable: A value that changes based on an independent variable.
• Design Recipe: A systematic sequence of steps to document, test, and write functions.
• Independent Variable: An input variable the is controlled by the user.
• Purpose Statement: A brief description of what a function does.