Given a floating-point number N, the task is to check whether it is palindrome or not.
Input: N = 123.321
Output: Yes
Input: N = 122.1
Output: No
Approach:
- First, convert the given floating-point number into a character array.
- Initialize the low to first index and high to the last index.
- While low < high:
- If the character at low is not equal to the character at high then exit and print “No”.
- If the character at low is equal to the character at high then continue after incrementing low and decrementing high…
- If the above loop completes successfully then print “Yes”.
Below is the implementation of the above approach:
C++
// C++ implementation of the approach #include <bits/stdc++.h> using namespace std; // Function that returns true if num is palindrome bool isPalindrome( float num) { // Convert the given floating point number // into a string stringstream ss; ss << num; string s; ss >> s; // Pointers pointing to the first and // the last character of the string int low = 0; int high = s.size() - 1; while (low < high) { // Not a palindrome if (s[low] != s[high]) return false ; // Update the pointers low++; high--; } return true ; } // Driver code int main() { float n = 123.321f; if (isPalindrome(n)) cout << "Yes" ; else cout << "No" ; return 0; } // This code is contributed by Rajput-Ji |
Java
// Java implementation of the approach public class GFG { // Function that returns true if num is palindrome public static boolean isPalindrome( float num) { // Convert the given floating point number // into a string String s = String.valueOf(num); // Pointers pointing to the first and // the last character of the string int low = 0 ; int high = s.length() - 1 ; while (low < high) { // Not a palindrome if (s.charAt(low) != s.charAt(high)) return false ; // Update the pointers low++; high--; } return true ; } // Driver code public static void main(String args[]) { float n = 123 .321f; if (isPalindrome(n)) System.out.print( "Yes" ); else System.out.print( "No" ); } } |
Python3
# Python3 implementation of the approach # Function that returns true if num is palindrome def isPalindrome(num) : # Convert the given floating point number # into a string s = str (num) # Pointers pointing to the first and # the last character of the string low = 0 high = len (s) - 1 while (low < high): # Not a palindrome if (s[low] ! = s[high]): return False # Update the pointers low + = 1 high - = 1 return True # Driver code n = 123.321 if (isPalindrome(n)): print ( "Yes" ) else : print ( "No" ) # This code is contributed by ihritik |
C#
// C# implementation of the approach using System; class GFG { // Function that returns true // if num is palindrome public static bool isPalindrome( float num) { // Convert the given floating point number // into a string string s = num.ToString(); // Pointers pointing to the first and // the last character of the string int low = 0; int high = s.Length - 1; while (low < high) { // Not a palindrome if (s[low] != s[high]) return false ; // Update the pointers low++; high--; } return true ; } // Driver code public static void Main() { float n = 123.321f; if (isPalindrome(n)) Console.WriteLine( "Yes" ); else Console.WriteLine( "No" ); } } // This code is contributed by AnkitRai01 |
Javascript
<script> // Javascript implementation of the approach // Function that returns true if num is palindrome function isPalindrome(num) { // Convert the given floating point number // into a string var s = num.toString(); // Pointers pointing to the first and // the last character of the string var low = 0; var high = s.length - 1; while (low < high) { // Not a palindrome if (s[low] != s[high]) return false ; // Update the pointers low++; high--; } return true ; } // Driver code var n = 123.321; if (isPalindrome(n)) document.write( "Yes" ); else document.write( "No" ); </script> |
Yes
Time Complexity: O(N).
Auxiliary Space: O(1).
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 neveropen!