Целые и вещественные
числа
ТЕОРИЯ
Целые числа

Любое целое число независимо от объема потребляемой памяти в языке Python представлено типом int. Напишете ли вы 22 или 22222, оно все равно будет определяться как int, просто в памяти вашего устройства это значение будет занимать разную память. В других языках программирования целые числа принадлежат к разным типам данных.

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

С целыми числами можно производить любые арифметические операции без ограничений. Их имеется 7 разновидностей:
– сложение (+);
– вычитание (-);
– умножение (*);
– деление (/);
– возведение в степень (**);
– деление по модулю (%), которое возвращает целочисленный остаток от деления (т.е. если
3 % 2, то получим остаток 1);
– целочисленное деление (//), которое возвращает целочисленный результат деления без дробной части (т.е. если 10 // 4, то получим 2).
Вещественные числа

Python предоставляет три типа значений с плавающей точкой:

  • float (двойная точность);
  • complex (комплексные числа вида 3.5 + 5j );
  • decimal.Decimal (большая точность, по умолчанию 28 знаков после запятой).
Наиболее часто используемый тип float представляет числа с плавающей точкой двойной точности, диапазон значений которых зависит от компилятора, применявшегося для компиляции интерпретатора Python. Числа типа float записываются с десятичной точкой.

Пример литералов вещественных чисел:
Трудности

Для чисел с плавающей точкой существует ряд нюансов:
  • в машинном представлении такие хранятся как двоичные числа. Это означает, что одни дробные значения могут быть представлены точно (такие как 0,5), а другие - только приблизительно (такие как 0,1 и 0,2, например, их сумма будет равна не 0,3, а 0.30000000000000004);
  • для представления используется фиксированное число битов, поэтому существует ограничение на количество цифр в представлении таких чисел.
В связи с этим числа типа float не могут надежно сравниваться на равенство значений, т.к. имеют ограниченную точность. Проблема потери точности - это не проблема, свойственная только языку Python, а особенность компьютерного представления чисел.
Практика
Задача 1

Четырёхзначное число

Напишите программу для нахождения цифр четырёхзначного числа.
Задача 2

Первая цифра

Дано положительное действительное число X. Выведите его первую цифру после десятичной точки. При решении этой задачи нельзя пользоваться условной инструкцией, циклом или строками.
Задача 3
Округление
По правилам числа округляются до ближайшего целого числа, а если дробная часть числа равна 0.5, то число округляется вверх.
Дано неотрицательное число x, округлите его по этим правилам. Обратите внимание, что функция round не годится для этой задачи! Никаких специальных функций для решения задачи не требуется.
Дробная часть
Дано положительное действительное число X. Выведите его дробную часть абсолютно точно. Исходное число содержит не более 6 знаков после десятичной точки.

Домашнее задание
This site was made on Tilda — a website builder that helps to create a website without any code
Create a website