If the square root of the next value of the input number is the perfect square of any number, the number is called a sunshine number.
To further explain, if we add 1 to any number, we get the next value. Then we need to find its square root. If we get an integer value, then we can say that it is the perfect square of some number. If we confirm that the next number has a perfect square, then the entered number is a sunshine number, otherwise it is not a sunshine number.
In this article, we will see how to check if a number is a sunshine number using Java programming language.
The number entered is 80.
Let’s check this using the logic of sunshine numbers.
The next value of80 = 80 1 = 81
The square root of 81=9
As we noticed here, 81 is the perfect square of 9.
Therefore, 80 is a sunny number.
The Chinese translation ofThe number entered is 48.
Let’s check this using the logic of sunshine numbers.
Next value of48 = 48 1 = 49
The square root of 49=7
As we noticed here, 49 is a perfect square of 7.
Therefore, 48 is a sunshine number.
The Chinese translation ofThe number entered is 122.
Let’s check this using the logic of sunshine numbers.
Next value of122 = 122 1 = 123
The square root of 123=11.09053651
As we noticed here, 123 is not a perfect square.
Therefore, 122 is a sunshine number.
Some other examples of sunshine numbers include 3, 8, 15, 24, 35, 48, 63, etc.
To get the square root of a number, we can use the built-in sqrt() method in the Math class in the java.lang package.
The following is the syntax for using this method to get the square root of any number.
double squareRoot = Math.sqrt(input_vale)
You can use Math.floor() to find the closest integer value.
Math.floor(square_root)
Step 1 - Get an integer through initialization or user input.
Step 2 - Then we find its next value by adding 1 to it and store it in another variable.
Step 3 - We find the square root of the next value.
Step 4 - Now we are finding the closest perfect square root and subtracting it from the next square root value.
Step 5 - If the value after subtraction is zero, then we will get confirmation that it is an integer value, meaning that the next value is the perfect square of any number.
Step 6 − If we get confirmation that the next number is a perfect square number, then print that number is a sunshine number, otherwise it is not a sunshine number.
We provide solutions in different ways.
By using static input values
By using user-defined methods
Let’s look at the program and its output one by one.
In this method, the program will initialize an integer value, and then by using an algorithm, we can check whether a number is a sunshine number.
The Chinese translation ofimport java.util.*; public class Main{ public static void main(String args[]){ //declare an int variable and initialize with a static value int inputNumber=8; //declare a variable which store next value of input number double next=inputNumber + 1; //Find the square root of the next number //store it as double value double square_root = Math.sqrt(next); //check whether the square root is a integer value or not //if yes return true otherwise false if(((square_root - Math.floor(square_root)) == 0)) //if true then print it is a sunny number System.out.println(inputNumber + " is a sunny number."); else //if true then print it is a sunny number System.out.println(inputNumber + " is not a sunny number."); } }
8 is not a sunny number.
In this method we assign a static value as the input number and pass that number as parameter to a user defined method and then inside the method by using an algorithm we can check if the number is a Sunny numbers.
The Chinese translation ofimport java.util.*; public class Main{ public static void main(String args[]){ //declare an int variable and initialize with a static value int inp=15; //call the user defined method inside the conditional statement if(checkSunny(inp)) //if true then print it is a sunny number System.out.println(inp + " is a sunny number."); else //if true then print it is a sunny number System.out.println(" is not a sunny number."); } //define the user defined method static boolean checkSunny(int inputNumber){ //declare a variable which store next value of input number double next=inputNumber + 1; //Find the square root of the next number // store it as double value double square_root = Math.sqrt(next); //check whether the square root is a integer value or not //if yes return true otherwise false return ((square_root - Math.floor(square_root)) == 0); } }
15 is a sunny number.
In this article, we explored how to check if a number is positive in Java using three different methods.
The above is the detailed content of How to check if a number is a sunshine number in Java?. For more information, please follow other related articles on the PHP Chinese website!