0% acharam este documento útil (0 voto)
26 visualizações5 páginas

Python2020 Aula5 Calculos

O documento apresenta os operadores aritméticos da linguagem Python, incluindo os operadores de soma (+), subtração (-), multiplicação (*), divisão (/), potencia (**), divisão inteira (//) e resto da divisão (%). Explica a ordem de precedência dos operadores e como usar parênteses para alterar a ordem de cálculo.
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
26 visualizações5 páginas

Python2020 Aula5 Calculos

O documento apresenta os operadores aritméticos da linguagem Python, incluindo os operadores de soma (+), subtração (-), multiplicação (*), divisão (/), potencia (**), divisão inteira (//) e resto da divisão (%). Explica a ordem de precedência dos operadores e como usar parênteses para alterar a ordem de cálculo.
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
Você está na página 1/ 5

5.

Cálculos e Mais Cálculos


5.1. Revendo os Operadores Aritméticos

Na lição passada, fomos apresentados a alguns dos principais operadores aritméticos


usados na linguagem Python. Vamos revê-los rapidamente agora:

O operador + é usado para somar dois números. Portanto

print(80+50)
vai apresentar na tela o valor 130 [integer].

O operador – é usado para subtrair o segundo número de um primeiro número, portanto


o trecho

print(90-30)
vai resultar no aparecimento do número 60 [integer].

Se você utilizar o operador * com dois números, você os multiplica. Logo, o código

print(30*4)
vai mostrar na tela o número 120 [integer].

Por fim, se você utiliza o operador /, você divide o primeiro número pelo segundo.
Portanto,

print(20/5)
vai apresentar, na tela, o número 4.0 [float]. [toda operação de divisão resulta num
número float]

Se você utilizar o operador ** [asterisco duplo], você estará elevando o primeiro número
à potência do segundo número. Isso significa que o código

print(3**2)
vai apresentar o número 9 [integer] como resultado na tela. [afinal, 32 é 9].

Todos esses já havíamos visto. Vamos a dois outros operadores relacionados à divisão
entre dois números:

O operador // [barra dupla] é usado para obter o quociente de uma divisão inteira
[integer].

Conhecimentos Iniciais de Informática – @ProfessorJoaoAntonio Página 27


O operador % [sinal de porcentagem] é usado para obter o resto de uma divisão
inteira. [integer]

O que são essas duas? Ahhh... você lembra da escola? Quando a gente aprendeu a
calcular uma divisão com resto? Era aquele tipo de cálculo que aqui chamamos de
"divisão inteira" – uma divisão que usa apenas números inteiros.

Dá uma olhada na imagem a seguir, em que divido 14 por 3, obtendo 4 com resto 2:

14 3
4 ß resultado do cálculo 14 // 3

resto: 2 ß resultado do cálculo 14 % 3

Então, é simples:

[a] Se você escreve 14 / 3, você obtém o resultado 4.666666666666667. [float,


claro!]
[b] Se você escreve 14 // 3, você obtém o resultado 4 [o quociente] em formato
integer.
[c] Se você escreve 14 % 3, você obtém o resultado 2 [o resto da divisão] em formato
integer.

5.2. Prioridades na Frente!

Algumas vezes, somos obrigados a construir no Python expressões matemáticas com


mais de um operador, como, por exemplo: print(23 + 38 * 2 ** 5 // 8 % 4).

A pergunta que fica no ar é: como o Python entende [e resolve] uma expressão como
essa? É só ler as operações da esquerda para a direita e calcular uma a uma em
sequência?

Era o que eu já ia perguntar, João: como resolver essa complicação aí?

Calma, caro leitor, estimada leitora! O Python tem uma forma "organizada" de ler as
expressões matemáticas e de resolvê-las... Acompanhe a tabela abaixo:

Conhecimentos Iniciais de Informática – @ProfessorJoaoAntonio Página 28


Primeiro... Python resolverá todas as operações com o ** [potência].

Depois... Python resolverá todas as operações de *, /, // e % - elas têm a mesma


prioridade.

Por fim... Python resolverá todas as operações de + e – . Elas têm a mesma


prioridade entre si.

Então, vejamos o código a seguir.

30 + 160 // 2 ** 5 / 5 – 12
A primeira coisa que o Python vai resolver é a potência, ou seja, o 2 ** 5. Isso dá 32.
[integer]

30 + 160 // 32 / 5 – 12
Depois, todas as multiplicações, divisões e restos em ordem, da esquerda para a direita.
Então, fará logo a resolução do trecho 160 // 32. O resultado disso é 5 [integer] – divisão
inteira.

30 + 5 / 5 – 12
Agora, resolve-se o 5 / 5, que resulta em 1.0. [float] – lembre-se: divisão simples retorna
um float.

30 + 1.0 – 12
Agora é só soma e subtração. O resultado disto é 19.0. [float]

5.2.1. Alterando as Prioridades


Normalmente, o Python fará as operações matemática na ordem das prioridades que eu
mostrei acima. Mas você pode fazer o Python realizar as operações em outra ordem: é
só envolver com ( ) [parênteses] a parte da equação que você deseja que o Python resolva
primeiro. Vamos ver?

40 – 8 * 3
O Pyhton vai resolver essa expressão assim: [a] primeiro, resolve a multiplicação 8 * 3,
que dá 24; [b] depois, resolve a subtração 40 – 24, que dá 16. O resultado, portanto, é
16!

Se colocarmos os parênteses envolvendo a operação 40 – 8, o Python será obrigado a


resolvê-la primeiro, antes mesmo da multiplicação, ou seja:

Conhecimentos Iniciais de Informática – @ProfessorJoaoAntonio Página 29


(40 – 8) * 3
A resolução desta expressão será: [a] 40 – 8 é resolvido primeiro, e dá 32. [b] A
multiplicação 32 * 3 é resolvida posteriormente, resultando em 96. O resultado, portanto,
é 96.

Você poderá precisar, se seu cálculo for muito complexo, de vários níveis de parênteses.
Um dentro do outro, como veremos no exemplo a seguir:

3 * (10 // (2 + 3) + 8 * (4 – 3) + 2 ** (8 // (3 + 1) + 1))
Como o Python vai resolver isso? Acompanha a sequência:

(A) Primeiro, resolvem-se todos os parênteses mais internos:

3 * (10 // (2 + 3) + 8 * (4 – 3) + 2 ** (8 // (3 + 1) + 1))
3 * (10 // 5 + 8 * 1 + 2 ** (8 // 4 + 1))
(B) Agora, podemos analisar os cálculos que têm prioridades dentro de cada
parêntese restante:

3 * (10 // 5 + 8 * 1 + 2 ** (8 // 4 + 1))
3 * ( 2 + 8 + 2 ** ( 2 + 1))
(C) Agora, o Python irá resolver aquele parêntese interno e aquela soma entre os dois
itens iniciais:

3 * (2 + 8 + 2 ** (2 + 1))
3 * ( 10 + 2 ** 3 )
(D) Hora de resolver a potência, né? Depois somá-la ao 10 inicial para resolver os
parênteses principais:

3 * (10 + 2 ** 3)
3 * (10 + 8)
3 * (18)
54
Lembre-se de que é o Python que vai fazer esses cálculos. Não Você! É importante,
porém, que você saiba exatamente como ele faz esses cálculos, porque você saberá
escrevê-los de maneira a obter o resultado que deseja. Afinal, escrever uma equação de
maneira errada trará resultados diferentes!

Conhecimentos Iniciais de Informática – @ProfessorJoaoAntonio Página 30


5.3. Vamos Exercitar a Lição 5

5.3.1. Qual o resultado dos seguintes cálculos? [escreva-os aqui]


[a] 30 + 20
[b] 50 – 12
[c] 80 * 2
[d] 30 / 2
[e] 100 – 25 * 2
[f] 23 + 8 * 2 / 4
[g] (90 – 10) * 2 / 5
[h] 7 // 2
[i] 11 % 3
[j] (4 + 17) % 3
[k] 9 + 25 // 3
[l] 4 ** 3
[m] 80 + (33 // 4) ** 2
[n] 40 – (3 * 3) ** 2 // 4
[o] 80 / 2 ** (5 % 2)

5.3.2. O que vai ser apresentado na tela quando o programa abaixo for
executado?

print("Calculadora " * 3)
print('Primeiros', 3 * 'testes ')
print(80 + 40 // 3 % 3)
print((100 - 60) / 20 + 3 ** 2)
print("Salva de", 7 * 3, "tiros")
print((3 * ((3 + 4 % 3) * 2 + 3) - 12) * 'bum ')
Escreva a saída [o resultado que aparecerá na tela do programa] aqui em baixo:

Conhecimentos Iniciais de Informática – @ProfessorJoaoAntonio Página 31

Você também pode gostar

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy