黑马程序员技术交流社区

标题: for循环 [打印本页]

作者: 杨立考    时间: 2012-9-26 19:47
标题: for循环
怎么打印一个等腰三角形?
作者: 宫明星    时间: 2012-9-26 19:52
本帖最后由 宫明星 于 2012-9-26 20:08 编辑
  1. class ForFor
  2. {
  3.         public static void main(String[] args)
  4.         {
  5.                 for (int x=1;x<7 ;x++)
  6.                 {
  7.                         for (int z=6;z>x ;z-- )        //打印前面的空位,随着行数依次减少
  8.                        {
  9.                                 System.out.print(' ');
  10.                         }
  11.                         for (int y=0;y<x ;y++ )        //打印半个三角形,即是三角形的左半部分
  12.                         {
  13.                                 System.out.print('*');
  14.                         }
  15.                         for (int y=1;y<x ;y++ )        //打印三角形的右半部分,注意,这时候 y=1
  16.                         {
  17.                                 System.out.print('*');
  18.                         }
  19.                         System.out.println();
  20.                 }
  21.         }
  22. }
复制代码
结果如图

这个等腰三角形是由
*
**
***
****
*****
演化而来的,楼主可以自己试试。
作者: Jordon    时间: 2012-9-26 20:21
class DengYaoSanJiaoDemo
{
        public static void main(String[] args)
        {
                for(int a=1;a<=5;a++)
                {
                        for(int b=1;b<=5-a;b++)
                        {
                                System.out.print(" ");
                        }
                        for(int b=1;b<=a;b++)
                        {
                                System.out.print(" *");
                        }
                        for(int b=1;b<=5-a;b++)
                        {
                                System.out.print(" ");
                        }
                        System.out.println();
                }
        }
}
这样也行吧
作者: 柏占肖    时间: 2012-9-26 21:09
  1. public class Test {
  2.         public static void main(String[] args) {
  3.         System.out.print(new Date().toString());
  4.                 printIsoscelesTriangle(7);
  5.         }

  6.         public static void printIsoscelesTriangle(int height) {
  7.                 for (int i = 1; i <= height; i++) {
  8.                         for (int j = i; j <= height; j++) {
  9.                                 System.out.print(" ");
  10.                         }
  11.                         for (int j = 1; j <= 2 * i - 1; j++) {
  12.                                 System.out.print("*");
  13.                         }
  14.                         System.out.println();
  15.                 }
  16.         };
  17. }
复制代码

作者: 杨志男    时间: 2012-9-29 00:11
  1. package com.ithima.practice;

  2. public class Test {

  3.         /**
  4.          * 用for循环打印等腰三角形
  5.          * 思路:其实这个等腰三角形是有两个图形组成的。一个是倒置的直角三角形,只不过表现元素是空格
  6.          *     另一个才是等腰三角形,那就打印两个图形
  7.          * 注意:千万不要把打印*的循环放到打印空格的循环里,它俩可没什么关系
  8.          */
  9.         public static void main(String[] args) {
  10.                 //x控制打印多少行
  11.                 for (int x = 1; x <= 5; x++) {
  12.                         //“5 - x”代表每次都比上次少打印个空格
  13.                         for (int y = 0; y < 5 - x; y++)
  14.                                 System.out.print(" ");
  15.                         //开始接着空格打印每行的*。“2 * x - 1”代表每次打印的都比上次多两个*
  16.                         for (int z = 0; z < 2 * x - 1; z++) {
  17.                                 System.out.print("*");
  18.                         }
  19.                         System.out.println();//这个你懂得
  20.                 }

  21.         }

  22. }
复制代码





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2