# Generate a pythagoras triplet from a single integer

• Last Updated : 30 Apr, 2021

Given a single integer n [1, 1000000000], generate a Pythagoras triplet which includes n as one of its sides if possible.
Examples :

Input : 22
Output : Pythagoras Triplets exist i.e. 22 120 122

Input : 4
Output : Pythagoras Triplets exist i.e.  4 3 5

Input : 2
Output : No Pythagoras Triplet exists 

Explanation:
Definition: “Pythagorean triplets” are integer solutions to the Pythagorean Theorem, i.e. they satisfy the equation Our task is to generate a triplet from an integral value. This can be a confusing task because, the side given to us can be a hypotenuse or a non-hypotenuse side.
Starting to calculate triplets by putting them in a formula, it can be deduced that only for 1 and 2, no triplets are possible.
Further,
if n is even, our triplets are calculated by formula if n is odd, our triplets are calculated by formula Proof:
Pythagoras Theorem can also be written as i.e a*a = (c-b)(c+b)
a*a x 1 = a*a, thus and , this solution works if n is odd.
For even solution, , thus, we get the above formula when n is even.
Code

## C++

 // CPP program to find Pythagoras triplet// with one side as given number.#include using namespace std; // Function, to evaluate the Pythagoras triplet// with includes 'n' if possiblevoid evaluate(long long int n){     if (n == 1 || n == 2)        printf("No Pythagoras Triplet exists");     else if (n % 2 == 0) {         // Calculating for even case        long long int var = 1LL * n * n / 4;        printf("Pythagoras Triplets exist i.e. ");        printf("%lld %lld %lld", n, var - 1, var + 1);    }     else if (n % 2 != 0) {         // Calculating for odd case        long long int var = 1LL * n * n + 1;        printf("Pythagoras Triplets exist i.e. ");        printf("%lld %lld %lld", n, var / 2 - 1, var / 2);    }} // Driver functionint main(){    long long int n = 22;    evaluate(n);    return 0;}

## Java

 // Java program to find// Pythagoras triplet// with one side as// given number.import java.io.*; class GFG{     // Function, to evaluate// the Pythagoras triplet// with includes 'n' if// possiblestatic void evaluate( int n){    if (n == 1 || n == 2)        System.out.println("No Pythagoras " +                           "Triplet exists");     else if (n % 2 == 0)    {         // Calculating for even case        int var = 1 * n * n / 4;        System.out.print("Pythagoras Triplets " +                                  "exist i.e. ");        System.out.print(n + " ");        System.out.print(var - 1+ " ");        System.out.println(var + 1 +" ");    }     else if (n % 2 != 0)    {         int var = 1 * n * n + 1;        System.out.print("Pythagoras Triplets " +                                  "exist i.e. ");        System.out.print(n + " ");        System.out.print(var / 2 - 1 + " ");        System.out.println(var / 2 + " ");    }} // Driver Codepublic static void main(String[] args){    int n = 22;    evaluate(n);}} // This code is contributed// by ajit

## Python3

 # Python3 program to find# Pythagoras triplet with# one side as given number. # Function, to evaluate the# Pythagoras triplet with# includes 'n' if possibledef evaluate(n):    if (n == 1 or n == 2):        print("No Pythagoras" +            " Triplet exists");    elif (n % 2 == 0):                 # Calculating for        # even case        var = n * n / 4;        print("Pythagoras Triplets" +             " exist i.e. ", end = "");        print(int(n), " ", int(var - 1),                      " ", int(var + 1));    elif (n % 2 != 0):                 # Calculating for odd case        var = n * n + 1;        print("Pythagoras Triplets " +             "exist i.e. ", end = "");        print(int(n), " ", int(var / 2 - 1),                         " ", int(var / 2)); # Driver Coden = 22;evaluate(n); # This code is contributed by mits

## C#

 // C# program to find// Pythagoras triplet// with one side as// given number.using System; class GFG{     // Function, to evaluate// the Pythagoras triplet// with includes 'n' if// possiblestatic void evaluate(int n){    if (n == 1 || n == 2)        Console.WriteLine("No Pythagoras " +                          "Triplet exists");         else if (n % 2 == 0)    {         // Calculating for even case        int var = 1 * n * n / 4;        Console.Write("Pythagoras Triplets " +                               "exist i.e. ");        Console.Write(n + " ");        Console.Write(var - 1+ " ");        Console.WriteLine(var + 1 +" ");    }     else if (n % 2 != 0)    {        int var = 1 * n * n + 1;        Console.Write("Pythagoras Triplets " +                               "exist i.e. ");        Console.Write(n + " ");        Console.Write(var / 2 - 1 + " ");        Console.WriteLine(var / 2 + " ");    }} // Driver Codestatic public void Main (){    int n = 22;    evaluate(n);}} // This code is contributed// by ajit

## PHP

 

## Javascript

 

Output:

Pythagoras Triplets exist i.e. 22 120 122

My Personal Notes arrow_drop_up