Transcript Chapter 1
Language Basics
Chapter 1.4
What is a Program Made of?
Last lecture I said…
◦ ◦ ◦ Common elements in programming languages: ◦ Key Words Programmer-Defined Identifiers Operators Punctuation ◦ Syntax
Wow!!!
I am overwhelmed ---what does all of this mean.
Don’t worry---lets play a bit and learn a little bit about these idea with a fun tool called Scratch before we learn about C++.
Scratch
(scratch.mit.edu) Application to teach concepts of Programming that is language independent and geared for children What is it really = a visual editor where you don’t have to worry about language syntax and you can create games/animations that others can “play”.
Scratch
Preview Panel- can view current game/animation here Toolkit Panel where can get the operators of the Scratch LANGUAGE Scripting Panel- THIS IS WHERE WE CREATE OUR CODE Sprite Panel —where you make your characters in your game
Time for a Demo in class
Uses beginning project linked on our class website or see instructor.
NOTE how the language statements SNAP together like Legos --- this is like writing good Syntax in a program – only certain statements can go with others in a language.
Lets compare concepts of real programs with Scratch to really Learn what these ideas mean
We will compare the following ideas in Scratch and a real C++ program ◦ ◦ ◦ ◦ Programmer-Defined Identifiers --- variables Operators Punctuation Syntax
This is our Program we will use
Programmer-Defined Identifiers - Variables Names made up by the programmer Not part of the programming language Used to represent various things: variables (memory locations), functions, etc.
Variables in Scratch
Scratch we have character’s named Sprites -- we can define variables about them.
Variables in a Program
A variable is a named storage location in the computer’s memory for holding a piece of data.
Variables in C++ example In Program 1-1 we used three variables: ◦ The
hours
variable was used to hold the hours worked ◦ ◦ The
rate
was used to hold the pay rate variable The
pay
was used to hold the gross pay variable
Variable Definitions
To create a variable in a program you must write a variable definition (also called a variable declaration) Here is the statement from Program 1-1 that defines the variables:
double hours, rate, pay;
Variable Definitions
There are many different types of data, which you will learn about in this course.
A variable holds a specific type of data.
The variable definition specifies the type of data a variable can hold, and the variable name.
Variable Definitions
Once again, line 7 from Program 1-1:
double hours, rate, pay;
The word
double
specifies that the variables can hold double-precision floating point numbers. (You will learn more about that in Chapter 2)
Operators
Used to perform operations on data Many types of operators: ◦ Arithmetic - ex: +,-,*,/ ◦ Assignment – ex: =
Operators in Scratch
Lets look at addition in Scratch When Cat moves lets change location by +10 each time.
Operators in C++ example ( << >> = * )
Punctuation
Characters that mark the end of a statement, or that separate items in a list
Scratch – no punctuation –but end of line is visible Here each line of code has its own “shaped box”
Punctuation in C++
Commas = separate Semi-colons = end of line
Syntax
The rules of grammar that must be followed when writing a program Controls the use of key words, operators, programmer-defined symbols, and punctuation Scratch TIP: controls syntax remember by Only allowing certain commands to “SNAP” together. Here we see the “if” statement does something (turns 15 degrees) when the (distance to Sprite1 is < 20)
Example Syntax in C++
Regular statements must end with a Semi colon ---this signifies the end of the statement We will learn more of the C++ sytnax rules as we go through the class.
Procedural and Object-Oriented Programming ---- what did I mean in last lecture --- can Scratch help us?
Procedural and Object-Oriented Programming Procedural programming: focus is on the process. Procedures/functions are written to process data.
Scratch TIP: Our operations like when we are close to Sprite1 then turn 15 degrees is a procedure Object-Oriented programming: focus is on objects, which contain data and the means to manipulate the data. Messages sent to objects to perform operations.
Scratch TIP: Our Sprites we saw in Scratch are like objects