Ir para conteúdo
Fórum Script Brasil
  • 0

Dúvida no uso do WHILE


Janus Berserk

Pergunta

Estou tentando fazer um programa que dar duas opções ao usuário: opção 'c' ou 'f'. Senão for fornecido um desses valores o programa manda uma mensagem dizendo 'tente novamente', mas se fornecer ele irá fazer as conversões oferecidas. O problema é que quando o WHILE é chamando, no fim do seu processo o programa finaliza e não faz a conversão. Eu sei que falta algum comando que deveria ficar mais abaixo do WHILE mas não sei o que usar. Poderiam me ajudar?

Aqui está o algoritmo:

opçao = input('Graus Celsius (c) / Graus Fahrenheit (f) \n O que quer converter? ')

if opçao != 'c' and opçao != 'f':
    while opçao != 'c' and opçao != 'f':
        print('Opção inválida. Tente novamente.')
        opçao = input('Graus Celsius (c) / Graus Fahrenheit (f) \n O que quer converter? ')
        
else:
    if opçao == 'c':
        cel = float(input('Digite o grau em celsius: '))
        fah = (cel * 9/5) + 32
        print(cel,' graus celsius equivale a ',fah,' fahrenheit')
    elif opçao == 'f':
        fah = float(input('Digite o grau em fahrenheit: '))
        cel = 5 * ((fah - 32)/9)
        print(fah,' graus fahrenheit equivale a ',cel,' celsius')

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Boa tarde, amigo.

Eu fiz da seguinte forma:

Usei o while True pra transformar o programa em um loop infinito.

while True:
  opçao = input('Graus Celsius (c) / Graus Fahrenheit (f) \nO que quer converter? ')
          
  if opçao == 'c':
    cel = float(input('Digite o grau em celsius: '))
    fah = (cel * 9/5) + 32
    print(cel,' graus celsius equivale a ',fah,' fahrenheit')
    enter = input('Pressione ENTER para continuar...')
  
  elif opçao == 'f':
    fah = float(input('Digite o grau em fahrenheit: '))
    cel = 5 * ((fah - 32)/9)
    print(fah,' graus fahrenheit equivale a ',cel,' celsius')
    enter = input('Pressione ENTER para continuar...')
  
  else:
    print('Opção inválida. Tente novamente.')
    enter = input("Pressione ENTER para continuar...")

Espero que tenha ajudado, qualquer coisa chama aqui.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...