import java.util.Scanner;
成都服务器托管,创新互联建站提供包括服务器租用、成都服务器托管、带宽租用、云主机、机柜租用、主机租用托管、CDN网站加速、国际域名空间等业务的一体化完整服务。电话咨询:028-86922220
public class Yanghui {
public static void main(String[] args){
int i=0,j=0;
System.out.println("请输入一个数字:");
Scanner scanner=new Scanner(System.in);
int k=scanner.nextInt();
int a[][]=new int[k][2*k-1];
for(i=0;ik;i++){
for(j=k-i-1;((j=k-i-1)(j=k+i-1));j++){
if((j==k-i-1)||(j==k+i-1)||(j==k-1))
a[i][j]=1;
}
}
for(i=0;ik;i++){
for(j=k-i;((jk-i-1)(jk+i-1));j++){
if(jk-1)
a[i][j]=a[i-1][j]+a[i-1][j+1];
if(jk-1)
a[i][j]=a[i-1][j]+a[i-1][j-1];
}
}
for(i=0;ik;i++){
for(j=0;j(2*k-1);j++){
//System.out.print(a[i][j]+" ");
System.out.print((a[i][j] 0? a[i][j]: " ") + " ");
}
System.out.println(" ");
}
}
}
只需要改动一个地方就行了
对于你这个for循环。按照你输入的5来分析,第一个放一起的写法,这是只有一层循环,当(x,y)=(3,2)(4,3)(5,4)(6,5)时,满足循环条件,共循环四次。第二种分开写,两层循环,当外层x=3时,进去内层循环,y可取2,3,4,5。内层循环结束回到外层,x=4,进入内层,同理y可取2,3,4,5………
这样就进行了3*4=12次循环。
//打印等腰杨辉三角形
public class YHTriangle
{
public static void main(String[] args)
{
//定义二维数组的长度
int length = 10;
//声明二维数组
int[][] arr = new int[length][];
//遍历二维数组
for(int i = 0; i arr.length; i++){
//打印空格
for(int m = 0; m arr.length - 1 - i; m++){
System.out.print(" ");
}
//给每个二维数据的元素赋值一维数组
arr[i] = new int[i+1];
//遍历一维数组
for(int j = 0; j arr[i].length; j++){
//第一个元素和最后一个元素的值都是1
if( j == 0 || j == arr[i].length -1 ){
arr[i][j] = 1;
}else{
//当前一维数组的索引n元素的值,等于前一个数组索引n-1,加上索引n的值
arr[i][j] = arr[i -1][j - 1] + arr[i - 1][j];
}
//格式化输出元素值
System.out.printf("%4d",arr[i][j]);
}
//换行
System.out.println();
}
}
}
1.杨辉三角形由数字排列,可以把它看做一个数字表,其基本特性是两侧数值均为1,其他位置的数值是其正上方的数字与左上角数值之和,下面是java使用for循环输出包括10行在内的杨辉三角形\x0d\x0a\x0d\x0a2.思路是创建一个整型二维数组,包含10个一维数组。使用双层循环,在外层循环中初始化每一个第二层数组的大小。在内层循环中,先将两侧的数组元素赋值为1,其他数值通过公式计算,然后输出数组元素。\x0d\x0a代码如下:\x0d\x0apublic class YanghuiTriangle {\x0d\x0a public static void main(String[] args) {\x0d\x0a int triangle[][]=new int[10][];// 创建二维数组\x0d\x0a // 遍历二维数组的第一层\x0d\x0a for (int i = 0; i
回答于 2022-12-14
打印杨辉三角代码如下:
public class woo {
public static void triangle(int n) {
int[][] array = new int[n][n];//三角形数组
for(int i=0;iarray.length;i++){
for(int j=0;j=i;j++){
if(j==0||j==i){
array[i][j]=1;
}else{
array[i][j] = array[i-1][j-1]+array[i-1][j];
}
System.out.print(array[i][j]+"\t");
}
System.out.println();
}
}
public static void main(String args[]) {
triangle(9);
}
}
扩展资料:
杨辉三角起源于中国,在欧洲这个表叫做帕斯卡三角形。帕斯卡(1623----1662)是在1654年发现这一规律的,比杨辉要迟393年。它把二项式系数图形化,把组合数内在的一些代数性质直观地从图形中体现出来,是一种离散型的数与形的优美结合。
杨辉三角具有以下性质:
1、最外层的数字始终是1;
2、第二层是自然数列;
3、第三层是三角数列;
4、角数列相邻数字相加可得方数数列。
我的绝对正确 书上抄的 还验证过!
public static void main(String[]args){
int r=6;
int a[][]=new int[r+1][]; //表示6个一维数组组成
for(int i=0;i=r;i++){
a[i]=new int[i+1];} //表示使用for循环为一维数组指定列数
YangHui(a,r);
}
static void YangHui(int a[][],int r){
for(int i=0;i=r;i++){
for(int j=0;ja[i].length;j++){
if(i==0||j==0||j==a[i].length-1)
a[i][j]=1;
else
a[i][j]=a[i-1][j-1]+a[i-1][j];
}
}
for(int i=0;i=r;i++){
for(int j=0;ja[i].length;j++){
System.out.print(a[i][j]+" ");}
System.out.println();}
}
}