Pascal Triangle i Java
Pascal Triangle i Java | Pascal trekant er en trekantet række af binomiale koefficienter. I pascals trekant er hvert tal summen af de to tal direkte over det.
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
Pascal Triangle-program i Java uden at bruge et array
Efter observation kan vi konkludere, at pascal altid starter med 1 og næste cifre i den givne række kan beregnes som, number = previous_number_in_row * (row–column) / column
import java.util.Scanner;
public class PascalTriangle {
public static void main(String[] args) {
// take input
Scanner scan = new Scanner(System.in);
int n = 0;
System.out.print("Enter Number of Rows:: ");
n = scan.nextInt();
displayPascalTriangle(n);
scan.close();
}
private static void displayPascalTriangle(int n) {
// temp variable
int a = 0;
// for negative numbers
if(n <= 0)
System.out.println("Enter Positive Number");
for(int i=1; i <= n; i++) {
// in each iteration start with 1
a = 1;
// print number
for(int j = 1; j <= i; j++) {
System.out.print(a + " ");
// update variable
a = a * (i-j) / j;
}
// new line
System.out.println();
}
}
}
Output for forskellige værdier:-
Indtast antal rækker::5
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
Indtast antal rækker::7
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
Pascal Triangle i Java i midten af skærmen
Vi kan vise pascal trekanten i midten af skærmen. Til dette skal du blot tilføje mellemrummene, før du viser hver række. Generelt kan vi på en computerskærm maksimalt vise 80 tegn vandret. Halvdelen af 80 er 40, så 40. pladsen er midten af stregen.
private static void displayPascalTriangle(int n) {
// temp variable
int a = 0;
// for negative numbers
if(n <= 0)
System.out.println("Enter Positive Number");
for(int i=1; i <= n; i++) {
// in each iteration start with 1
a = 1;
// add space
for(int s=1; s <= (40 - i); s++)
System.out.print(" ");
// print number
for(int j = 1; j <= i; j++) {
System.out.print(a + " ");
// update variable
a = a * (i-j) / j;
}
// new line
System.out.println();
}
}
Output:-
Enter Number of Rows:: 5
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
Enter Number of Rows:: 7
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
Pascal Triangle i Java ved hjælp af To-dimensional Array
Ved at bruge Java to-dimensionelle array kan vi finde array-elementer som,
if(j==0 || j==i) pascal[i][j] = 1;
else
pascal[i][j] = pascal[i-1][j-1] + pascal[i-1][j];
For den første og sidste kolonne er matrixelementet 1, og for de resterende elementer er det summen af de to tal direkte over det. Java-metoden kan skrives som,
private static void displayPascalTriangle(int n) {
// declare array
int pascal[][] = new int[n][n];
for(int i=0; i < n; i++) {
// add space
for(int s=1; s <= (40 - i); s++)
System.out.print(" ");
for(int j = 0; j <= i; j++) {
// calculate array elements
if(j==0 || j==i) pascal[i][j] = 1;
else
pascal[i][j] = pascal[i-1][j-1] + pascal[i-1][j];
// display array
System.out.print(pascal[i][j] +" ");
}
// new line
System.out.println();
}
}
Output:-
Enter Number of Rows:: 7
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1