// Scott DeRuiter 7/17/01
// Pyramid.java
// Use recursion to deconstruct a String, printing out a pyramid of the letters.
// 7/20/2011 - Greenstein: Changed TextReader to Scanner
import java.util.Scanner;
public class Pyramid
{
private String chunk;
private String original;
public Pyramid ( )
{
chunk = "";
original = "";
}
public static void main ( String [] args )
{
Pyramid p = new Pyramid ( );
p.GetPhrase ( );
p.Deconstruct ( );
}
public void GetPhrase ( )
{
Scanner console = new Scanner ( );
do
{
System.out.print ( "\n\nEnter a phrase: " );
chunk = console.nextLine ( );
} while ( chunk == null );
if ( chunk.length ( ) % 2 == 0 )
chunk = chunk + " ";
original = chunk;
System.out.println ( "\n\n" );
}
public void Deconstruct ( )
{
Piece ( 0 );
System.out.println ( "\n\n" );
}
public String Piece ( int n )
{
chunk = original.substring ( original.length ( ) / 2 - n,
original.length ( ) / 2 + n + 1 );
System.out.println ( chunk );
if ( chunk.equals ( original ) )
return "";
else
return Piece ( n + 1 ) ;
}
}
Back to Lesson 13 Examples
Back to Java Main Page