浏览 1481 次
锁定老帖子 主题:打印菱形Java实现
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
||
---|---|---|
作者 | 正文 | |
发表时间:2012-08-31
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /** * Created with IntelliJ IDEA. * User: TOSHIBA * Date: 12-8-31 * Time: 下午5:10 * To change this template use File | Settings | File Templates. */ public class ForTest2 { public static void main(String[] args){ int starNumberPerLine =6; int midPx = starNumberPerLine; //中间数==边*数 // if(starNumberPerLine%2 != 0) ; //奇数,中间点为* // if(starNumberPerLine%2 == 0) ; //偶数,中间点为" " // int i = 0; // // int jMin = midPx - (i - 1); // 上半边, 输出* // int jMax = midPx + (i - 1); // 上半边, 输出* // // int kMin = midPx - (i - 2); // 下半边, 输出* // int kMax = midPx + (i + 2); // 下半边, 输出* for(int i = 1; i <= starNumberPerLine; i++){ int jMin = midPx - (i - 1); // 上半边, 输出* int jMax = midPx + (i - 1); // 上半边, 输出* for (int j = 1; j <= starNumberPerLine*2-1; j++){ if(j>=jMin && j <= jMax) { if(i%2 != 0) { if(Math.abs(midPx - j)%2 == 0) System.out.print("*"); else System.out.print(" "); } else { if(Math.abs(midPx -j)%2 == 0) System.out.print(" "); else System.out.print("*"); } } else System.out.print(" "); } System.out.println(""); } for(int m = starNumberPerLine-1; m >= 1; m--){ int kMin = midPx - (m - 1); // 下半边, 输出* int kMax = midPx + (m - 1); // 下半边, 输出* for (int n = 1; n <= starNumberPerLine*2-1; n++){ if(n>=kMin && n <= kMax){ if(m%2 != 0) { if(Math.abs(midPx - n)%2 == 0) System.out.print("*"); else System.out.print(" "); } else { if(Math.abs(midPx - n)%2 == 0) System.out.print(" "); else System.out.print("*"); } } else System.out.print(" "); } System.out.println(""); } } } 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
||
返回顶楼 | ||