Open In App

Find the Next perfect square greater than a given number

Last Updated : 25 Sep, 2022
Improve
Improve
Like Article
Like
Save
Share
Report

Given a number N, the task is to find the next perfect square greater than N.
Examples

Input: N = 6
Output: 9
Explanation: 9 is a greater number than 6 and is also a perfect square

Input: N = 9
Output: 16

Approach:  

  1. Find the square root of given N.
  2. Calculate its floor value using floor function in C++.
  3. Then add 1 to it.
  4. Print square of that number.

Below is the implementation of above approach:  

C++




// C++ implementation of above approach
#include <iostream>
#include<cmath>
using namespace std;
 
// Function to find the next perfect square
int nextPerfectSquare(int N)
{
    int nextN = floor(sqrt(N)) + 1;
 
    return nextN * nextN;
}
 
// Driver Code
int main()
{
    int n = 35;
 
    cout << nextPerfectSquare(n);
    return 0;
}


Java




// Java implementation of above approach
import java.util.*;
import java.lang.*;
import java.io.*;
 
class GFG
{
     
// Function to find the
// next perfect square
static int nextPerfectSquare(int N)
{
    int nextN = (int)Math.floor(Math.sqrt(N)) + 1;
 
    return nextN * nextN;
}
 
// Driver Code
public static void main(String args[])
{
    int n = 35;
 
    System.out.println (nextPerfectSquare(n));
}
}
 
// This code is contributed by Subhadeep


Python3




# Python3 implementation of above approach
 
import math
#Function to find the next perfect square
 
def nextPerfectSquare(N):
 
    nextN = math.floor(math.sqrt(N)) + 1
 
    return nextN * nextN
 
if __name__=='__main__':
    N = 35
    print(nextPerfectSquare(N))
 
# this code is contributed by Surendra_Gangwar


C#




// C# implementation of above approach
using System;
 
class GFG
{
     
// Function to find the
// next perfect square
static int nextPerfectSquare(int N)
{
    int nextN = (int)Math.Floor(Math.Sqrt(N)) + 1;
 
    return nextN * nextN;
}
 
// Driver Code
public static void Main()
{
    int n = 35;
 
    Console.WriteLine(nextPerfectSquare(n));
}
}
 
// This code is contributed
// by Shashank


PHP




<?php
// PHP implementation
// of above approach
 
// Function to find the
// next perfect square
function nextPerfectSquare($N)
{
    $nextN = floor(sqrt($N)) + 1;
 
    return $nextN * $nextN;
}
 
// Driver Code
$n = 35;
 
echo nextPerfectSquare($n);
 
// This code is contributed by mits
?>


Javascript




<script>
// Javascript implementation of above approach
 
// Function to find the next perfect square
function nextPerfectSquare(N)
{
    let nextN = Math.floor(Math.sqrt(N)) + 1;
 
    return nextN * nextN;
}
 
// Driver Code
let n = 35;
 
document.write(nextPerfectSquare(n));
 
// This code is contributed by souravmahato348.
</script>


Output: 

36

 

Time Complexity: O(logn) for given number n, as it is using inbuilt sqrt function
Auxiliary Space: O(1)



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads