Presentation is loading. Please wait.

Presentation is loading. Please wait.

Programming Funamental slides

Similar presentations


Presentation on theme: "Programming Funamental slides"— Presentation transcript:

1 Programming Funamental slides
Control Structures Topics to cover here: Introduction to Control Structures in the algorithmic language Sequencing Sequencing in C++ language Programming Funamental slides

2 Programming Funamental slides
Control Structures In your algorithm (or program), you can use different types of statements. There are 3 categories of control structures: 1- Sequencing 2- Selection 3- Repetition Programming Funamental slides

3 Programming Funamental slides
1- Sequencing A compound statement (or a block) is a sequence of statements ordered in a way to give a solution: e.g. S1 S2 S3 is a sequence of 3 statements Programming Funamental slides

4 Programming Funamental slides
1- Sequencing (Cont.) The statements that have a sequential control: 1- INPUT statements 2- OUPUT statements 3- Assignment statement INPUT statement Use Input statement to input data into variables from the standard input device (e.g. a keyboard). Programming Funamental slides

5 Programming Funamental slides
INPUT Statement Syntax: In pseudo code In C++ INPUT List of variables cin >> identifier >> identifier ; where, List of variables contains one or more variables Example: In pseudo code In C++ INPUT x cin>>x; INPUT a, b cin>>a>>b; The semantics (execution) of this statement: You can enter the values you want for the variables in the statement from the keyboard and the computer will assign these values into the variables (stores them in memory). Programming Funamental slides

6 Programming Funamental slides
OUPUT Statement The OUTPUT statement has many uses. Use OUTPUT statement to output the following in the standard output device (EX: a screen). The values of variables stored in memory message (i.e. a string of characters). The value of an expression. Causes a new line ( Use this for output clarity) Programming Funamental slides

7 Programming Funamental slides
OUPUT Statement 1- OUTPUT the values of variables stored in memory Syntax: In pseudo code In C++ OUTPUT List of variables cout<< identifier << identifier ; where, List of variables contains one or more variables Example: In pseudo code In C++ OUTPUT x cout<<x; OUTPUT a, b cout<<a<<b; The semantics (execution) of this statement: This statement allows the computer to access the locations of the variables mentioned in the statement and displays their contents on an output device (e.g. a screen). Programming Funamental slides

8 Programming Funamental slides
OUPUT Statement 2- OUTPUT message where message may by any string of characters enclosed with double quotas. Syntax: In pseudo code In C++ OUTPUT message cout >> “message” ; Example: In pseudo code In C++ OUTPUT “Enter 3 values” cout<<“Enter 3 values”; The semantics (execution) of this statement: This statement will display the message on the screen. Programming Funamental slides

9 OUPUT Statement 3- OUTPUT expression
where expression is any arithmetic expression Syntax: In pseudo code In C++ OUTPUT expression cout >> expression; Example: In pseudo code In C++ OUTPUT OUTPUT x – y cout<< 3+6; cout<< x-y; The semantics (execution) of this statement: First, the expression is evaluated, then the result will be displayed on the screen. For the first example, it will display 9. 9

10 OUPUT Statement 4- OUTPUT a new line Syntax: In pseudo code In C++
OUTPUT endl cout << endl; 10

11 OUPUT Statement NOTE You can mix between the different types of the OUTPUT statements. Example: In pseudo code In C++ OUTPUT “Length = “ , length cout<< “length=”<<length; The semantics (execution) of this statement: This statement will display the message Length = on the screen and on the same line it will display the value of the variable length. 11

12 Assignment Statement Storing a new value in a memory location is called assignment. Syntax: In pseudo code In C++ Variable  Expression Variable = Expression Example: In pseudo code In C++ X  10 Y  X + 5 Z  y; X = 10 Y = X + 5 Z=y; The semantics (execution) of this statement: 1- The Expression on the RHS is evaluated 2- The result of the expression is assigned to the variable on the LHS 12

13 Programming Funamental slides
Assignment Statement NOTE: The right hand side (RHS) of the assignment statement should be of the same data type of the left hand side (LHS). e.g. T  true This will be correct if T is of Boolean type. 2- A  x + y * 2 This will be correct if A has a numeric data type (e.g. integer, or real) and the value of the expression on (RHS) has the same numeric data type. Programming Funamental slides

14 Assignment Operator L.H.S = R.H.S. X+ 3 = y + 4 Wrong Z = x +4 True
x +4 = Z Wrong

