Jump to content

Calculadora de IMC


noguche
Go to solution Solved by noguche,

Recommended Posts

Boa tarde,

Estou a tentar executar o código abaixo utilizando a versão do Python 3.5 e me retorna sempre o erro:

Traceback (most recent call last):
 File "C:/Users/ii-ext-58-50/AppData/Local/Programs/Python/Python35/Curso/calc_imc.py", line 12, in <module>
   if sexo == "masculino":
NameError: name 'sexo' is not defined

Alguém poderia por favor me ajudar?

# Calculadora de imc, primeiro programa em python
# Autor: Diogoryu
# Data: 11/01/2007

def peso():
   print("calculo para verificacao do IMC \n")
   nome = input("Por favor digite o seu nome \n")
   print("seja bem vindo(a) " +nome+ " para o calculo do imc \n")
   h = float(input("\n insira a sua altura em centimetros separada por ponto \n"))
   peso = float(input("digite o seu peso \n"))
   sexo = input("insira o seu sexo: masculino ou feminino \n")
if sexo == "masculino":
   imc = peso / h ** 2
   print("o seu imc é " + str(imc))
   resp = input("deseja ver o seu peso ideal, digite: sim ou não ")
if resp == "sim":
   print("\n o seu peso ideal é " + str((72.2*h) - 57))
else:
   imc = peso / h ** 2
   print("o seu imc é " + str(imc))
   resp = input("deseja ver o seu peso ideal, digite: sim ou não ")
if resp == "sim":
   print("\n o seu peso ideal é " + str((62.1*h) - 44.7))
Edited by pwseo
syntax highlight
Link to comment
Share on other sites

noguche,

Antes de mais, e uma vez que já por várias vezes editei os teus posts para colocar os excertos de código nas respectivas tags, aqui fica um link que deverás ler com cuidado para tal não se repita: Tópico de Ajuda - Colocação de Código

E agora a questão que colocaste. Sabendo que Python é uma linguagem sensível à indentação do código e tendo em conta o código que escreveste, consegues imaginar o porquê de se queixar que sexo não está definida? (dica, vê bem onde definiste sexo -- essa definição é local ou global?)

Link to comment
Share on other sites

  • Solution

Boa tarde,

Em primeiro lugar peço imensas desculpas pelos erros cometidos e agradeço pwseo por toda a tua atenção.

No entanto consegui finalmente executar o código com sucesso, abaixo envio o código com as últimas alteração para a versão python 3.5

def peso():
print("calculo para verificacao do IMC \n")
nome = input("Por favor digite o seu nome \n")
print("seja bem vindo(a) " +nome+ " para o calculo do imc \n")
h = float(input("\n insira a sua altura em centimetros separada por ponto \n"))
peso = float(input("digite o seu peso \n"))
sexo = input("insira o seu sexo: masculino ou feminino \n")
if (sexo == "masculino"):
 imc = peso / h ** 2
 print("o seu imc é " + str(imc))
 resp = input("deseja ver o seu peso ideal, digite: sim ou não ")
if (resp == "sim"):
 print("\n o seu peso ideal é " + str((72.2*h) - 57))
else:
 imc = peso / h ** 2
 print("o seu imc é " + str(imc))
 resp = input("deseja ver o seu peso ideal, digite: sim ou não ")
if (resp == "sim"):
 print("\n o seu peso ideal é " + str((62.1*h) - 44.7))
peso()
Edited by noguche
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.