0% found this document useful (0 votes)
0 views5 pages

c++_python

This document provides a comparison between Python and C++ syntax, focusing on basics and program flow control. It covers key elements such as the structure of a Hello World program, execution processes, comments, variable declarations, control statements, loops, and function definitions in both languages. The notes serve as a quick reference for students transitioning from Python to C++, emphasizing the differences in syntax and structure.

Uploaded by

Matthew NG
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
0 views5 pages

c++_python

This document provides a comparison between Python and C++ syntax, focusing on basics and program flow control. It covers key elements such as the structure of a Hello World program, execution processes, comments, variable declarations, control statements, loops, and function definitions in both languages. The notes serve as a quick reference for students transitioning from Python to C++, emphasizing the differences in syntax and structure.

Uploaded by

Matthew NG
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

COMP2011 Programming with C++

Syntax Comparison between Python and C++: Basics and Program Flow Control
The purpose of this set of notes is to help you quickly transfer your basic knowledge of Python to that of C++. Please
note that it is not a complete summary of our lecture notes. For all the C++ features discussed in COMP2011, you have
to carefully study the lecture notes on our course website.

In Python In C++

Hello World Program

""" /*
File: hello_world.py * File: hello_world.cpp
A common program used to demo a new language * A common program used to demo a new language
""" */
print("Hello World!") #include <iostream>
using namespace std;
int main()
{
cout << "Hello World!" << endl;
return 0;
}

Note: Every C++ program must have exactly one main()


function which is the entry point of the program.

Executing a Python program Executing a C++ program


1. execute the program: 1. compile the program:
python hello world.py g++ -o hello world.out hello world.cpp

2. execute the program:


hello world.out

Basic Output
To print the word “abc” with a newline character: To print the word “abc” with a newline character:
print("abc") cout << "abc" << endl;

Or, where endl means “end of the line”.


Or ,
print("abc", end = "\n")
cout << "abc\n";

Comments
• for one or more lines of comments: • for one or more lines of comments:
""" ... """ /* ... */

• for one line of comment only: • for one line of comment only:
# ... // ...

Including a module/library
import random #include <iostream>

1
Statements
• A statement is a line of code. • Each statement ends in a semicolon “;”

• Only extra blanks and tabs are ignored. • Extra blanks, tabs, lines are ignored.
• If the line of the statement is too long, one may break • More than one statement can be on one line.
it into several lines using “\”.
• A statement may be spread over several lines.
For example:
For example:
print("Hello", \
" world") cout << "Hello" <<
print("!") " world" << endl; cout << "!" << endl;

Variables
• Basic Data Types: • Basic Data Types:
– Integer: – Integer: short, int, long, long long, etc.
Examples of values: 0, 1, 100, -101, ... Examples of values: 0, 1, 100, -101, ...
– Floating point: – Floating point: float, double, long double, etc.
Examples of values: 0.5, -123.908232 Examples of values: 0.5, -123.908232
– String: – Character: char
Examples of values: "A", 'abc', "comp 2011", ... Examples of values: 'A', 'a', 'B', 'b', ...
– Boolean: – Boolean: bool
Examples of values: True, False Examples of values: true, false
• Variables need not be declared and their data types are • Variables have to be declared and defined.
inferred from the assignments. For examples:
For examples:
int num1;
num1 = 100 # integer data type num1 = 100;
num2 = 0.05 # float data type double num2 = 0.05;

if Statement

if (<bool-expr>) : if (<bool-expr>) <stmt>


<stmt>
if (<bool-expr>) : if (<bool-expr>) { <stmt(s)> }
<stmt(s)>
if (<bool-expr>) : if (<bool-expr>) <stmt> else <stmt>
<stmt>
else :
<stmt>
if (<bool-expr>) : if (<bool-expr>) { <stmt(s)> } else { <stmt(s)> }
<stmt(s)>
else :
<stmt(s)>
if (<bool-expr>) : if (<bool-expr>)
<stmt(s)> {
elif (<bool-expr>) : <stmt(s)>
<stmt(s)> } else if (<bool-expr>) {
<stmt(s)>
}
if (<bool-expr>) : if (<bool-expr>)
<stmt(s)> {
elif (<bool-expr>) : <stmt(s)>
<stmt(s)> } else if (<bool-expr>) {
else : <stmt(s)>
<stmt(s)> } else {
<stmt(s)>
}

