Nicomachu’s Theorem

Nicomachu’s Theorem states that sum of cubes of first n natural numbers is equal to squares of natural number sum.

1^{3}+2^{3}+3^{3}+\cdots +n^{3}=\left(1+2+3+\cdots +n\right)^{2}

In other words



1^{3}+2^{3}+3^{3}+\cdots +n^{3}=\left(n*(n+1)/2)^{2}

Or we can say that the sum is equal to square of n-th triangular number.

Mathematical Induction based proof can be found here.

C++

filter_none

edit
close

play_arrow

link
brightness_4
code

// CPP program to verify Nicomachu's Theorem
#include <bits/stdc++.h>
using namespace std;
  
void NicomachuTheorum_sum(int n)
{
   // Compute sum of cubes
   int sum = 0;
   for (int k=1; k<=n; k++)
      sum += k*k*k;
     
   // Check if sum is equal to
   // given formula.
   int triNo = n*(n+1)/2;
   if (sum == triNo * triNo)
     cout << "Yes";
   else
     cout << "No";
}
  
// driver function
int main()
{
    int n = 5;
    NicomachuTheorum_sum(n);
    return 0;
}

chevron_right


Java

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to verify Nicomachu's Theorem
import java.io.*;
  
class GFG {
  
    static void NicomachuTheorum_sum(int n)
    {
          
        // Compute sum of cubes
        int sum = 0;
          
        for (int k = 1; k <= n; k++)
            sum += k * k * k;
              
        // Check if sum is equal to
        // given formula.
        int triNo = n * (n + 1) / 2;
          
        if (sum == triNo * triNo)
            System.out.println("Yes");
        else
            System.out.println("No");
    }
      
    // driver function
    public static void main (String[] args)
    {
        int n = 5;
        NicomachuTheorum_sum(n);
    }
}
  
// This code is contributed by anuj_67.

chevron_right


Python3

filter_none

edit
close

play_arrow

link
brightness_4
code

# Python3 program to verify
# Nicomachu's Theorem
  
def NicomachuTheorum_sum(n):
      
    # Compute sum of cubes
    sum = 0;
    for k in range(1, n + 1):
        sum += k * k * k;
          
    # Check if sum is equal to
    # given formula.
    triNo = n * (n + 1) / 2;
    if (sum == triNo * triNo):
        print("Yes");
    else:
        print("No");
  
# Driver Code
n = 5;
NicomachuTheorum_sum(n);
  
# This code is contributed 
# by mits

chevron_right


C#

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# program to verify
// Nicomachu's Theorem
using System;
   
class GFG {
   
    static void NicomachuTheorum_sum(int n)
    {
           
        // Compute sum of cubes
        int sum = 0;
           
        for (int k = 1; k <= n; k++)
            sum += k * k * k;
               
        // Check if sum is equal to
        // given formula.
        int triNo = n * (n + 1) / 2;
           
        if (sum == triNo * triNo)
            Console.WriteLine("Yes");
        else
            Console.WriteLine("No");
    }
       
    // Driver Code
    public static void Main ()
    {
        int n = 5;
        NicomachuTheorum_sum(n);
    }
}
   
// This code is contributed by anuj_67

chevron_right


PHP

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
// PHP program to verify
// Nicomachu's Theorem
  
function NicomachuTheorum_sum($n)
{
      
    // Compute sum of cubes
    $sum = 0;
    for ($k = 1; $k <= $n; $k++)
        $sum += $k * $k * $k;
          
    // Check if sum is equal to
    // given formula.
    $triNo = $n * ($n + 1) / 2;
    if ($sum == $triNo * $triNo)
        echo "Yes";
    else
        echo "No";
}
  
    // Driver Code
    $n = 5;
    NicomachuTheorum_sum($n);
  
// This code is contributed by anuj_67.
?>

chevron_right


Output:

Yes


My Personal Notes arrow_drop_up

Maths is the language of nature

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.



Improved By : PawanMeena, vt_m, Mithun Kumar