Java实现杨辉三角等腰三角形
时间: 2023-09-01 13:10:28 浏览: 76
好的,我可以回答这个问题。Java可以实现杨辉三角等腰三角形,基本的代码实现如下:
```java
public static void printYangHuiTriangle(int n) {
int[][] arr = new int[n][n];
for (int i = 0; i < n; i++) {
arr[i][0] = 1;
arr[i][i] = 1;
for (int j = 1; j < i; j++) {
arr[i][j] = arr[i-1][j] + arr[i-1][j-1];
}
}
// 打印三角形
for (int i = 0; i < n; i++) {
for (int j = 0; j <= i; j++) {
System.out.print(arr[i][j] + " ");
}
System.out.println();
}
}
```
这段代码可以打印一个n行的杨辉三角等腰三角形。
相关问题
java等腰杨辉三角形
腰杨辉三角形是一种特殊的杨辉三角形,它的每一行都是对称的,中间的数值最大。在Java中,可以使用循环和二维数组来实现腰杨辉三角形的打印。
下面是一个示例代码:
```java
public class PascalTriangle {
public static void main(String[] args) {
int rows = 6; // 设置要打印的行数
int[][] triangle = new int[rows][2 * rows - 1]; // 创建一个二维数组来存储腰杨辉三角形的数值
// 初始化第一行
triangle[0][rows - 1] = 1;
// 通过循环计算每一行的数值
for (int i = 1; i < rows; i++) {
for (int j = 0; j < 2 * rows - 1; j++) {
if (j == 0 || j == 2 * rows - 2) {
triangle[i][j] = 1;
} else {
triangle[i][j] = triangle[i - 1][j - 1] + triangle[i - 1][j + 1]; }
}
}
// 打印腰杨辉三角形
for (int i = 0; i < rows; i++) {
for (int j = 0; j < 2 * rows - 1; j++) {
if (triangle[i][j] ! 0) {
System.out.print(triangle[i][j] + " ");
}
}
System.out.println();
}
}
}
```
运行以上代码,将会输出一个6行的腰杨辉三角形:
```
1
1 2 1
1 3 3 1
4 6 4 1
```
java键杨辉三角形
Java中的杨辉三角形是一个数字三角形,其中每个数字是上方两个数字的和。以下是一个示例代码来生成杨辉三角形:
```java
import java.util.ArrayList;
import java.util.List;
public class YangHuiTriangle {
public static List<List<Integer>> generate(int numRows) {
List<List<Integer>> triangle = new ArrayList<>();
if (numRows == 0) {
return triangle;
}
// 第一行始终为1
triangle.add(new ArrayList<>());
triangle.get(0).add(1);
for (int rowNum = 1; rowNum < numRows; rowNum++) {
List<Integer> row = new ArrayList<>();
List<Integer> prevRow = triangle.get(rowNum - 1);
// 每一行的第一个元素始终为1
row.add(1);
for (int j = 1; j < rowNum; j++) {
// 当前元素等于上一行的两个元素之和
row.add(prevRow.get(j - 1) + prevRow.get(j));
}
// 每一行的最后一个元素始终为1
row.add(1);
triangle.add(row);
}
return triangle;
}
public static void main(String[] args) {
int numRows = 5;
List<List<Integer>> triangle = generate(numRows);
// 打印杨辉三角形
for (List<Integer> row : triangle) {
for (Integer num : row) {
System.out.print(num + " ");
}
System.out.println();
}
}
}
```
运行以上代码,将会输出一个5行的杨辉三角形:
```
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
```