# Calculator in command line using python programming language

University of the People Python fundamental

# Chapter 5

Conditionals and recursion
The main topic of this chapter is the if statement, which executes different code depending
on the state of the program. But first I want to introduce two new operators: floor division
and modulus.
5.1 Floor division and modulus
The floor division operator, //, divides two numbers and rounds down to an integer. For
example, suppose the run time of a movie is 105 minutes. You might want to know how
long that is in hours. Conventional division returns a floating-point number:

minutes = 105
minutes / 60
1.75
But we don’t normally write hours with decimal points. Floor division returns the intege
To get the remainder, you could subtract off one hour in minutes:
remainder = minutes – hours * 60
remainder
45
An alternative is to use the modulus operator, %, which divides two numbers and returns
the remainder.
remainder = minutes % 60
remainder
45
The modulus operator is more useful than it seems. For example, you can check whether
one number is divisible by another—if x % y is zero, then x is divisible by y

If you are using Python 2, division works differently. The division operator, /, performs
floor division if both operands are integers, and floating-point division if either operand is
a float.

# 5.2 Boolean expressions

A boolean expression is an expression that is either true or false. The following examples
use the operator ==, which compares two operands and produces True if they are equal
and False otherwise:

5 == 5
True
5 == 6
False
True and False are special values that belong to the type bool; they are not strings:
type(True)
<class ‘bool’>
type(False)
<class ‘bool’>
The == operator is one of the relational operators; the others are:
x != y # x is not equal to y
x > y # x is greater than y
x < y # x is less than y
x >= y # x is greater than or equal to y
x <= y # x is less than or equal to y
Although these operations are probably familiar to you, the Python symbols are different
from the mathematical symbols. A common error is to use a single equal sign (=) instead of
a double equal sign (==). Remember that = is an assignment operator and == is a relational
operator. There is no such thing as =< or =>.

# 5.3 Logical operators

There are three logical operators: and, or, and not. The semantics (meaning) of these
operators is similar to their meaning in English. For example, x > 0 and x < 10 is true
only if x is greater than 0 and less than 10.
n%2 == 0 or n%3 == 0 is true if either or both of the conditions is true, that is, if the number
is divisible by 2 or 3.

View Github