3262 (line, diamond)

play with lines/diamond in java (external input class)

print diamond on shell

print diamond on shell



class j1exam01
{
    public static void printLine (int highest, int length)
    {
    int digit = 0;
    int help = 0;
    int spaces = (length - (2 * highest + 1)) / 2;
    //print leading spaces
    if (spaces > 0)
        {
        for (int i = 0; i < spaces; i++)
            {
            System.out.print (" ");
            }  
        }
    //print digits
    switch (highest)
        {
    //case highest 0
        case 0:
            {
            System.out.print ("0");
            break;
            }
    //case highest 1
        case 1:
            {
            System.out.print ("010");
            break;
            }  
    //case other
        default:
            {
            for (int i = 0; i  0)
    {
    for (int i = 0; i < spaces; i++)
        {
        System.out.print (" ");
        }
    }
    //print newline
    System.out.println();
    }
    public static void printDiamond (int center)
    {
    int digit = 0;
    int help = 0;
    int length = (2 * center) + 1;
    //print empty line
    System.out.println();
    //diamond
    switch (center)
        {
        case 0:
            {
            printLine (0, 1);
            break;
            }
        case 1:
            {
            printLine (0, 3);
            printLine (1, 3);
            printLine (0, 3);
            break;
            }
        default:
            {
            for (int i = 0; i < ((2 * center) + 1); i++)
                {
                if (i  center) { digit = center - help; help++; }
                printLine (digit, length);         
                }
            break;
            }
        }
    //print newline {([done in printLine()])}
    //print empty line
    System.out.println();
    }
    public static void main (String[] args)
    {
    int q = 0;
    int h, l, c;
    h = 0;
    l = 0;
    c = 0;
    //main menu
    do
        {
        q = eingabe.readInt("(1)line, (2)diamond or (3)end?");
        if (q == 1)
            {
            h = eingabe.readInt("highest:");
            l = eingabe.readInt("length:");
            printLine (h, l);
            }
        else if (q == 2)
            {
            c = eingabe.readInt("center:");
            printDiamond (c);
            }
        } while (!(q == 3));
    System.out.println ("this is the end");
    }
}

Leave a comment