1
resposta

[Dúvida] como poderia deixar o código mais limpo? estou com dificuldades

def aplicar_porcetagem(valorc,valorp):
    gorjeta=((valorc*valorp)/100)
    valor_total=valorc+gorjeta
    print(f'\nValor da gorjeta: {gorjeta}')
    print(f'\nTotal a pagar: {valor_total}')


print('Aplique o valor da porcetagem no valor da conta')
valor_conta=float(input('\nDigite o valor da conta: '))
valor_porcentagem=float(input('Digite o valor da porcetagem: '))
resultado= aplicar_porcetagem(valor_conta,valor_porcentagem)
1 resposta

Oii, Andressa.

Legal ver sua dedicação em melhorar o código! Ele já funciona, o que é o mais importante, mas podemos sim deixá-lo mais "limpo" com alguns ajustes simples.

A primeira dica é sobre os nomes das variáveis. Em programação, ler o código deve ser quase como ler um texto em português. Nomes abreviados como valorc e valorp funcionam, mas valor_conta e porcentagem deixam claro o que são, sem que a gente precise adivinhar.

O segundo ponto é sobre a função. Uma boa prática é fazer com que a função apenas calcule e devolva (use o return) o resultado, deixando o print (a exibição na tela) para o fluxo principal do programa.

Uma sugestão de como aplicar essas melhorias:

def calcular_total(valor_conta, porcentagem):
    gorjeta = (valor_conta * porcentagem) / 100
    total = valor_conta + gorjeta
    return gorjeta, total

print('Calculadora de Gorjetas')
valor_conta = float(input('Digite o valor da conta: '))
porcentagem = float(input('Digite a porcentagem da gorjeta: '))

# aqui a função devolve os valores e guardamos em variáveis
gorjeta_calculada, total_final = calcular_total(valor_conta, porcentagem)

print(f'\nValor da gorjeta: R$ {gorjeta_calculada:.2f}')
print(f'Total a pagar: R$ {total_final:.2f}')

Veja que usei :.2f dentro das chaves do print. Isso formata o número para aparecer sempre com duas casas decimais (como moedas).

Você está mandando super bem, continue praticando.

Conteúdos relacionados
Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!