Pyramid Pattern Programme in Java
Pattern-Programme werden oft in Vorstellungsgesprächen verwendet, um die logischen Denkfähigkeiten des Bewerbers zu verstehen. Pyramid Patterns sind sehr beliebt und sobald wir die Logik ihrer Erstellung verstehen, ist es eine einfache Aufgabe, Code zu schreiben, um dasselbe zu erreichen.
Hier stelle ich einige Beispiele vor, um verschiedene Pyramid Patterns aus Zahlen, Symbolen usw. zu erstellen. Wir werden uns auch einige Beispiele für die Erstellung von invertierten Pyramid Patterns in Java-Programmen ansehen. Wir werden versuchen, den Code einfach zu halten, damit er leicht verstanden werden kann.
Pyramid Pattern aus Zahlen
Wenn Sie sich das erste Muster ansehen, enthält jede Zeile dieselbe Anzahl, die gleich oft gedruckt wird. Jede Zeile hat jedoch führende Leerzeichen, deren Anzahl „Reihen-i“ ist. Schauen wir uns das Programm an, um dieses Muster zu drucken.
package com.journaldev.patterns.pyramid;
import java.util.Scanner;
public class PyramidPattern {
private static void printPattern1(int rows) {
// for loop for the rows
for (int i = 1; i <= rows; i++) {
// white spaces in the front of the numbers
int numberOfWhiteSpaces = rows - i;
//print leading white spaces
printString(" ", numberOfWhiteSpaces);
//print numbers
printString(i + " ", i);
//move to next line
System.out.println("");
}
}
//utility function to print string given times
private static void printString(String s, int times) {
for (int j = 0; j < times; j++) {
System.out.print(s);
}
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("Please enter the rows to print:");
int rows = scanner.nextInt();
// System.out.println("Rows = "+rows);
scanner.close();
System.out.println("Printing Pattern 1\n");
printPattern1(rows);
}
}
Beachten Sie, dass ich eine Utility-Funktion für eine gewöhnliche String-Druckaufgabe erstellt habe. Wenn Sie Ihr Programm in kurze, wiederverwendbare Funktionen aufteilen können, dann zeigt das, dass Sie nicht nur darauf achten, das Programm zu schreiben, sondern auch seine Qualität und Wiederverwendbarkeit sicherstellen wollen. Wenn wir das obige Programm ausführen, erhalten wir die folgende Ausgabe.
Please enter the rows to print:
9
Printing Pattern 1
1
2 2
3 3 3
4 4 4 4
5 5 5 5 5
6 6 6 6 6 6
7 7 7 7 7 7 7
8 8 8 8 8 8 8 8
9 9 9 9 9 9 9 9 9
Pyramid Pattern mit zunehmenden Zahlen
Hier ist die Funktion, um Muster 2 zu drucken. Der Schlüsselpunkt ist die Anzahl der führenden Leerzeichen und dann werden die Zahlen in steigender Reihenfolge gedruckt.
/**
*
* Program to print below pyramid structure
* 1
1 2
1 2 3
1 2 3 4
1 2 3 4 5
1 2 3 4 5 6
1 2 3 4 5 6 7
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7 8 9
*/
private static void printPattern2(int rows) {
// for loop for the rows
for (int i = 1; i <= rows; i++) {
// white spaces in the front of the numbers
int numberOfWhiteSpaces = rows - i;
//print leading white spaces
printString(" ", numberOfWhiteSpaces);
//print numbers
for(int x = 1; x<=i; x++) {
System.out.print(x+" ");
}
//move to next line
System.out.println("");
}
}
Pyramide aus Charakteren
Dies ist ein wirklich einfaches, wir müssen nur den Charakter drucken, ohne irgendwelche Berechnungen oder Manipulationen.
/**
* Program to print following pyramid structure
*
* *
* * *
* * * *
* * * * *
* * * * * *
* * * * * * *
* * * * * * * *
* * * * * * * * *
*/
private static void printPattern3(int rows) {
// for loop for the rows
for (int i = 1; i <= rows; i++) {
// white spaces in the front of the numbers
int numberOfWhiteSpaces = rows - i;
//print leading white spaces
printString(" ", numberOfWhiteSpaces);
//print character
printString("* ", i);
//move to next line
System.out.println("");
}
}
Pyramid Pattern 4 Programm
/**
*
* 1
1 2 1
1 2 3 2 1
1 2 3 4 3 2 1
1 2 3 4 5 4 3 2 1
1 2 3 4 5 6 5 4 3 2 1
1 2 3 4 5 6 7 6 5 4 3 2 1
1 2 3 4 5 6 7 8 7 6 5 4 3 2 1
1 2 3 4 5 6 7 8 9 8 7 6 5 4 3 2 1
*/
private static void printPattern4(int rows) {
// for loop for the rows
for (int i = 1; i <= rows; i++) {
// white spaces in the front of the numbers
int numberOfWhiteSpaces = (rows-i)*2;
//print leading white spaces
printString(" ", numberOfWhiteSpaces);
//print numbers
for(int x=1; x0; j--) {
System.out.print(j+" ");
}
//move to next line
System.out.println("");
}
}
Beachten Sie, dass jede Zeile 2*r-1 Zahlen hat. Also werden wir (Reihen-i)*2 Leerzeichen haben, bevor wir irgendeine Zahl drucken. Dann beginnen die Zahlen von 1 bis „i“ und dann wieder zu 1. Unsere Logik, die Zahlen zu drucken, würde zwei For-Schleifen erfordern, um dies zu erreichen.
Pyramid Pattern 5 Programm in Java
Hier ist der Code-Snippet für das invertierte Pyramidenprogramm.
/**
*
* 9
8 9 8
7 8 9 8 7
6 7 8 9 8 7 6
5 6 7 8 9 8 7 6 5
4 5 6 7 8 9 8 7 6 5 4
3 4 5 6 7 8 9 8 7 6 5 4 3
2 3 4 5 6 7 8 9 8 7 6 5 4 3 2
1 2 3 4 5 6 7 8 9 8 7 6 5 4 3 2 1
*/
private static void printPattern5(int rows) {
// for loop for the rows
for (int i = rows; i >= 1; i--) {
// white spaces in the front of the numbers
int numberOfWhiteSpaces = i*2;
//print leading white spaces
printString(" ", numberOfWhiteSpaces);
//print numbers
for(int x=i; x=i; j--) {
System.out.print(j+" ");
}
//move to next line
System.out.println("");
}
}
Invertiertes Pyramid Pattern aus Charakteren
/**
*
* * * * * * * * *
* * * * * * * *
* * * * * * *
* * * * * *
* * * * *
* * * *
* * *
* *
*
*/
private static void printPattern6(int rows) {
// for loop for the rows
for (int i = rows; i >= 1; i--) {
// white spaces in the front of the numbers
int numberOfWhiteSpaces = rows - i;
//print leading white spaces
printString(" ", numberOfWhiteSpaces);
//print character
printString("* ", i);
//move to next line
System.out.println("");
}
}
Inverted Pyramid Pattern aus Zahlen
/**
*
9 9 9 9 9 9 9 9 9
8 8 8 8 8 8 8 8
7 7 7 7 7 7 7
6 6 6 6 6 6
5 5 5 5 5
4 4 4 4
3 3 3
2 2
1
*/
private static void printPattern7(int rows) {
// for loop for the rows
for (int i = rows; i >= 1; i--) {
// white spaces in the front of the numbers
int numberOfWhiteSpaces = rows - i;
//print leading white spaces
printString(" ", numberOfWhiteSpaces);
//print character
printString(i+" ", i);
//move to next line
System.out.println("");
}
}
Schlussfolgerung
Es gibt viele Arten von Pyramid Patterns. Der wichtigste Punkt ist, das Muster zu verstehen, in dem Zahlen und Leerzeichen organisiert sind. Sobald Sie das Muster klar verstehen, können Sie den Code leicht in Java oder einer anderen Programmiersprache schreiben.