Статья Автор: Александр Ф. Алейников

2.4.1 работа с целыми числами

Тема урока: работа с целыми числами

  1. Целочисленный тип данных
  2. Преобразование строки к целому числу
  3. Операции над целыми числами
  4. Частые ошибки
  5. Решение задач

Аннотация. Урок посвящен изучению работы с целыми числами. Изучим основные операции, а также научимся преобразовывать строки в числа.

Целые числа

Все предыдущие программы, которые мы писали, работали со строковыми данными. Действительно, команда input() считывает строку текста. Однако во многих случаях нам нужно работать именно с числами. Чтобы в Python создать переменную целого типа данных, нужно опустить кавычки при объявлении переменной. Рассмотрим следующий код:

num1 = 7                # num1 - это число
num2 = 10               # num2 - это число
num3 = num1 + num2      # num3 - это число

print(num3)

В результате выполнения такой программы будет выведено число 17.

   Запомни: числа обозначаются без кавычек, а строки — с кавычками.

Основные операции с числами

В языке Python, как и в математике, над числами можно совершать 4 основные операции (+, -, *, /).

  Оператор   Описание
+ сложение
- вычитание
* умножение
/ деление

Приведённый ниже код:

a = 3
b = 2

print(a + b)
print(a - b)
print(a * b)
print(a / b)

выводит:

5
1
6
1.5

Порядок выполнения операций

В математике существует порядок выполнения операций, определяющий, какие операции должны выполняться раньше других, даже если в выражении они написаны правее. Порядок выполнения операций в Python аналогичен порядку выполнения операций, которые вы изучали на уроках математики.

Приведённый ниже код:

num1 = 2 + 3 * 4
num2 = (2 + 3) * 4

print(num1)
print(num2)

выводит:

14
20

В переменной num1 будет храниться число 14, поскольку первым делом выполняется умножение, а уже затем сложение. В переменной num2 будет храниться число 20, поскольку скобки изменили приоритет выполнения операций.

Запомни: первым делом выполняется умножение или деление, затем сложение и вычитание. Для изменения порядка выполнения операций понадобятся скобки.

Преобразование типов

Преобразование строки к целому числу

Для того чтобы преобразовать строку к целому числу, мы используем команду int().

Приведенный ниже код:

s = '1992'
year = int(s)
print(year)

выводит:

1992

Переменная s имеет строковый тип данных. С помощью команды int() мы преобразовали строку к целому числу и записали результат в переменную с именем year. Мы используем новую команду (точнее, функцию) – int(). Она означает следующее: "Возьми то, что указано в качестве аргумента в скобках, и преврати это в целое число". Таким образом, переменная year имеет целый тип данных, а переменная s – строковый тип данных.

Теперь попробуем написать программу, которая считывает два целых числа и выводит на экран их сумму:

num1 = input()
num2 = input()

print(num1 + num2)

Приведенный выше код не дает нам желаемого результат, потому что Python считает, что в переменных num1 и num2 находится текст (строковый тип данных). Так происходит, поскольку команда input() по умолчанию считывает именно текст. Для того чтобы явно указать, что требуется работать с переменными целого типа, надо написать так:

num1 = int(input())
num2 = int(input())

print(num1 + num2)

Запомни: для того чтобы считать одно целое число, мы пишем следующий код:

num = int(input())

Преобразование целого числа к строке

Для того чтобы преобразовать целое число в строку, мы используем команду str(). Рассмотрим следующий код:

num = 17
s = str(num)         # теперь s содержит строку '17'

Переменная num имеет целый тип данных. С помощью команды str() мы преобразовали целое число в строку и записали результат в переменную s. Таким образом, переменная num имеет целочисленный тип данных, а переменная s – строковый тип данных.

Примечания

Примечание 1. При работе с целочисленными переменными часто нужно осуществлять присвоение значению переменной целой математической формулы:

<имя переменной> = <математическая формула>

Примечание 2. Сокращение int происходит от английского integer – целый. 

Примечание 3. В большинстве языков программирования переменная целого типа имеет ограничения. Например, в языке C# переменная целого типа может принимать значения из диапазона [263;2631]. В Python реализована так называемая длинная арифметика, то есть, по сути, переменная целого типа не имеет ограничений.

Примечание 4. Минус может использоваться для обозначения отрицательных чисел. А вот операции +, / и * всегда стоят между двумя переменными и что-то с ними делают.

num1 = -6      # унарный минус
num2 = 17 - 7  # бинарный минус
Пропустить Навигационные Ссылки.
Чтобы оставить комментарий нужна авторизация
Печать