recursion finding the remaining columns if we knew about method that found the sum of all the remaining columnswe could write our triangle(methodwhich returns the value of the nth triangular numberlike thisint triangle(int nreturnn sumremainingcolumns( )/(incomplete versionbut what have we gained hereit looks like writing the sumremainingcolumns(method is just as hard as writing the triangle(method in the first place notice in figure howeverthat the sum of all the remaining columns for term is the same as the sum of all the columns for term - thusif we knew about method that summed all the columns for term nwe could call it with an argument of - to find the sum of all the remaining columns for term nint triangle(int nreturnn sumallcolumns( - )/(incomplete versionbut when you think about itthe sumallcolumns(method is doing exactly the same thing the triangle(method issumming all the columns for some number passed as an argument so why not use the triangle(method itselfinstead of some other methodthat would look like thisint triangle(int nreturnn triangle( - )/(incomplete versionyou may be amazed that method can call itselfbut why shouldn' it be able toa method call is (among other thingsa transfer of control to the start of the method this transfer of control can take place from within the method as well as from outside passing the buck all these approaches may seem like passing the buck someone tells me to find the th triangular number know this is plus the th triangular numberso call harry and ask him to find the th triangular number when hear back from himi'll add to whatever he tells meand that will be the answer