Introduction to C Computer Science Quote Language is
- Slides: 79
Introduction to C++ Computer Science
Quote. . . “Language is the only instrument of science…. ” Samuel Johnson
Q: What is C++ is a compiled, object-oriented language It is the “successor” to C, a procedural language (the “++” is called the successor operator in C++) C was derived from a language called B which was in turn derived from BCPL C was developed in the 1970’s by Dennis Ritchie of AT&T Bell Labs C++ was developed in the early 1980’s by Bjarne Stroustrup of AT&T Bell Labs. Most of C is a subset of C++
People & Programs User: an individual who runs, or executes, a program Programmer: an individual who creates, or writes, a program
C++ Program Consists of… Declarations Define the use of various identifiers, thus creating the elements used by the program (computer) Statements Or executable statements, representing actions the computer will take on the user’s behalf
Identifiers Names for various entities used in a program; used for. . . Variables: values that can change frequently Constants: values that never changes Functions: programming units that represents complex operations Parameters: values that change infrequently
Simple C++ Program #include <iostream. h> int main() { // Declarations // Statements return 0; } Compiler directive: Tells the compiler what to do before compiling This one includes source code from another file
Simple C++ Program #include <iostream. h> int main() { // Declarations // Statements return 0; } Main function
Simple C++ Program #include <iostream. h> int main() { // Declarations // Statements return 0; } Header for main function States… data type for the return value identifier for function list of arguments between parenthesis (none for this function)
Simple C++ Program #include <iostream. h> int main() { // Declarations // Statements return 0; } Braces enclose the body of the function They represent the start and end of the function
Simple C++ Program #include <iostream. h> int main() { // Declarations // Statements return 0; } Declarations and statements Main body of function (or main part) “//” represents the start of a comment
Simple C++ Program #include <iostream. h> int main() { // Declarations // Statements return 0; } Return statement specifies the value the function returns All (almost) declarations and statements end with a semi-colon “; ”
Simple C++ Program #include <iostream. h> int main() { // Declarations // Statements return 0; } This program doesn’t do anything !
Sample C++ Program #include <iostream. h> void main() { int number; cout << “Enter a number” << endl; cin >> number; cout << “You entered: “ << number << endl; } Variable declaration The identifier number is declared as being of data type int, or integer
Sample C++ Program #include <iostream. h> void main() { int number; cout << “Enter a number” << endl; cin >> number; cout << “You entered: “ << number << endl; } cout the output statement for C++ Note the direction of “<<“ endl represents an end-of-line
Sample C++ Program #include <iostream. h> void main() { int number; cout << “Enter a number” << endl; cin >> number; cout << “You entered: “ << number << endl; } cin the input statement for C++ Note the direction of “>>”
Sample C++ Program #include <iostream. h> void main() { int number; cout << “Enter a number” << endl; cin >> number; cout << “You entered: “ << number << endl; } Did you copy this down? You had better, since this will be the first program you’ll try!
Sample C++ Program #include <iostream. h> void main() { int number; cout << “Enter a number” << endl; cin >> number; cout << “You entered: “ << number << endl; } That mea ns right now!
Assignment is an operation that assigns the value of an expression to a variable Ex. Total = 2 + 3 + 5 First, the expresssion “ 2 + 3 + 5” is evaluated Then, this value is assigned to the variable “Total”
Assignment When a variable is declared, space is allocated in the computer’s memory for the variable Each data type requires a different number of bytes in memory for storing a variable int - 2 float - 4 double - 8 char, bool - 1
Assignment When a variable is assigned a value, the value is placed into the variable’s memory location Total 10 Total = 2 + 3 + 5;
Arithmetic Operations Addition: Subtraction: Multiplication: Division: 2 + 3 5 - 2 10 * 4 12 / 3
Order of Operations Arithmetic expressions are evaluated according to the following order of operations At each level, operations are evaluated left to right (1) Parenthesis, Functions (2) Multiplication, Division (3) Addition, Subtraction
Parenthesis are used to alter the order with which operations are evaluated Ex. 4 + 5 * 2 equals 14 (4 + 5) * 2 equals 18
Here we go! Problem: To determine the average of three numbers Task: Request, from the user, three numbers, compute the average and the three numbers, and print out the original values and the computed average Do it! You have 20 minutes!
Computer Science I Functions
Q: What is a function? A programming unit Similar to mathematical functions Example: f(x) = x 2 + 5 x + 7 For x = 2, f(2) = (2)2 =5(2) + 7 = 21
Q: What is a function? It has. . . . arguments . . . a name (identifier) . . . a value it returns . . . a body int foo(int x) { int result; result = x*x + 5*x + 7; return result; }
Procedural Abstraction Think “Black Box” ! When using a function, you only need to be concerned with what it does, not how it does it When writing a function, you need to be concerned with the how
Example: Cube it! int cube. It(int x) { int result; result = x*x*x; return result; } int cube. It(int x) { int result; result = x*result; return result; }
Computer Science I Decision Statements
Q: What is a decision? Something that represents a branching point in a solution Outcomes are often dependent on initial conditions
Decisions in Programs Without decision statements (or other dynamic control structures), programs are static Static programs do exactly the same things each time they are executed Dynamic programs do not
Boolean Algebra Based on values that are either True or False True and False values are often represented by 1’s and 0’s, respectively
Logical Operations: And A B Expression is True iff A and B are both true
Logical Operations: Or A B Expression is True if either A or B are True Note: Also True when A and B are both True
Logical Operations: Exercises A = True, B = True, C = False 1. A B 2. A C 3. A B C 4. (A B) (A C)
Relational Operations A A A B <B >B =B B “A “A “A less than B” greater than B” equal to B” less than or equal to B” not greater than B” greater than or equal to B” not less than B” not equal to B” less than or greater than B”
Relational Operations: Exercises A = 5, B = 3, C = -7 1. A < B 2. A C 3. (A < C) (B < C)
Boolean Operations: C++ A B A<B A>B A=B A B A B A A A A && B ||B <B >B ==B >=B <>B
Try this! Problem: You’d like to go see a movie. The movie costs $8. 00, a soda costs $2. 50 and a large popcorn costs $4. 50. Based on the amount of money in your pocket, determine whether you could. . . (a) See the movie and buy a soda, (b) See the movie, and buy soda and popcorn, or (c) Stay home
Know? Movie costs $8. 00 Soda costs $2. 50 Popcorn costs $4. 50 How much money I have in my pocket
Need? Cost of movie and soda Cost of movie, soda and popcorn Way to select one of the three options (that is, make a decision!)
Do? Option (a) costs $10. 50 Option (b) costs $15. 00 Option (c) costs nothing What next?
How would I write this? First, we need to decide how to organize our solution Should we “hard code” the costs of the movie, soda and popcorn into the algorithm? Should we input these values? Let’s take another look at that problem!
How would I write this? The problem statement tells us the individual costs So, let’s assume they’re fixed or constant No need to ask the user for them Problem: You’d like to go see a movie. The movie costs $8. 00, a soda costs $2. 50 and a large popcorn costs $4. 50. Based on the amount of money in your pocket, determine whether you could. . . (a) See the movie and buy a soda, (b) See the movie, and buy soda and popcorn, or (c) Stay home
How would I write this? Another question: Should we pre-compute the cost of each option? Or, should we let the program do this? Since we’ve already stated that the item costs are fixed, it would seem logical to precompute the cost of each option Movie: $8. 00 Movie & soda: $10. 50 All three: $15. 00
How would I write this? Next, we need to make sure we have a complete algorithm Input Money If (Money < $10. 50) then Display “Stay home. ” else If (Money < $15. 00) then Display “Go to a movie; buy a soda. ” else Display “Go to a movie; buy a soda and popcorn. ” Almost done!
How would I write this? Determine how we wish to organize our program Do we want one function? Or, should we create a few functions? Let’s two functions: One to input Money from the user And a second to determine the outcome
How would I write this? Here’s the prototypes for the functions int get. Money() void show. Results(int my. Money)
Program Okay, now we get to use our algorithm and program design to create a program Well, what are you waiting for? Do It!!!
Multiway Branching If statements can be used for multiway branching That is, choosing one of n mutually exclusive outcomes But what about n outcomes that are not totally unique?
Multiway Branching Consider the following problem: Each year, a local middle school requires students to purchase supplies based on their grade level. 6 th graders need pencils and five notebooks. 7 th graders also need a calculator. 8 th graders add to this a 3 -ring binder with loose leaf paper.
Multiway Branching We could use a nested If statement to handle this, but there is an alternative Whenever we need to represent a decision step, with n possible outcomes, where the outcomes form subsets of each other, and/or the outcomes are chosen based upon unique scalar values for a control expression, we can use a Case (switch) structure
Multiway Branching Case When Grade = 8 th 3 -ring binder loose leaf paper When Grade = 7 th calculator When Grade = 6 th pencils 5 notebooks
Multiway Branching In C++. . . switch (grade){ case 8: cout << “ 3 -ring binder, loose leaf, “; case 7: cout << “calculator, “; case 6: cout << “ 5 notebooks, & pencils. ” << endl; } When the switch is encountered, control jumps to the matching case statement and continues until either a break is found or the end of the switch
Multiway Branching Here’s an example with a few break’s cout << “Your lunch period comes “; switch (grade) { case 8: cout << “first. ” << endl; break; case 7: cout << “second. ” << endl; break; case 6: cout << “third. ” << endl; } No final break
Computer Science I Loops
Q: What is a Loop? A control structure that allows for a sequence of steps to be repeated a certain number of times This sequence of steps is called the body of the loop
Q: What is a Loop? There are three basic loop structures in programming: For While Repeat
While loop Look familiar? Condition T Body F What if you added a change step to the end of the body?
For loop Condition T Body F
While loop Condition T Body F A while loop is a control structure where the body is repeated as long as the condition is true
While loop Condition T Body F When the condition is false, the body is bypassed, and flow continues with the next part of the algorithm
Example: Sequential search (k<size) ( found) T F k 0 found False while (k<size) ( found) do if A[k] = target then found True else k = k + 1
Example: Sequential search (k<size) ( found) T F k = 0; found = False; while ((k<size) && (!found)) if (A[k] == target) found = True; else k = k + 1; if A[k] = target then found True else k = k + 1
Computer Science I Arrays
Q: What is an array? An array is a data structure consisting of one or more indexed members An array is like a row of mailboxes at the post office Each box is numbered in sequence (indices), and … Each box contains the same type of stuff (datatype)
An array could be drawn like … g d a f c z l 0 1 2 3 4 5 6
An array could be drawn like … g d a f c z l 0 1 2 3 4 5 6 Each box is numbered in sequence
An array could be drawn like … Each box has the same datatype g d a f c z l 0 1 2 3 4 5 6
An array is declared by … int X[10]; Where int is the common datatype for all elements in the array, X is the name of the array (identifier), and … 10 is the size of the array, or how many elements are in the array Indices for a C++ array always begin with 0
Example: Student Grades // Declare array double st. Grades[7]; : // Assign value to array element st. Grades[5] = 87; : // Display array element cout << st. Grades[3] << endl;
Problem: Create a program that will ask the user for three (3) numbers, determine the average, and then display the original numbers and the average Hint: You might wish to use a loop as well as an array!
Computer Science I Strings
What is a string? A string is a sequence of characters Example: nc 9*h. NB 98 B&^v*&G Blank spaces are characters Each character requires one byte of storage in memory Each character is represented by a one byte character code, usually an ASCII code
Strings A literal is a string bounded by quotation marks Example: “nc 9*h. NB 98 B&^v*&G” Notice the blanks spaces in the sequence - they are characters!
Strings In C++, we declare string variables as follows char string_identifier[length]; string_identifier is the name of the string variable length represents the length of the string, or how many characters are in the sequence
Strings Example: void main() { char name[24]; cout << “Enter your name: “; cin >> name; cout << “Your name is “ << name << endl; }
- How to quote a quote apa
- Dialogue quote vs flow quote
- Dialogue quote vs flow quote
- Dialogue quote vs flow quote
- Ap style quotes and punctuation
- My favorite subject in school is science
- Science fusion online
- Introduction to computer science midterm exam
- Introduction to computer science midterm exam test
- C++ code
- Python programming an introduction to computer science
- Quote analysis starters
- Natural vs social science
- What are the main branches of natural science
- Natural and physical science
- Applied science vs pure science
- Rapid change
- Rule of 70 population growth
- Windcube lidar
- Hard science and soft science
- Iamis structures
- Phoenix online computer science university
- How many fields in computer science
- Procedural abstraction definition
- Unsolved cs problems
- Bridgeport engineering department
- University of bridgeport engineering
- Sequencing ap computer science principles
- Ucl computer science faculty
- Ucl careers service
- Casting computer science
- Only one student failed in mathematics fol
- Computer science illuminated (doc or html) file
- Himpunan logika informatika
- Computer science yonsei university
- Sat in computer science
- Ib computer science topic 6
- Data representation computer science
- Apcsa recursion
- Recurrence relation computer science
- Pda in computer science
- Anticipating misuse computer science
- Ocr gcse computer science algorithm questions
- Electrical engineering northwestern
- Parse computer science
- Undecidable problems in computer science
- Otterbein computer science
- What is iteration in computer science
- Henri bal
- Computer science polymorphism
- Heuristic
- Best fs algorithm
- Graph theory computer science
- Mch fsu
- Computer science input and output
- Computer science experiments
- A level computer science exemplar candidate work
- Elevens lab ap computer science
- Wpi ece courses
- Software engineering
- Edexcel igcse computer science
- Computer science department rutgers
- Parse computer science
- The definition of computer science
- What is ib computer science
- Parameter computer science
- File handling computer science
- Cryptography computer science
- Chomsky hierarchy computer science
- Haiku rules
- Domains of computer science
- Computer science flowchart symbols
- Iteration definition computer science
- Difference between ba and bs in computer science
- Kstate computer science
- Ib computer science topic 1 questions
- How many fields in computer science
- Computational thinking flowchart
- Basic concepts of computer science
- Algorithm definition computer science