本文目录一览:
- java怎么用一个一维数组输出杨辉三角(补充完整下列代码)
- java打印居中的杨辉三角形
- [用java 打印出如下杨辉三角形,总共打印9行 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1](#用java 打印出如下杨辉三角形,总共打印9行 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1)
- [java 输出杨辉三角](#java 输出杨辉三角)
java怎么用一个一维数组输出杨辉三角(补充完整下列代码)
public class ArrayExample {
public static void main(String[] args) {
int i = 1;
int yh[] = new int[8];
for (i = 0; i < 8; i++) {
}
}
}
java打印居中的杨辉三角形
改一下 pascalTriangle
函数就可以了。下面是程序:
import java.util.*;
public class PascalTriangle {
/**
* @param args
* 杨辉三角(Pascal triangle--帕斯卡三角形)
*/
public static void main(String[] args) {
// 二维数组
System.out.println("请输入层数:");
Scanner sc = new Scanner(System.in);
if (!sc.hasNextInt()) {
System.out.println("输入有误!");
System.exit(0);
}
int lay = sc.nextInt();
while (true) {
if (lay > 0) {
break;
} else {
System.out.println("输入有误!");
System.out.println("请再次输入层数:");
lay = sc.nextInt();
}
}
pasxalT(lay);
}
public static void pasxalT(int lay) {
int[][] ary = new int[lay + 1][lay + 1];
for (int k = 0; k < lay; k++) {
ary[k][0] = 1;
ary[k][k] = 1;
for (int j = 0; j < lay; j++) {
ary[k + 1][j + 1] = ary[k][j + 1] + ary[k][j];
}
}
for (int l = 0; l < ary.length - 1; l++) {
for (int j = lay; j > l; j--) {
System.out.print("*");
}
for (int j = 0; j < ary[l].length - 1; j++) {
if (ary[l][j] > 0) {
System.out.print(ary[l][j] + " ");
}
}
System.out.println();
}
}
}
用java 打印出如下杨辉三角形,总共打印9行 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1
//用递归做
import java.util.Scanner;
public class 杨辉三角 {
/**
* @param args
*/
private static int fun(int i, int j) {
// TODO Auto-generated method stub
if (j == 0 || j == i + 1)
return 1;
else
return fun(i - 1, j - 1) + fun(i - 1, j);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
System.out.println("请输入行数:");
int n = sc.nextInt();
int i = 0, j = 0;
for (i = 0; i <= n + 1; i++)
System.out.print(" ");
System.out.println(1);
for (i = 0; i < n; i++) {
for (j = 0; j < n - i; j++)
System.out.print(" ");
for (j = 0; j < i + 2; j++)
System.out.print(" " + fun(i, j));
System.out.println();
}
}
}
//可以打印任意行数
java 输出杨辉三角
//Yhsanjiao.java:
public class Yhsanjiao {
static public void main(String[] args) {
int[][] a = new int[10][10];
for (int i = 0; i < 10; i++)
for (int j = 0; j < 10; j++) {
if (j <= i) {
a[i][j] = 1;
if (j == 0) {
a[i][j] = 1;
} else {
a[i][j] = a[i - 1][j - 1] + a[i - 1][j];
}
} else {
a[i][j] = 1;
}
}
for (int i = 0; i < 10; i++) {
for (int k = 1; k <= 10 - i; k++)
System.out.printf(" ");
for (int j = 0; j <= i; j++) {
System.out.printf("%3d ", a[i][j]);
}
System.out.printf("\n");
}
}
}
1-10的杨辉三角形