Algoritmo para verificar se número é quadrado perfeito

O que é um quadrado perfeito

Um quadrado perfeito é um número inteiro que pode ser expresso como o quadrado exato de outro número inteiro. Em outras palavras, é um número que pode ser obtido multiplicando um número por si mesmo.
 
Por exemplo, 4 é um quadrado perfeito porque pode ser obtido multiplicando 2 por 2 (2 * 2 = 4). Da mesma forma, 9 é um quadrado perfeito porque pode ser obtido multiplicando 3 por 3 (3 * 3 = 9).
 
Já números como 6, 13 ou 21 não são quadrados perfeitos, pois não podem ser expressos como o quadrado exato de um número inteiro.
 

Algoritmo para verificar se um número é um quadrado perfeito

Podemos verificar se um número é um quadrado perfeito como os seguintes passos:
  1. Calculamos a raiz quadrada do número n fornecido.
  2. Eliminamos a parte decimal da raiz calculada.
  3. Multiplicamos a parte inteira que restou por ela própria.
  4. Comparamos o resultado dessa multiplicação com o valor n original.
  5. Se os valores forem idênticos, o número é um quadrado perfeito; caso contrário, não o é.
Vamos representar esses passos criando algoritmos: primeiramente um código usando português estruturado e, na sequência, o mesmo algoritmo em Python.
 

Algoritmo em Português Estruturado

Como verificar se um número é um quadrado perfeito usando o Portugol Studio:
 
programa
{
inclua biblioteca Matematica --> m
inclua biblioteca Tipos --> t

real n
inteiro raiz 

funcao inicio()
{
  escreva("Verificar se número é quadrado perfeito")
  escreva("\nDigite um número qualquer, positivo: ")
  leia(n)

  se(quadradoPerfeito(n)){
      escreva(n + " é quadrado perfeito.")
  }
  senao {
      escreva(n + " não é quadrado perfeito.")
  }
}

funcao logico quadradoPerfeito(real x) {
  raiz = t.real_para_inteiro(m.raiz(x, 2.0))
  retorne raiz * raiz == x
}
}

Algoritmo em Python

Como verificar se um número é um quadrado perfeito usando a linguagem Python
 
Programação em linguagem Python para iniciantes
Código:
 
import math

# Função que retorna true se n for quadrado perfeito, e false se não for.
def quadradoPerfeito(x):
    raiz = int(math.sqrt(x))
    return raiz*raiz == x

if __name__=='__main__':
    print("Verificar se número é quadrado perfeito")
    n = float(input('Digite um número qualquer, positivo: '))
    if(quadradoPerfeito(n)):
        print(f"{n} é quadrado perfeito.")
    else:
        print(f"{n} não é quadrado perfeito.")
 
 
É isso aí! No próximo tutorial veremos um uso bem interessante do cálculo de quadrados perfeitos: verificar se um número pertence à sequência de Fibonacci ou não.
 
Sobre Fábio dos Reis (1195 Artigos)
Fábio dos Reis trabalha com tecnologias variadas há mais de 30 anos, tendo atuado nos campos de Eletrônica, Telecomunicações, Programação de Computadores e Redes de Dados. É um entusiasta de Ciência e Tecnologia em geral, adora Viagens e Música, e estuda idiomas, além de ministrar cursos e palestras sobre diversas tecnologias em São Paulo e outras cidades do Brasil.
Contato: Website

Escreva um comentário

Seu e-mail não será divulgado


*