Enviar um café pro programador

Como Fazer uma Calculadora Simples em Python - Comentar código

No tutorial passado de nossa Apostila de Python, aprendemos a somar, subtrair, dividir, multiplicar, exponenciar e achar o resto da divisão, de dois números quaisquer.

Propusemos que você criasse uma calculadora em Python, que pede ao usuário dois números e exiba todas as operações da seguinte maneira:

Comentar código

Agora vamos mostrar a solução desse exercício, de duas maneiras.
Mas, antes, precisamos aprender algo essencial em programação: comentar um código.

Leia também:

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


Comentar um Código - Caractere #

Uma das coisas mais essenciais que você precisa aprender em programação, é comentar seu código.

"Lá vai o Python, começa a executar. Python toca pra variável, a variável chama a input, a input passa pra função int que cruza pra função print e exibe o resultado na tela, é gol!"

Não, nada a ver, você não vai comentar nem narrar nada.
Comentar é escrever coisas no seu código, em sua língua (português, inglês...) de modo que quem vai ver o código, consiga ler algo.

Vamos voltar no tempo e digitar o Hello, World.
Escreva e rode:
# O programa abaixo exibe uma mensagem na tela
print("Hello, World!")

Note que tem algo diferente. Na primeira linha.
Escrevemos o símbolo de jogo da velha e escrevemos algo.
Porém, quando vamos rodar nosso script, essa linha não aparece.

É isso que é um comentário: uma linha que começa com o caractere #
O Python simplesmente ignora tudo que começa com #

Pode colocar qualquer coisa, qualquer comando, até uma letra da Xuxa depois de # que o Python não vai ler, não vai rodar aquela linha nem vai aparecer nada no interpretador.

Agora pode parecer bobagem usar isso, mas a medida que seus programas forem ficando enormes, complexos e difíceis, é altamente recomendável que você vá comentando seu código, tipo

# Aqui estamos conectando com o site da NASA
[código]

# Agora vamos tentar invadir o sistema da NASA
[código]

# Tendo acesso ao banco de dados da NASA
[código]

# O código a seguir começa a baixar arquivos secretos da NASA
[código]

# Caceta! Fudeu! Me pegaram

Isso ajuda a você quando ver o código de novo, a entender o que cada parte do código está fazendo, para que serve. Ok ?
Sempre comente seus códigos!

Vamos dar um exemplo agora de código comentado, fazendo a calculadora em Python.



Calculadora Simples em Python

O código de nossa calculadora, todo bonitinho, organizado e comentado ficou assim:

# Inicialmente, pedimos os dois números para o usuário
# Vamos transformar ele em float
var1 = float( input("Digite um numero: ") )
var2 = float( input("Digite outro numero: ") )

# Calculando a soma e armazenando na variável 'soma'
soma = var1 + var2

# Calculando a subtração e armazenando na variável 'subtracao'
subtracao = var1 - var2

# Calculando a multiplicação e armazenando na variável 'mult'
mult = var1 * var2

# Calculando a divisão e armazenando na variável 'div'
div = var1 / var2

# Calculando a exponenciação e armazenando na variável 'expo'
expo = var1 ** var2

# Calculando o resto da divisão e armazenando na variável 'resto'
resto = var1 % var2

# Imprimindo tudo
print('Soma:             ', var1,'+',var2,' = ' , soma)
print('Subtração:        ', var1,'-',var2,' = ' , subtracao)
print('Multiplicação:    ', var1,'*',var2,' = ' , mult)
print('Divisão:          ', var1,'/',var2,' = ' , div)
print('Exponenciação:    ', var1,'**',var2,' = ', expo)
print('Resto da divisão: ', var1,'%',var2,' = ' , resto)

E o seu ?
Coloque seu código nos comentários.

Código Menor da Calculadora em Python

Uma das coisas mais comuns de ocorrer com quem está começando a programar, é criar códigos longos, bagunçados e confusos.

As vezes você programa 200 linhas de código para fazer algo.
Aí vem um filho de uma mãe e faz um código melhor, sem erros, mais organizado, que roda mais rápido e usando apenas 30 linhas.

