C-and-C++/C2/Relational-Operators/English
Title of script:Advanced Operators in C and C++
Author: Ritwik Joshi
Keywords: Relational Operators, Video Tutorial
|
|
Slide 1 | Welcome to the spoken tutorial on Relational Operators in C and C++. |
Slide 2
|
In this tutorial, we will learn about:
Relational operators like Less than: eg. a < b Greater than: eg. a > b Less than or equal to: eg. a <= b Greater than or equal to: eg. a >= b Equal to: eg. a == b Not equal to: eg. a != b |
Slide 3
|
To record this tutorial, I am using:
Ubuntu 11.10 as the operating system and gcc and g++ Compiler version 4.6.1 in Ubuntu. |
Now I will demonstrate the use of these operators using a C program. | |
Slide 4
0 when False 1 when True |
Let us begin with an introduction.
Relational operators are used to compare integer and floating point numbers. Expressions using relational operators return 0 for false and 1 for true. Return values: 0 when False 1 when True |
Now I will demonstrate the relational operators with the help of a C program. | |
Switch to relational.c in gedit | I have already made the program.
So, I'll open the editor and explain the code. |
Highlight
|
First, we declare two variables a and b. |
Highlight
|
This printf statement prompts the user to enter the values of a and b.
|
Highlight
|
This scanf statement takes input for the variables a and b. |
Highlight
|
Now we have the greater than operator.
This operator compares the two operands on either side of the operator. It returns true if a is greater than b. |
Highlight
|
This printf statement is executed if the above condition is true.
If the above condition is false then this printf statement is skipped. The control then jumps to the next statement. |
Highlight
|
We now have the less than operator.
This too compares the operands. It returns true when a is less than b. |
Highlight
|
This printf statement is executed if the above condition is true.
It is skipped otherwise. |
Type
/* */ |
Let's execute the code till here.
First comment out these lines. Type /* */ |
Click on Save. | Click on Save.
I have saved my file as relational.c |
press Ctrl, Alt and T keys simultaneously. | Open the terminal window by pressing Ctrl, Alt and T keys simultaneously. |
Type
gcc relational.c -o rel Type ./rel |
To compile, type the following on the terminal
gcc relational.c -o rel Press Enter. To execute the code, type ./rel Press Enter. |
Highlight
8 is greater than 3. |
Enter the values of a and b
I enter a as 8 and b as 3. The output is: 8 is greater than 3. You can try executing this code with different values of a and b. |
Delete
/* Retype /* |
Coming back to rest of the code.
Let us now remove the comment from here. I'll put the comment here. |
Highlight
|
Now we have the less than or equal to operator.
This operator compares the two operands on either side of the operator. It returns true if a is less than or equal to b. |
Highlight
|
This printf statement is executed if the above condition is true.
If the above condition is false then it is skipped. The control then jumps to the next statement. |
Highlight
|
Next comes the greater than or equal to operator.
It compares a and b and returns true if a is greater than or equal to b. |
Highlight
|
If the condition is true then this printf statement will be executed. |
Click on Save. | Now let's execute the code till here.
Click on Save. Switch back to the terminal. Compile and execute as before. |
Highlight
|
Enter the values of a and b
I enter a as 8 and b as 3. The output is displayed: 8 is greater than or equal to 3 |
Delete
/* */ |
Coming back to rest of the code.
Delete the multiline comments. |
Highlight
|
Now we have the equal to operator.
It is denoted by double equal (==) signs. This operator returns true when both operands are equal to one another. |
Highlight
|
This printf statement executes when a is equal to b.
If not, the control then jumps on to the next statement. |
Highlight
|
Similarly, we have the not equal to operator.
This operator returns true when the operands are not equal to one another. |
Highlight
|
This printf statment will execute when a is not equal to b. |
Highlight
return 0; } |
Coming to the end of the program.
Return 0; |
Click on Save. | Click on Save. |
Switch back to the terminal. | Switch back to the terminal.
Compile and execute as before. |
Highlight
|
Enter the values of a and b
Enter a as 8 and b as 3. The output is displayed on the screen: 8 is greater than 3 8 is greater than or equal to 3 8 is not equal to 3 So, we see how the relational operaotors work. Try executing this code with different set of inputs. |
Now, writing a smilar program in C++ is quite easy.
There are a few differences in the syntax. I have already made the code in C++. | |
Switch to relational.cpp
#include <iostream> using namespace std; int main() { int a, b; cout <<"Enter the values of a and b \n"; cin >>a >>b; if(a > b) cout <<a <<" is greater than " <<b <<"\n"; else if(a < b) cout <<a <<" is less than " <<b <<"\n"; if(a <= b) cout <<a <<" is less than or equal to " <<b <<"\n"; if(a >= b) cout <<a <<" is greater than or equal to " <<b <<"\n"; if(a == b) cout <<a <<" is equal to " <<b <<"\n"; else if (a != b) cout <<a <<" is not equal to "<< b <<" \n"; return 0; } |
Here is the code for relational operators in C++. |
Highlight
#include<iostream>
|
Notice that the header is different.
Also we have the using statement here. The output statement in C++ is cout. And the input statement in C++ is cin. So, apart from these differences, the two codes are very similar. |
Click on save.
Please make sure the file is saved with the extension .cpp I have saved my file as relational.cpp | |
Type
|
Let's compile the code.
Open the terminal and type g++ relational.cpp -o rel1 Let's execute this code and see what results we get. Type ./ rel1 |
Enter the values of a and b
I enter a as 8 and b as 3. The output is displayed: 8 is greater than 3 8 is greater than or equal to 3 8 is not equal to 3
| |
Now let us see an error which we can come across.
Come back to our program | |
Suppose here we replace the double equal to sign with the single equal to. | |
Click on Save.
Come back to out terminal. Compile and execute as before. | |
Here we see it is showing 3 is equal to 3.
Come back to our program This is because here we have an assignment operator. So value of b is assigned to a. | |
Let us fix the error.
Type an equal to sign. Click on Save | |
Switch back to our terminal
Let us compile and execute as before. The output is now correct. | |
Summary | Let's summarize the tutorial.
In this tutorial, we learnt Relational operators like Less than: eg. a <b Greater than: eg. a>b Less than or equal to: eg. a<=b Greater than or equal to: eg. a>=b Equal to: eg. a==b Not equal to: eg. a!=b |
Assignment: | As an assignment
Write a program that takes the marks of three students as input. Compare the marks to see which student has scored the highest. Check also if two or more students have scored equal marks. |
Slide 5
About the Spoken Tutorial Project
|
* Watch the video available at the following link
|
Slide 6
Spoken Tutorial Workshops The Spoken Tutorial Project Team
|
The Spoken Tutorial Project Team
|
Slide 7
Acknowledgement
|
Spoken Tutorial Project is a part of the Talk to a Teacher project
|
Remain on previous slide
No slide for this part |
This is Ritwik Joshi from IIT Bombay.
Thank you for joining. |