作业帮 > 综合 > 作业

用Java编写一个程序可以打印如下三角形

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/13 19:14:07
用Java编写一个程序可以打印如下三角形

一定要有详细的说明才行!


首先要分析业务逻辑:
打印10行的三角 
第0行打印10个空格,   打印1个*    打印0个空格,  (打印0个* 此处判断,如果i=0,就不打印*)
第1行打印9个空格 ,    打印1个*    打印1个空格,  打印1个*
第2行打印8个空格,     打印1个*    打印3个空格,  打印1个*
第3行打印7个空格,     打印1个*    打印5个空格,  打印1个*
.
第i行打印10-i个空格,  打印1个*    打印2*i-1个空格  打印1个*
最后一行,打印2*10-1个*即可

完整代码如下,验证OK,可以任意修改需要打印的行数
 
public class SanJiao {
 public static void main(String args[]) {
  int num = 10;//打印行数
  printSanJiao(num);
 }
 private static void printSanJiao(int num) {
  for (int i = 0; i < num; i++) {//打印行数
   for (int n = num - i; n > 0; n--) {//打印左边的空格
    System.out.print(" ");
   }
   System.out.print("*");//打印一个*
   for (int j = 0; j < 2 * i - 1; j++) {//打印中间的空格
    System.out.print(" ");
   }
   if(i == 0){//判断是否为第一行,如果是,就打印空,否则就打印*
    System.out.println();
   }else{
    System.out.println("*");
   }
  }
  for(int m=0; m<2*num+1; m++){//最后一行全部打印*
   System.out.print("*");
  }
 }
}