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.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Möchten Sie vielleicht zu bemerken, dass die erwartete Ausgabe Leerzeichen nach jedem symbol, da Sie wissen, wie Sie zu drucken einen Raum und ich würde davon ausgehen, Sie wissen, wo Sie drucken wollen, Ihr symbol sollte es einfach sein für Sie hinzufügen, um den Druck von einem Platz nach einem symbol.
Dann hast du die Hälfte des Diamanten, die untere Hälfte ist genau das gleiche In die entgegengesetzte Richtung, Wenn Sie kommen, mein Tipp.
Paket moreloops;
import java.util.Scanner;
public class Diamond {
}
meine Ausgabe lol
5
*
**
*
}
Helfen wird