Integer and float numbers - Learn Python 3 - Snakify

Lesson 2
Números inteiros e flutuantes


1. Aritmética Integral

Nós já conhecemos os seguintes operadores que podem ser aplicados aos números: + , - , * e ** . O operador de divisão / para inteiros fornece um número real de ponto flutuante (um objeto do tipo float ). A exponenciação ** também retorna um float quando a potência é negativa:

print(17 / 3)  # dá 5.66666666667
print(2 ** 4)  # dá 16
print(2 ** -2) # dá 0,25

Há uma operação especial para divisão inteira, onde o restante é descartado: // . A operação que produz um resto de tal divisão se parece com % . Ambas as operações sempre geram um objeto do tipo int .

print(17 / 3)   # dá 5.66666666667
print(17 // 3)  # dá 5
print(17 % 3)   # dá 2
Advertising by Google, may be based on your interests

2. Números de ponto flutuante

Quando lemos um valor inteiro, lemos uma linha com input() e depois convertemos uma string para inteiro usando int() . Quando lemos um número de ponto flutuante, precisamos converter a string para float usando float() :

x = float(input())
print(x)

Flutuadores com valor absoluto muito grande ou muito pequeno podem ser escritos usando uma notação científica. Por exemplo, a distância da Terra ao Sol é 1.496 · 10 11 ou 1.496e11 em Python. A massa de uma molécula da água é 2.99 · 10 -23 , ou 2.99e-23 em Python.

Pode-se converter objetos flutuantes em objetos int, descartando-se a parte fracionária usando a função int() . Esta função demonstra o chamado arredondamento em direção ao comportamento zero :

print(int(1.3))   # dá 1
print(int(1.7))   # dá 1
print(int(-1.3))  # dá -1
print(int(-1.7))  # dá -1

Há também uma round() funções round() que executa o arredondamento usual:

print(round(1.3))   # dá 1
print(round(1.7))   # dá 2
print(round(-1.3))  # dá -1
print(round(-1.7))  # dá -2

Números reais de ponto flutuante não podem ser representados com precisão exata devido a limitações de hardware. Isso pode levar a efeitos incômodos. Veja os documentos do Python para os detalhes.

print(0.1 + 0.2)  # dá 0,30000000000000004
Advertising by Google, may be based on your interests

3. módulo de matemática

O Python possui muitas funções auxiliares para cálculos com floats. Eles podem ser encontrados no módulo de math .

Para usar este módulo, precisamos primeiro importá-lo escrevendo a seguinte instrução no início do programa:

import math

Por exemplo, se quisermos encontrar um valor máximo para x - o menor inteiro não menor que x - nós chamamos a função apropriada do módulo de matemática: math.ceil(x) . A sintaxe para chamar funções de módulos é sempre a mesma: module_name.function_name(argument_1, argument_2, ...)

import math

x = math.ceil(4.2)
print(x)
print(math.ceil(1 + 3.8))

Existe outra maneira de usar funções dos módulos: para importar certas funções, nomeando-as:

from math import ceil
 
x = 7 / 2
y = ceil(x)
print(y)

Algumas das funções que lidam com números - int() , round() e abs() (valor absoluto aka módulo) - são embutidas e não requerem nenhuma importação.

Todas as funções de qualquer módulo Python padrão estão documentadas no site oficial do Python. Aqui está a descrição para o módulo de matemática . A descrição de algumas funções é dada:

Função Descrição
Arredondamento
floor(x) Retorna o piso de x, o maior inteiro menor ou igual a x.
ceil(x) Retorna o teto de x, o menor inteiro maior ou igual a x.
Raízes e logaritmos
sqrt(x) Retornar a raiz quadrada de x
log(x) Com um argumento, retorne o logaritmo natural de x (para base e). Com dois argumentos, retorne o logaritmo de x para a base especificada
e A constante matemática e = 2,71828 ...
Trigonometria
sin(x) Devolve o seno de x radianos
asin(x) Retornar o arcsine de x, em radianos
pi A constante matemática π = 3,1415 ...
Advertising by Google, may be based on your interests