Dá uma raiva...mas, calma. É assim mesmo no começo.
O código a seguir é o mesmo da calculadora, porém ele é menor, roda mais rápido e consome menos memória, pois usamos apenas duas variáveis 'var1' e a 'var2':

# Recebe dados do usuário
var1 = float( input("Digite um numero: ") )
var2 = float( input("Digite outro numero: ") )

# Imprime o resultado das operações direto na função print
print('Soma:             ', var1,'+',var2,' = ' , var1+var2)
print('Subtração:        ', var1,'-',var2,' = ' , var1-var2)
print('Multiplicação:    ', var1,'*',var2,' = ' , var1*var2)
print('Divisão:          ', var1,'/',var2,' = ' , var1/var2)
print('Exponenciação:    ', var1,'**',var2,' = ', var1**var2)
print('Resto da divisão: ', var1,'%',var2,' = ' , var1%var2)


Bacana, não é verdade?

16 comentários:

  1. Único comentário a fazer é que a descrição dos programas feitos na ala deviam seguir a realidade. Não dá para escrever tanto no prompt como no Idle essa sequência de comandos. Tudo fica entremeado com >>>. Passei a usar o Visual Studio 2019 Preview que permite programar em python e tudo ficou bem mais fácil de fazer e enxergar o que se faz. Uma IDE idônea devia ter sido adotada desde o início.

    ResponderExcluir
    Respostas
    1. minha única observação é q o curso devia ter ensinado logo no começo onde baixar o pycharm e como usar tudo bonitinho e etc, mas fora isso o cara fez um ótimo trabalho, e qq coisa, a gente tá na internet, é só dar uma pesquisada em outros lugares q dá pra aprender isso facinho, não é o ideal, mas já é uma puta de uma mão na roda.

      Excluir
    2. É ensinado a baixar, instalar e usar o IDLE, que é a IDE mais simples, leve e fácil de se usar.

      O autor do comentário teve problemas pro estar tentando fazer isso no prompt, e foi alertado que assim seria mais complicado.

      No IDLE, pode se adicionar quantos comentários desejar, da maneira mais absurdamente simples possível.

      Podem usar o Pycham ou qualquer outro, não vai fazer diferença. Mas de fato, o IDLE é mais simples pra iniciante.

      Excluir
  2. conpactando o programa mais ainda.
    n1 = int(input('um numero: '))
    n2 = int(input('outro numero: '))
    print('Soma, {} + {} = {}'.format(n1, n2, n1 + n2))
    print('Subtração, {} - {} = {}'.format(n1, n2, n1 - n2))
    print('multiplicação, {} x {} = {}'.format(n1, n2, n1 * n2))
    print('Divisão, {} / {} = {}'.format(n1, n2, n1 / n2))
    print('Resto da divisão,{} % {} = {}'.format(n1, n2, n1 % n2))
    print('Exponenciação, {} ** {} = {}'.format(n1, n2, n1 ** n2))

    ResponderExcluir
    Respostas
    1. dá pra fazer tudo com uma print só, mas tem q setar mais variáveis

      Excluir
  3. O maior picles do mundo é o amendoim

    ResponderExcluir
  4. #Programa de calculadora simples de dois números
    #Por Marcos Moraes
    #Em 15/08/2020
    #Para o Curso Python Progressivo

    print('Calculadora simples de dois números')
    #Pedindo o primeiro número para o usuário e armasenando isso na vareável num1
    #Convertendo a String da vareável num1 para float
    num1 = float(input('Digite um número: '))
    #Pedindo o segundo número para o usuário e armasenando isso na vareável num2
    #Convertendo a String da vareável num2 para float
    num2 = float(input('Digite outro número: '))
    #Realizando os cálculos e imprindo os resultados
    print(num1,' + ',num2,' = ',num1+num2,';\n',num1,' - ',num2,' = ',num1-num2,';\n',num1,' / ',num2,' = ',num1/num2,';\n',num1,' * ',num2,' = ',num1*num2,';\n',num1,' ^',num2,' = ',num1**num2,';\nResto da divisão de ',num1,' / ',num2,' = ',num1%num2,'.')

    ResponderExcluir
  5. #Esta eh a calculadora correlacionada ao python progressivo
    #Ela recebe dois numeros e arrasa!
    number1 = float(input('Dê-me um número: '))
    number2 = float(input('Dê-me outro número: '))
    #Aqui ela faz operações com os numeros
    soma = number1 + number2
    subtraa = number1 - number2
    multiplica = number1 * number2
    divvs = number1 / number2
    potencia = number1 ** number2
    resto = number1 % number2
    #E aki ela sobe no palco para desfilar belíssima
    print('\nEu sou uma ótima linguagem. Olha o que eu sei fazer!!\n')
    print('Soma: ',number1,' + ',number2,' = ',soma)
    print('Subtração: ',number1,' - ',number2,' = ',subtraa)
    print('Multiplicação: ',number1,' * ',number2,' = ',multiplica)
    print('Divisão: ',number1,' / ',number2,' = ',divvs)
    print('Potência: ',number1,' ** ',number2,' = ',potencia)
    print('Resto: ',number1,' % ',number2,' = ',resto)
    #Fim

    ResponderExcluir
  6. #Calculadora /* Working in Progress *\
    #Autor: HydraMaster
    print("Escolha um número: ")
    n = float(input())
    print("escolha outro número: ")
    n2 = float(input())
    print("escolha oq fará com o número: ")
    print("dividir, somar, subtrair, multiplicar, subtrair com potencias, adição com potencias, multiplicar com potencias")
    e = input()
    print("o escolhido foi: " , e)
    if e == "adição com potencias":
    b = int(input("Escolha a potencia do numero 1: "))
    c = int(input("Esolha a potencia do numero 2: "))
    print(n**b + n2**c)
    if e == "subtrair com potencias":
    b = int(input("Escolha a potencia do numero 1: "))
    c = int(input("Esolha a potencia do numero 2: "))
    print(n**b - n2**c)
    if e == "multiplicar com potencias":
    b = int(input("Escolha a potencia do numero 1: "))
    c = int(input("Esolha a potencia do numero 2: "))
    print(n**b * n2**c)
    if e == "potenciação":
    print(n** n2)
    if e == "dividir":
    print(n / n2)
    if e == "somar":
    print(n + n2)
    if e == "multiplicar":
    print(n * n2)
    if e == "subtrair":
    print(n - n2)

    ResponderExcluir
  7. Da para programar usando até o NotePad++, Python é show de bola! Valeu pessoal pela ajuda! Dá trabalho digitar todos os textos, organiza-los, para que no final recebamos estes textos que nos trazem conhecimento sem igual em Python. Parabéns a equipe!

    ResponderExcluir
  8. Uso o NotePad++ e executo direto no interpretador Python.

    ResponderExcluir
  9. Você também pode comentar o código usando 3 aspas no começo da sentença e 3 aspas no fim. Assim você não precisa colocar # linha por linha.
    Fica algo desse tipo:

    '''
    Escreva seu comentário aqui!
    Ou aqui!
    Ou aqui!!!
    '''

    ResponderExcluir
  10. num1 = int(input("Digite um número:"))
    num2 = int(input("digite outro número:"))

    Soma = (num1 + num2)
    Subtração = (num1 - num2)
    Multiplicação = (num1 * num2)
    Divisão = (num1 / num2)
    Exponenciação = (num1 ** num2)
    Resto = (num1 % num2)



    print("Soma: ",num1,"+",num2,":",Soma)
    print("Subtração: ",num1,"-",num2,":",Subtração)
    print("Multiplicação: ",num1,"*",num2,":",Multiplicação)
    print("Divisão ",num1,"/",num2,":",Divisão)
    print("Exponenciação: ",num1,"**",num2,":",Exponenciação)
    print("Resto da divisão: ",num1,"%",num2,":",Resto)

    ResponderExcluir