Модуль 13.1 (Модуль decimal) курса «Поколение Python: курс для продвинутых» курс расскажет о:
- Числа с плавающей точкой
float
- Модуль
decimal
- Тип данных
Decimal
Публикуем решения на урок 13.1 Модуль decimal
Выберите характеристики
Decimal
чисел.
подходит для финансов и бизнеса
подходит для высокоточных вычислений
настраиваемость
Верно ли, что тип данных
Decimal
является неизменяемым?
да
Может ли число
Decimal
быть ключом в словаре?
да
Тип данных Decimal правильно создавать на основании
целого числа (тип данных int)
строки (тип данных str)
Правильно ли сравнивать
float
числа между собой при помощи оператора==
?
нет
Правильно ли сравнивать
Decimal
числа между собой при помощи оператора==
?
да
Что выведет следующий программный код?
from decimal import *
num = Decimal(0.1) + Decimal(0.1) + Decimal(0.1) — Decimal(0.3)
if num == 0:
print(‘YES’)
else:
print(‘NO’)
NO
Что выведет следующий программный код?
from decimal import *
num = Decimal(‘0.1’) + Decimal(‘0.1’) + Decimal(‘0.1’) — Decimal(‘0.3’)
if num == 0:
print(‘YES’)
else:
print(‘NO’)
YES
Decimal
числа, разделенные символом пробела, хранятся в строковой переменнойs
. Дополните приведенный код, чтобы он вывел сумму наибольшего и наименьшегоDecimal
числа.
from decimal import Decimal as D
s = '0.77 4.03 9.06 3.80 7.08 5.88 0.23 4.65 2.79 0.90 4.23 2.15 3.24 8.57 0.10 8.57 1.49 5.64 3.63 8.36 1.56 6.67 1.46 5.26 4.83 7.23 1.22 1.02 7.82 9.97 5.40 9.79 9.82 2.78 2.96 0.07 1.72 7.24 7.84 9.23 1.71 6.24 5.78 5.37 0.03 9.60 8.86 2.73 5.83 6.50'
a = [D(i) for i in s.split()]
print(max(a) + min(a))
Decimal
числа, разделенные символом пробела, хранятся в строковой переменнойs
. Дополните приведенный код, чтобы он вывел на первой строке сумму всех чисел, а на второй строке 55 самых больших чисел в порядке убывания, разделенных символом пробела.
from decimal import Decimal as D
s = '9.73 8.84 8.92 9.60 9.32 8.97 8.53 1.26 6.62 9.85 1.85 1.80 0.83 6.75 9.74 9.11 9.14 5.03 5.03 1.34 3.52 8.09 7.89 8.24 8.23 5.22 0.30 2.59 1.25 6.24 2.14 7.54 5.72 2.75 2.32 2.69 9.32 8.11 4.53 0.80 0.08 9.36 5.22 4.08 3.86 5.56 1.43 8.36 6.29 5.13'
lst = [D(i) for i in s.split()]
print(sum(lst))
print(*sorted(lst)[-5:][::-1])
Дополните приведенный код, чтобы он вывел сумму наибольшей и наименьшей цифры
Decimal
числа.
from decimal import *
num = Decimal(input())
arr = sorted([int(elem) for elem in str(num) if elem.isdigit()])
print(arr[0] + arr[-1])
На вход программе подается
Decimal
число d. Напишите программу, которая вычисляет значение выражения:
from decimal import *
num = Decimal(input())
print(num.exp() + num.ln() + num.log10() + num.sqrt())
Если у вас не отображается решение последних задач, значит у вас включен блокировщик рекламы который вырезает эти ответы