2
Note: Blocks are identified by having the same inden- Note: Blocks are identified by pairs of braces ({}).
tation. For example:
For example:
int x = -5;
x = -5 if (x > 0)
if x > 0 : {
print("x is positive", end="") cout << "x is positive";
if x % 2 : if (x % 2)
print(" and odd.") cout << " and odd." << endl;
else : else
print(" and even.") cout << " and even." << endl;
elif (x < 0) and (x % 2) : } else if ((x < 0) && (x % 2)) {
print("x is negative and odd.") cout << "x is negative and odd." << endl;
elif (x < 0) and (not (x % 2)) : } else if ((x < 0) && !(x % 2)) {
print("x is negative and even.") cout << "x is negative and even." << endl;
else : } else {
print("x is zero.") cout << "x is zero." << endl;
}

if-else Operator
In C++, there are if-else expressions. The syntax is:
<condition> ? <result1> : <result2>
It means that if <condition> is true, the expression’s value
will be <result1>, otherwise it will be <result2>.
For example:
int x = 2, y = 3;
int z = (x > y) ? x : y;
cout << z << endl;
// the output will be 3

while Loop
while (<bool-expr>) : while (<bool-expr>)
<stmt(s)> <stmt>

Note: Blocks are identified by having the same indentation. while (<bool-expr>)
{
<stmt(s)>
}

do (<bool-expr>)
<stmt>

do
{
<stmt(s)>
} while (<bool-expr>);

Note: Blocks are identified by pairs of braces ({}).

For example: For example:


i = 10 int i = 10;
while i > 0: while (i > 0)
i = i - 2 {
print(i) i -= 2;
cout << i << endl;
}

3
for Loop
for <item> in <a list of item> : for (<for-initialization>; <bool-exp>;
<stmt(s)> <post-processing>) { <stmt(s)> }

For example: For example:

for i in range(10): for (int i = 0; i < 10; i++)


print(i) cout << i << endl;

break and continue


In a for loop, break means to stop the whole loop; while the same.
continue means to skip the current execution.

Functions
A Python function need not specify the parameter types and A C++ function has to specify the parameter types and re-
return types. turn types.
For example, For example,

""" File: function_example.py /* File: function_example.cpp


A Python Program with two functions: A C++ Program with two functions:
PrintNum() and AddOne() PrintNum() and AddOne()
""" */
def PrintNum(num): #include <iostream>
print("The number is", num) using namespace std;

def AddOne(num): void PrintNum(int num)


return (num + 1) {
cout << "The number is " << num << endl;
PrintNum(10) }
PrintNum(AddOne(10))
int AddOne(int num)
{
return (num + 1);
}

int main()
{
PrintNum(10);
PrintNum(AddOne(10));
return 0;
}

4
Some Operators in Python and C++

Python C++
Symbol Example Output Symbol Example Output
Addition + 1 + 2 3 Same
Subtraction - 1 - 2 -1 Same
Arithmetic Multiplication * 1 * 2 2 Same
Operators Division / 1 / 2 0.5 / 1.0 / 2 0.5
Integer Division // 1 // 2 0 / 1 / 2 0
Modulus (Remainder) % 9%4 1 Same
Power ** 2 ** 3 8 Nil
Assignment = x = y Same
Assignment Addition Assignment += x += y Same
Operators Subtraction -= x -= y Same
Assignment
Multiplication *= x *= y Same
Assignment
Division /= x /= y Same
Assignment
Relational And and True and False False && true && false false
Operators Or or True or False True || true || false true
Not not not False True ! !false true
Comparison Larger than > 20 > 10 True Same
Operators Larger than or >= 20 >= 10 True Same
equal to
Smaller than < 20 < 10 False Same
Smaller than or <= 20 <= 10 False Same
equal to
Equal to == 20 == 10 False Same
Not equal to != 20 != 10 True != 20 != 10 true
Post-increment Nil ++ x = 1; y = 2; 2 1
y = x++;
cout << x <<
Increment " " << y;
Operators Pre-increment Nil ++ x = 1; y = 2; 2 2
y = ++x;
cout << x <<
" " << y;
Post-decrement Nil -- x = 1; y = 2; 0 1
y = x--;
cout << x <<
Decrement " " << y;
Operators Pre-decrement Nil -- x = 1; y = 2; 0 0
y = --x;
cout << x <<
" " << y;

References:

1. Cay Horstmann. (2012). C++ For Everyone. Second Edition. Wiley.

You might also like