Dúvida sobre Python

1. Dúvida sobre Python

Matheus Bellettini
MatheusBellettin

(usa Linux Mint)

Enviado em 14/08/2020 - 21:27h

Boa noite.
Estou com uma dúvida sobre uma atividade que preciso fazer. Estou com dúvida sobre o uso do while. Segue abaixo a atividade:
Comparar dois valores digitados, ora chamados de A e B, respectivamente.

Enquanto o valor de A for maior que o de B, o sistema continuará exigindo um valor para A e B. Se o valor de A e B forem iguais, o sistema deverá imprimir na tela os valores de ambos em conjunto com a frase: ”Valores de A e B iguais!”; em seguida, deverá pedir para o usuário digitar novamente os valores de A e B.

Finalmente, se o valor de B for maior que o de A, ambos os valores são exibidos em tela e o algoritmo é finalizado imprimindo também a frase: “Valor de B maior que valor de A, fim do algoritmo”.


  


2. Re: Dúvida sobre Python

Danilo Marto
danilomarto

(usa Debian)

Enviado em 15/08/2020 - 07:17h

Oi! Eu também estou aprendendo python então ... eu entendi que isso


while True:
numberA, numberB = int(input()), int(input())
if numberA == numberB: print("{0}, {1}. Valores de A e B iguais!".format(numberA, numberB))
if numberA < numberB:
print("{0}, {1}. Valor de B maior de valor de A.".format(numberA, numberB))
break



3. Re: Dúvida sobre Python

Lisandro Guerra
Lisandro

(usa Linux Mint)

Enviado em 20/08/2020 - 22:24h

Você só colocou a atividade.
Até onde conseguiu ir?
O que já escreveu de código?
E qual é a dúvida?

Abraço



4. Re: Dúvida sobre Python

Lisandro Guerra
Lisandro

(usa Linux Mint)

Enviado em 20/08/2020 - 22:29h

danilomarto escreveu:

Oi! Eu também estou aprendendo python então ... eu entendi que isso


while True:
numberA, numberB = int(input()), int(input())
if numberA == numberB: print("{0}, {1}. Valores de A e B iguais!".format(numberA, numberB))
if numberA < numberB:
print("{0}, {1}. Valor de B maior de valor de A.".format(numberA, numberB))
break


Legal, só faltou a parte que o sistema pede os valores.
Abraço


5. Re: Dúvida sobre Python

Mac
Skylen

(usa Slackware)

Enviado em 28/08/2020 - 20:19h

Boa noite,
Também estou aprendendo Python, fiquei alguns dias sem fazer exercício... Desculpe se o código ficou um pouco bruto...
Qualquer dúvida só perguntar...

Lisandro, você parece mais experiente, daria uma opinião no código? Obrigado!!


while True:
def pergunta():
num_a = float(input("Digite o valor para A: "))
num_b = float(input("Digite o valor para B: "))

if num_a == num_b:
print("Valores de A e B iguais!")
return pergunta()

elif num_a > num_b:
print("O valor de A é: {:.2f} \nO valor de B é: {:.2f}".format(num_a, num_b))
return pergunta()

elif num_a < num_b:
print("O valor de A é: {:.2f} \nO valor de B é: {:.2f}".format(num_a, num_b))
print("Valor de B maior que valor de A!")
exit(0)

pergunta()



6. Re: Dúvida sobre Python

Lisandro Guerra
Lisandro

(usa Linux Mint)

Enviado em 30/08/2020 - 22:09h

Skylen escreveu:

Boa noite,
Também estou aprendendo Python, fiquei alguns dias sem fazer exercício... Desculpe se o código ficou um pouco bruto...
Qualquer dúvida só perguntar...

Lisandro, você parece mais experiente, daria uma opinião no código? Obrigado!!


while True:
def pergunta():
num_a = float(input("Digite o valor para A: "))
num_b = float(input("Digite o valor para B: "))

if num_a == num_b:
print("Valores de A e B iguais!")
return pergunta()

elif num_a > num_b:
print("O valor de A é: {:.2f} \nO valor de B é: {:.2f}".format(num_a, num_b))
return pergunta()

elif num_a < num_b:
print("O valor de A é: {:.2f} \nO valor de B é: {:.2f}".format(num_a, num_b))
print("Valor de B maior que valor de A!")
exit(0)

pergunta()


Muito bom Mac.
Dois desafios pra ti:
1) Quando se dá um enter sem informação ou quando se fornece uma letra ou string o programa sangra. Que tal tratar isso?
2) É desejável que uma função faça apenas uma tarefa e a tua está fazendo a pergunta e a lógica. Quando se chama a função de dentro dela mesma repetidamente, acaba que vai consumindo memória. Então que tal dividir a função em pelo menos 2 e acabar com a chamada "recursiva"?

Bons estudos
Abraço






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts