Enviar um café pro programador

Mostrando postagens com marcador %. Mostrar todas as postagens
Mostrando postagens com marcador %. Mostrar todas as postagens

Achar Unidade, Dezena, Centena...de um número em Python

Nesse exercício que iremos resolver e comentar o código, vamos aprender a usar o operador %, também conhecido por "resto da divisão", em nossa Apostila de Python Online.



Exercício de Python

"Faça um Programa que leia um número inteiro menor que 1000 e imprima a quantidade de centenas, dezenas e unidades do mesmo.

Exemplo:
123 = 1 centena(s), 2 dezena(s) e 3 unidade(s)
12 = 1 dezena(s) e 2 unidade(s)
Testar com: 326, 300, 100, 320, 310,305, 301, 101, 311, 111, 25, 20, 10, 21, 11, 1, 7 e 16"

Resto da Divisão em Python

Para sabermos o valor da unidade de um número inteiro positivo qualquer, em Python, basta usar o operador de resto da divisão % da seguinte maneira:

unidade = numero % 10

Pronto. Só isso.
Se nosso número é 123 e fizermos 123 % 10, o resultado vai ser 3.
Então 3 é nossa unidade.

E como achar a dezena?

O próximo passo é transformar nosso número de 123 pra 12 (excluímos a unidade).
Primeiro, subtraímos do número o valor da unidade.
123 - 3 = 120

Depois, dividimos o número por 10:
120 / 10 = 12

Prontinho, pra achar a dezena basta fazer: 12 % 10 = 2

Em programação Python, fica assim:
numero = (numero - unidade) / 10 # Passa de 123 pra 123-3 = 120 / 10 = 12
dezena = numero % 10                 # dezena = 12 % 10 = 2

E pra achar o valor da centena?
De novo, transformamos de 12 pra 1 (excluímos 2).

Subtraímos a dezena achada: 12 - 2= 10
E novamente dividimos por 10: 10/10 = 1

Em programação Python:
numero = (numero - dezena)/10
centena = numero

No caso, paramos por aí. Por só queremos achar até a centena.
Nesse ponto, nosso número vai ser o mesmo valor da centena.

Se quiser para números maiores, só seguir essa lógica.




Código comentado em Python

    numero = int(input('Digite um numero inteiro positivo: '))

    # Extraindo a unidade
    unidade = numero % 10

    # Eliminando a unidade de nosso número
    numero = (numero - unidade)/10

    # Extraindo a dezena
    dezena = numero % 10

    # Eliminando a dezena do número original, fica a centena
    numero = (numero - dezena)/10
    centena = numero

    # Fazendo ser inteiros
    dezena = int(dezena)
    centena = int(centena)
    print(centena,'centena(s),',dezena,'dezena(s) e',unidade,'unidade(s)')


Operações Matemáticas no Python - Adição (+), Subtração (-), Multiplicação (*), Divisão (/), Exponenciação (**) e Resto da divisão ( % )

Computação...já parou pra pensar o que significa?
Vem de computar, que significa calcular.

Sim, basicamente o que um computador fazer é isso: contas. Muitas e bem rápido.

Neste tutorial de nosso Curso de Python, vamos aprender a somar, subtrair, multiplicar, dividir, exponenciar e calcular o resto da divisão (que diacho é isso?)

Leia também:

Eu quero obter certificado Python Progressivo e Entrar no Mercado de Trabalho!



Como Somar em Python: +

O operador de soma, em Python, é...adivinha, o símbolo: +
Surpresa, hein?

Vamos fazer um script que pede um número inteiro ao usuário, armazena em var1, depois outro inteiro e armazena em var2.

Em seguida, fazemos a soma desses dois números e armazenamos na variável soma, e printamos a soma. Digite e rode o seguinte código:
var1 = int( input("Digite um inteiro: ") )
var2 = int( input("Digite outro inteiro: ") )

soma = var1 + var2

print(soma)

Legal, né ?

Como Subtrair em Python: -

Se você achou que o símbolo de subtração, em Python, fosse o - , parabéns, você é sério candidato para ganhar o próximo prêmio Nobel.

Vamos criar um script que pede dois números, subtrai um do outro e exibe o resultado:
var1 = int( input("Digite um inteiro: ") )
var2 = int( input("Digite outro inteiro: ") )

subtracao = var1 - var2