15 Assignment Statement (Cont.)
How to execute a statement like X  X + 1 ? Suppose we have: X  5 Then to execute X  X + 1, we proceed as follows: X X  5 X  X + 1 5 6 Programming Funamental slides

16 Assignment Statement .. cont.
Dereferencing: If we want to copy a value from one memory location (say, X) into another location (say, Y), we say that we dereference a variable. e.g. X  5 Y  10 X  Y // now X has the value 10 X Y 10 5 10 Programming Funamental slides

17 Programming Fundamentals --> Ch1. Problem solving
C++ Language Elements The general form of a C++ program // File: filename // Program description # include compiler directives void main ( ) { declarations section executable statement section } Programming Fundamentals --> Ch1. Problem solving

18 Programming Funamental slides
1- Comments in Programs In C++, the two symbols // are used to denote a program comment. If comments need more than one line, then you can use the symbols /* to begin comment and */ to end it. Programming Funamental slides 18

19 2- The include compiler directive
The line begins with #include represents a compiler directive. A compiler directive is processed at compilation time. C++ syntax: # include <filename> Programming Funamental slides 19

20 2- The include compiler directive
e.g. #include <iostream> using namespace std; iostream is the name of a C++ library header file whose contents are inserted in place of the #include line during compilation. iostream is used to manipulate input/output operations The standard I/O stream objects, cin and cout are already defined in iostream Programming Funamental slides 20

21 Programming Funamental slides
3- Declaration Section In the algorithmic language, we will use identifiers without declaring them In C++ the declaration section tells the compiler what data are needed in the program. Declarations are based on the problem data requirements identified during the problem analysis. All identifiers must be declared before they are used. Every identifier associated with a problem data element must be declared only once in the declaration section. Programming Funamental slides 21

22 Programming Funamental slides
3- Declaration Section Syntax: <type> List-of-identifiers where, type is any predefined type in C++, and List-of-identifiers is a list that contains one or more identifiers. 1- Declaring identifiers of integer type : int x ; int x, y; 2- Declaring identifiers of character type: char c1, c2 ; 3- Declaring identifiers to hold real numbers: float sum ; double total ; Programming Funamental slides 22

23 Declaration and initialization
int c=5; int n1=3, n2=7; float c1=3.5, c2; int z; z=10; In a program a variable has: Name,Type,Size,Value Programming Funamental slides 23

24 Examples on Simple Algorithms
Write an algorithm to Compute and print the summation of two numbers. First, we have to analyze the problem to understand what is the input, output of the problem, and which formula to use to solve the problem (if any). Programming Funamental slides

25 Programming Funamental slides
Example1 .. cont. 1- Analysis stage: Problem Input: - num1 - num2 Problem Output: - summation of two numbers Formula: sum=num1+num2 Programming Funamental slides

26 Programming Funamental slides
Example1 .. cont. 2- Algorithm Design We write the algorithm by using the pseudo code ALGORITHM Summation INPUT num1, num2 sum num1+ num2 OUTPUT “sum=“ ,sum END Summation Programming Funamental slides

27 Programming Funamental slides
Example1 .. cont. 3- Testing the algorithm We give a sample data to see whether the algorithm solves the problem correctly or not. To give a sample data, proceed as follows: 1- Prepare a table to contain all variables of the algorithm. 2- Give any data you like as input. 3- Calculate any formula in the algorithm using these data. 4- Show the output e.g. num1 num sum 63 The output: sum= 63 Programming Funamental slides

28 Programming Funamental slides
Flow Chart Input num1,num2 Sum = num1+ num2 Output sum Programming Funamental slides

29 Example1 on C++ Programs
//This program Compute and print the summation of two numbers #include <iostream> using namespace std; void main() { int num1, num2, sum; cout<<"Please Enter two numbers:"; cin>>num1>>num2; sum = num1 + num2; cout<<"sum="<<sum<<endl; } Programming Funamental slides

30 Examples on Simple Algorithms
Write an algorithm to determine the total cost of apples given the number of kilos of apples purchased and the cost per kilo of apples. First, we have to analyze the problem to understand what is the input, output of the problem, and which formula to use to solve the problem (if any). Programming Funamental slides

31 Programming Funamental slides
Example2 .. cont. 1- Analysis stage: Problem Input: - Quantity of apples purchased (in kilos) - Cost per kilo of apples (in dinar/fils per kilo) Problem Output: - Total cost of apples (in dinar/fils) Formula: Total cost = Number of kilos of apples × Cost per kilo Programming Funamental slides

32 Programming Funamental slides
Example2 .. cont. 2- Algorithm Design We write the algorithm by using the pseudo code ALGORITHM apples INPUT quantity, cost total_cost  quantity * cost OUTPUT “Total cost = “ , total_cost END apples Programming Funamental slides

33 Programming Funamental slides
Example2 .. cont. 3- Testing the algorithm We give a sample data to see whether the algorithm solves the problem correctly or not. To give a sample data, proceed as follows: 1- Prepare a table to contain all variables of the algorithm. 2- Give any data you like as input. 3- Calculate any formula in the algorithm using these data. 4- Show the output e.g. quantity cost total_cost 2.7 The output: Total cost = 2.7 Programming Funamental slides

34 Programming Funamental slides
Flow Chart INPUT quantity, cost total_cost  quantity * cost OUTPUT “Total cost Programming Funamental slides

35 Example2 on C++ Programs
// File: apples.cpp /*This program calculates the price of purchasing some kilos of apples */ #include <iostream> using namespace std; void main ( ) { int quantity ; float cost , total_cost ; cin >> quantity >> cost ; total_cost = quantity * cost ; cout << “Total cost = “ << total_cost << endl ; } Programming Funamental slides

36 Programming Funamental slides
Example 3 The problem statement: Write an algorithm that Compute and print the average of three numbers 1- Analysis stage: Problem Input: - n1,n2,n3 Problem Output: - average Formula: sum= n1 + n2 + n average = sum / 3 Programming Funamental slides

37 Programming Funamental slides
Example 3 .. cont. 2- Algorithm Design ALGORITHM Avg INPUT n1, n2, n3 sum n1 + n2 + n3 average  sum / 3 OUTPUT average END Avg Programming Funamental slides

38 Programming Funamental slides
Example 3 .. cont. 3- Testing the algorithm n n n sum average 9 3 The output: average= 3 Programming Funamental slides

39 Programming Funamental slides
Flow Chart Input n1,n2,n3 sum = n1+n2+n3 Average = sum / 3 Output average Programming Funamental slides

40 Example3 on C++ Programs
/*This program Compute and print the average of three numbers */ #include <iostream> using namespace std; void main() { int n1, n2, n3; float s, average; cout<<"Please Enter three integers"; cin>>n1>>n2>>n3; s = n1 + n2 + n3; average = s / 3; cout<<"\n Average = \t"<<average<<endl; } Programming Funamental slides

41 Integrated Development Environment
Programming Fundamentals --> Ch1. Problem solving

42 b2 - 2a 4c Discriminant = b*b - 4*a*c /2 *a Incorrect answer Solution
= (b*b - 4*a*c) /(2 *a) Correct answer

43 Programming Funamental slides
Examples: Q1: Given the following declarations Indicate which C++ statements below are valid and find the value of each valid statement. Also Indicate which are invalid and why. x=j / i ; y=j % i ; z=k / i ; w=k % i ; int x,y,z,w; int i = 10; int j = 15; float k = 15.0; Programming Funamental slides

44 Q2: Find the output of the following program
#include <iostream> using namespace std; main ( ) { int x ; int y ; int z ; x = 10 ; y = 20 ; z = x + y ; cout << " x = " ; cout << x ; cout << " y = " ; cout << y ; cout << " z =x + y = " ; cout << z ; }

45 Q3) Writ algorithm and c++ program to find the Area of the Ring
Area of Outer Circle

46 Problem Given a four-digit integer, separate and print the digits on the screen

47 Analysis Input: Number = 1234 Process:
Take the remainder of the above number after dividing by 10 Eg 1234 / 10 gives remainder 4 1234 % 10 = 4 Remove last digit 1234/10 = 123.4 123 (Truncation due to Integer Division) 123 %10 gives 3 123/10 = 12.3 12 (Truncation due to Integer Division) 12 % 10 gives remainder 2 12/10 = 1.2 1 (Truncation due to Integer Division) Final digit remains Output: print the digits on the screen one digit in each line

48 Code #include <iostream.h> main ( ) { int number; int digit;
cout << “Please enter a 4 digit integer : ”; cin >> number; digit = number %10; cout <<“The digit is: “ << digit << ‘\n’; // first digit; and then << ‘\n’ number = number / 10; digit = number % 10; cout <<“The digit is: “ << digit << ‘\n’; cout <<“The digit is: “ << digit; }


Download ppt "Programming Funamental slides"

Similar presentations


Ads by Google