1
resposta

Resolução exercício 9: Raiz quadrada inteira.

from math import sqrt

numeros = [2, 8, 15, 23, 91, 112, 256]
raiz_inteira = []

for numero in numeros:
  if sqrt(numero) // 1 == sqrt(numero):
    raiz_inteira.append(int(sqrt(numero)))
   
if len(raiz_inteira) == 1:
  print(f"O número com raiz inteira é: {(raiz_inteira[0])}")
else:
  # transforma a lista de inteiros em uma string separada por vírgula
    print(f"Os números com raízes inteiras são: {', '.join(map(str, raiz_inteira))}.")

Matricule-se agora e aproveite até 50% OFF

O maior desconto do ano para você evoluir com a maior escola de tecnologia

QUERO APROVEITAR
1 resposta

Oi, Eryck! Como vai?

Agradeço por compartilhar seu código com a comunidade Alura.

Gostei bastante da forma como você utilizou a função sqrt() da biblioteca math e aplicou a verificação para identificar números com raiz quadrada inteira. O uso de // 1 foi uma boa ideia para garantir que o valor seja realmente inteiro.

Uma dica interessante para o futuro é testar o método is_integer(). Veja este exemplo:


from math import sqrt

numeros = [2, 8, 15, 23, 91, 112, 256]
raiz_inteira = [int(sqrt(n)) for n in numeros if sqrt(n).is_integer()]

print(raiz_inteira)

Esse código percorre a lista e adiciona apenas as raízes que são números inteiros, deixando o resultado mais direto e fácil de entender.

Qualquer dúvida que surgir, compartilhe no fórum. Abraços e bons estudos!

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