print(subtracao)

Note que você só pode fazer a subtração depois de fornecer os números.
Se fizer o 'subtracao = var1 - var2' no começo, vai dar um erro, pois o Python ainda não sabe que valores estão em var1 e var2, pois você ainda não forneceu nada!



Como Multiplicar em Python: *

Finalmente algo diferente! Sim, o símbolo de multiplicar não é x, é o asterisco *

var1 = int( input("Digite um inteiro: ") )
var2 = int( input("Digite outro inteiro: ") )

produto = var1 * var2

print(produto)

Escreva o código acima, rode ele, várias vezes, faça testes, coloque a mão na massa, ok? Só ficar passando o olho aqui não vai te fazer um bom programador Python.

É precisa codar, ou seja, digitar os códigos, na mão!




Como Dividir em Python: /

Já o símbolo de dividir é o /
Ou seja: 4/2 = 2

Veja o script que pede dois números ao usuário e exibe a divisão deles:

var1 = int( input("Digite um inteiro: ") )
var2 = int( input("Digite outro inteiro: ") )

divisao = var1 / var2

print(divisao)

Teste: Na segunda variável, que vai ser o denominador, teste colocar 0.
O que aconteceu? Por quê ?


Divisão inteira em Python: //

Quando usamos a barra para dividir, ela vai dar o resultado completo da divisão, ou seja, incluindo a parte decimal. Por exemplo: 5 / 2 = 2.5

Porém, em algumas ocasiões, queremos nos livrar dessa parte 'quebrada' e ficar apenas com a parte inteira. Para isso, usamos duas barras: //

5 / 4 = 1.25
5//4 = 1

1 / 3 = 0.333333
1//3 = 0

Esse ato de tirar essa parte decimal se chama truncar.

-8 / 5 = -1.6
-8//5 = -2

Você pode achar estranho o último resultado, mas não é. O que as duas barras fazem é tirar a parte decimal, e deixar sempre o menor inteiro. Mas lembre-se que em matemática -1 é MAIOR que -2, então tem que arredondar pra baixo, pro menor número, que é -2.

O que o operador // faz, na verdade, é arredondar para o menor valor inteiro, ok?

Se você colocar o resultado da divisão sendo -1, vai estar arredondando para cima, e não é isso que o operador // faz.

Exponenciação em Python: **

Exponenciar, se você já esqueceu, é o famoso 'elevar' e seu símbolo são dois asteriscos juntos: **

Por exemplos, 3 elevado a 2:
3 ** 2 = 9, pois 3x3 =9

3 elevado a 3:
3 ** 3 = 27, pois 3x3x3=27

Rode o seguinte script:

var1 = int( input("Digite um inteiro: ") )
var2 = int( input("Digite outro inteiro: ") )

exp = var1 ** var2

print(exp)


Teste: Use números enormes, gigantescos, medonhos.
E aí, o Python calculou ? Foi rápido? Fodástico esse Python, não é?

Resto da Divisão: %

Essa operação talvez você não lembre.
Vamos voltar lá pra escolinha, quando fazíamos as continhas de dividir, lembra?

Tinha o dividendo, o divisor, o quociente e o resto, veja:

Para saber o resto da divisão de um número por outro, usamos o operador %
Veja o resto da divisão de números pares por 2, teste:


var1 = int( input("Digite um inteiro: ") )
var2 = int( input("Digite outro inteiro: ") )

resto = var1 % var2

print(resto)

Vai dar sempre 0 né?
Agora teste o resto da divisão de um número ímpar por 2.
O resto vai ser sempre um.

Vamos usar o operador de resto da divisão para isso, por exemplos: achar números pares. Vamos usar também para achar números primos também!

É um operador muito importante e útil no mundo da programação, ok?

Exercício Mais Importante de Python

Ok! Agora, você vai precisar fazer este exercício.
Só continue em nosso curso se resolver ele.

Nem que fique grande, feio ou confuso, mas faça esse exercício.

Exercício: Crie um programa em Python que peça dois números ao usuário.
Em seguida, você vai mostrar a soma, subtração, multiplicação, divisão, exponenciação e resto da divisão do primeiro número pelo segundo.

Tem que ficar bonitinho e organizadinho assim, o resultado:

Curso de Python


Vídeo aula 

Assista também esse conteúdo em vídeo, no Youtube: