Diamond-Darstellung mit Verschachtelten Schleifen

Ich habe viel gelernt hier, aber es ist eine Frage, die ich habe, die kann ich nicht sem zu finden.

Unserem letzten Auftrag, der von uns verlangt, verwenden Sie verschachtelte For-Schleifen in Java zur Anzeige eines Diamanten.

Muss das Programm mithilfe eines symbols durch den Benutzer eingegeben werden und zeichnen Sie die folgenden:

    %
   % %
  % % %
 % % % %
% % % % %
 % % % %
  % % %
   % %
    %

So weit, dass ich pseudo-codiert Hälfte Dreieck, und dann wollte ich code den umgekehrten Dreieck zu vervollständigen der gegenüberliegenden Seite, aber ich bekomme keine anderen als dies ohne die Erhöhung der Menge der Symbole erforderlich:

    *
   **
  ***
 ****
*****

Dies ist der code:

String symbol1; //User input, symbol to utilize

Scanner Keyboard = new Scanner (System.in); 
System.out.println("Enter the Symbol you wish to use: ");
symbol1 = Keyboard.next();

for (int i=0 ; i<5 ; i++)
{
    for (int k=5 ; k > i; k--)
    {
        System.out.print(" ");
    }
    for (int j=0; j<=i; j++)
    {
        System.out.print(symbol1);
    }
    System.out.println();
}



  }
}

Jede Eingabe wird sehr geschätzt!

*BEARBEITEN*

Ich wollte nach meinem Ende-code.
Es mag einfach sein, aber ich fühle durchgeführt.
Hoffentlich hilft es jemand irgendwann, wie ich hier geholfen!

Jubelt jeder.

import java.util.Scanner;

public class AlvaradoPgm04Bonus {

public static void main(String[] args) {

//Zeichnen Sie ein Diamant-mit symbol durch den Benutzer eingegeben.

String symbol1; //User input, symbol to utilize

Scanner Keyboard = new Scanner (System.in); //New scanner 
System.out.println("Enter the Symbol you wish to use: "); //Prompt user symbol input
symbol1 = Keyboard.next(); //Capture user input

    for (int i=0 ; i<5 ; i++){ //Begin for loop - increase until int is 5 long
        for (int k=8 ; k > i ; k--){ //nested loop - decrease space before int "i" (inverted invisible triangle)
            System.out.print(" "); //print space from nested loop before symbol1 
        }
        for (int j=0; j<=i; j++){ //nested loop - increase "j" until is equal to "i" 
            System.out.print(symbol1 + " "); //print symbol1 + space to form diamond
        }
        System.out.println(); //print above nested loop line by line

    } //begin new loop - inverted triangle

    for (int m = 4 ; m > 0 ; m--){ //decrease symbol by 1
        for (int n = 8 ; n >= m ; n--){ //match increase of space "invisible" triangle next to symbol to form upside down triangle
            System.out.print(" "); //print "invisible" triangle
        }
        for (int q = 0 ; q < m ; q++){ //nested loop to decrease symbol entered by user
            System.out.print(symbol1 + " "); //print inverted triangle made of user's input
        }

        System.out.println(); //print the loop in new line.

    }       //end loop

}//end main

} //Ende Klasse

  • Verwenden Sie ein Zeichen eingeben, die für das symbol eher als eine Zeichenfolge; es sei denn, Sie wollen support-Symbole breiter als ein Zeichen.
  • Ich war nicht auf der Suche nach der Antwort, sondern geführt bekommen, auf dem richtigen Weg. Ich bin neu in java, also bin ich noch in den Griff zu bekommen alles, was es zu wissen gibt und wie man mit den code zu tun, was ich will. Trotzdem danke. Jegliches feedback, das sicherlich geschätzt werden.
InformationsquelleAutor Zethen | 2013-10-09
Schreibe einen Kommentar