According to Fermat’s Last Theorem, no three positive integers a, b, c satisfy the equation, for any integer value of n greater than 2. For n = 1 and n = 2, the equation have infinitely many solutions.
Some solutions for n = 1 are, 2 + 3 = 5 7 + 13 = 20 5 + 6 = 11 10 + 9 = 19 Some solutions for n = 2 are,
C++
// C++ program to verify fermat's last theorem // for a given range and n. #include <bits/stdc++.h> using namespace std; void testSomeNumbers( int limit, int n) { if (n < 3) return ; for ( int a=1; a<=limit; a++) for ( int b=a; b<=limit; b++) { // Check if there exists a triplet // such that a^n + b^n = c^n int pow_sum = pow (a, n) + pow (b, n); double c = pow (pow_sum, 1.0/n); int c_pow = pow (( int )c, n); if (c_pow == pow_sum) { cout << "Count example found" ; return ; } } cout << "No counter example within given" " range and data" ; } // driver code int main() { testSomeNumbers(10, 3); return 0; } |
Java
// Java program to verify fermat's last theorem // for a given range and n. import java.io.*; class GFG { static void testSomeNumbers( int limit, int n) { if (n < 3 ) return ; for ( int a = 1 ; a <= limit; a++) for ( int b = a; b <= limit; b++) { // Check if there exists a triplet // such that a^n + b^n = c^n int pow_sum = ( int )(Math.pow(a, n) + Math.pow(b, n)); double c = Math.pow(pow_sum, 1.0 / n); int c_pow = ( int )Math.pow(( int )c, n); if (c_pow == pow_sum) { System.out.println( "Count example found" ); return ; } } System.out.println( "No counter example within given" + " range and data" ); } // Driver code public static void main (String[] args) { testSomeNumbers( 12 , 5 ); } } // This code is contributed by vt_m. |
Python3
# Python3 program to verify fermat's last # theorem for a given range and n. def testSomeNumbers(limit, n) : if (n < 3 ): return for a in range ( 1 , limit + 1 ): for b in range (a, limit + 1 ): # Check if there exists a triplet # such that a^n + b^n = c^n pow_sum = pow (a, n) + pow (b, n) c = pow (pow_sum, 1.0 / n) c_pow = pow ( int (c), n) if (c_pow = = pow_sum): print ( "Count example found" ) return print ( "No counter example within given range and data" ) # Driver code testSomeNumbers( 10 , 3 ) # This code is contributed by Smitha Dinesh Semwal. |
C#
// C# program to verify fermat's last theorem // for a given range and n. using System; class GFG { static void testSomeNumbers( int limit, int n) { if (n < 3) return ; for ( int a = 1; a <= limit; a++) for ( int b = a; b <= limit; b++) { // Check if there exists a triplet // such that a^n + b^n = c^n int pow_sum = ( int )(Math.Pow(a, n) + Math.Pow(b, n)); double c = Math.Pow(pow_sum, 1.0 / n); int c_pow = ( int )Math.Pow(( int )c, n); if (c_pow == pow_sum) { Console.WriteLine( "Count example found" ); return ; } } Console.WriteLine( "No counter example within" + " given range and data" ); } // Driver code public static void Main () { testSomeNumbers(12, 3); } } // This code is contributed by vt_m. |
PHP
<?php // PHP program to verify fermat's // last theorem for a given range //and n. function testSomeNumbers( $limit , $n ) { if ( $n < 3) for ( $a = 1; $a <= $limit ; $a ++) for ( $b = $a ; $b <= $limit ; $b ++) { // Check if there exists a triplet // such that a^n + b^n = c^n $pow_sum = pow( $a , $n ) + pow( $b , $n ); $c = pow( $pow_sum , 1.0 / $n ); $c_pow = pow( $c , $n ); if ( $c_pow != $pow_sum ) { echo "Count example found" ; return ; } } echo "No counter example within " . "given range and data" ; } // Driver Code testSomeNumbers(10, 3); // This code is contributed by m_kit ?> |
Javascript
<script> // JavaScript program to verify fermat's last theorem // for a given range and n. function testSomeNumbers(limit, n) { if (n < 3) return ; for (let a = 1; a <= limit; a++) for (let b = a; b <= limit; b++) { // Check if there exists a triplet // such that a^n + b^n = c^n let pow_sum = (Math.pow(a, n) + Math.pow(b, n)); let c = Math.pow(pow_sum, 1.0 / n); let c_pow = Math.pow(Math.round(c), n); if (c_pow == pow_sum) { document.write( "Count example found" ); return ; } } document.write( "No counter example within given" + " range and data" ); } // Driver Code testSomeNumbers(12, 5); </script> |
No counter example within given range and data
Time Complexity: O(m2logn) , where m is the limit
Auxiliary Space: O(1)
Please suggest if someone has a better solution which is more efficient in terms of space and time.
This article is contributed by Aarti_Rathi. Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 neveropen!