Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Concluído]Desafio: hora da prática

Tem sido um processo bastante desafiador para mim, mas ao mesmo tempo muito empolgante. Deixo abaixo os meus resultados. Acabei aproveitando para testar algumas alternativas em algumas questões por pura curiosidade e para fins de checagem mesmo. Se alguém tiver algum feedback ou notar algo que possa ser melhorado, fiquem à vontade! Obrigado.

Questão 1 e 2
Questão 3
Questão 1
Questão 2 e 3
Questão 4 e 5
Questão 6 e 7
Questão 8
Questão 9
Questão 10
Questão 1, 2 e 3
Questão 4, 5 e 6
Questão 7 e 8
Questão 9 e 10

2 respostas
solução!

Olá, Kevin. Como vai?

Parabéns pela dedicação e pelo excelente desempenho nos desafios! É muito bacana ver que, além de resolver os problemas, você teve a curiosidade de explorar alternativas e testar diferentes formas de chegar ao mesmo resultado, como nas duas resoluções da Questão 8 sobre o resto da divisão.

Analisando as imagens do seu projeto, notei que você já domina bem o uso de métodos de strings e operadores aritméticos. Gostaria de destacar alguns pontos técnicos bem interessantes que você aplicou e dar uma pequena sugestão de boas práticas:

  • Uso Criativo de Funções: Na Questão 9 e 10, você utilizou chr(64) para o @ e chr(36) para o $. Embora passar o caractere direto entre aspas seja o mais comum, usar o código ASCII com chr() demonstra um ótimo conhecimento de fundamentos da computação.
  • Encadeamento de Métodos: Você aplicou muito bem o encadeamento, como em frase.lower().replace().capitalize(). Isso deixa o código enxuto e elegante.
  • Substituição de Pontuação: Na Questão 6 e na de Altura, você usou o .replace(',', '.'). Essa é uma técnica essencial em Data Science no Brasil, já que nossos dados costumam vir com vírgula, mas o Python exige o ponto para reconhecer números do tipo float.

Uma pequena sugestão de melhoria:
Nas questões que envolvem divisão e resto (como a Questão 8), seu código está logicamente correto, mas ele pode gerar um erro chamado ZeroDivisionError caso o usuário digite 0 no denominador, mesmo com o aviso no input. Em projetos futuros, você pode começar a explorar o tratamento de exceções ou uma estrutura condicional para validar se o divisor é diferente de zero antes de realizar o cálculo:

if d_divisor != 0:
    resto = n_dividendo % d_divisor
    print(f'O resto é {resto}')
else:
    print('Erro: Não é possível dividir por zero!')

Além disso, notei que você usou códigos de escape ANSI (como \033[33m) para colorir o texto no terminal. Isso mostra um capricho extra com a experiência do usuário (UX) do seu programa!

Continue com esse entusiasmo e essa pegada investigativa, pois é exatamente essa curiosidade que forma bons cientistas de dados.

Espero que possa ter lhe ajudado!

Obrigado Evandro, pode deixar! Ajudou bastante, agradeço o feedback, sempre muito bem vindo.