En este tutorial, escribiremos un programa java para comprobar si un número dado es un cuadrado perfecto.

Ejemplo de Java para comprobar si un número es un cuadrado perfecto

En este programa hemos creado un método definido por el usuario checkPerfectSquare() que toma un número como argumento y devuelve verdadero si el número es cuadrado perfecto; de lo contrario, devuelve falso.

En el método definido por el usuario estamos usando dos métodos de la clase Math, sqrt() método e floor() método. La Math.sqrt() El método encuentra la raíz cuadrada del número dado y el floor() encuentra el número entero más cercano al valor de la raíz cuadrada devuelto por sqrt() método. Luego calculamos la diferencia entre estos dos para verificar si la diferencia es cero o distinta de cero. Para un número cuadrado perfecto, esta diferencia debe ser cero, ya que la raíz cuadrada del número cuadrado perfecto es un número entero.

package com.beginnersbook;
import java.util.Scanner;
class JavaExample { 

    static boolean checkPerfectSquare(double x)  
    { 

	// finding the square root of given number 
	double sq = Math.sqrt(x); 

	/* Math.floor() returns closest integer value, for
	 * example Math.floor of 984.1 is 984, so if the value
	 * of sq is non integer than the below expression would
	 * be non-zero.
	 */
	return ((sq - Math.floor(sq)) == 0); 
    } 
 
    public static void main(String[] args)  
    { 
	System.out.print("Enter any number:");
	Scanner scanner = new Scanner(System.in);
	double num = scanner.nextDouble(); 
	scanner.close();

	if (checkPerfectSquare(num)) 
		System.out.print(num+ " is a perfect square number"); 
	else
		System.out.print(num+ " is not a perfect square number"); 
    } 
}

Producción:
Programa Java para comprobar el cuadrado perfecto

Ejemplos de Java relacionados

1. Programa Java para dividir el número entero en dígitos.
2. Programa Java para comprobar el número Armstrong
3. Programa Java para verificar el número primo
4. Programa Java para controlar el año bisiesto

leer  Programa Java para convertir decimales a binarios

Por avivcas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *