At the most basic level, computers only use numbers. Even in high-level language applications, there are many numbers and operations with them. But knowing basic arithmetic is enough for now, and that's where we'll start.
For example, to add two numbers in math, we write: 3 + 4
. The same goes for programming. Here's a program that adds up two numbers:
3 + 4
Arithmetic in programming is virtually the same as in school arithmetic.
The code 3 + 4
will make the interpreter add the numbers and find the result. This program will work, but it makes no sense. In fact, we're not really giving the interpreter a command, we're just saying “oi, what's three plus four?” In real life, you need to do more than just tell the interpreter about the mathematical expression on its own.
For example, if you're creating an online store, you can't just ask the interpreter to calculate the cost of items in the shopping cart. You have to ask it to calculate the cost И show the price to the buyer.
We need to ask the interpreter to calculate 3 + 4
AND give it an order to do something with the result. For example, print it:
# First, the amount is calculated,
# it's then passed to the print function
print(3 + 4)
After launching, the result will appear on the screen:
7
In addition to addition, the following operations are available:
-
— subtraction*
— multiplication**
— exponentiation (e.g. 2 to the power of 4, 2^4)/
— division//
— integer division%
— modulus operationNow let's print the result of division and then the result of exponentiation:
print(8 / 2) # => 4.0 (Dividing two numbers produces the float data type)
print(3 ** 2) # => 9
Sometimes, for convenience, we'll show in the result of running lines of code in the comments like this: => RESULT
. For example, # => 4
.
The first instruction will display 4
(because 8 / 2 equals 4), and the second instruction will display 9 (because 32 equals 9).
Print the result of dividing 81
by 9
.
Always indent arithmetic operators with spaces between the numbers (operands) – it's good form when programming. Therefore, in our examples, we have print(3 + 4)
rather than print(3+4)
.
Division by zero generates an error.
If you've reached a deadlock it's time to ask your question in the «Discussions». How ask a question correctly:
Tests are designed so that they test the solution in different ways and against different data. Often the solution works with one kind of input data but doesn't work with others. Check the «Tests» tab to figure this out, you can find hints at the error output.
It's fine. 🙆 One task in programming can be solved in many different ways. If your code passed all tests, it complies with the task conditions.
In some rare cases, the solution may be adjusted to the tests, but this can be seen immediately.
It's hard to make educational materials that will suit everyone. We do our best but there is always something to improve. If you see a material that is not clear to you, describe the problem in “Discussions”. It will be great if you'll write unclear points in the question form. Usually, we need a few days for corrections.
By the way, you can participate in courses improvement. There is a link below to the lessons course code which you can edit right in your browser.
Your exercise will be checked with these tests:
1from hexlet.test import expect_output
2
3
4def test(capsys):
5 expected = '9.0'
6 expect_output(capsys, expected)
7
Teacher's solution will be available in: