首页 > 其他 > 详细

打印出有N*2-1行的菱形

时间:2020-03-28 12:11:33      阅读:320      评论:0      收藏:0      [点我收藏+]
package Twelve;

import java.util.Scanner;

//打印中国结图案关键算法
//由于中国结的形状是菱形图案,所以现在公司需要设计一个打印菱形的方法。
//从键盘输入一个整数N,打印出有N*2-1行的菱形。
//例如输入整数4,则屏幕输出如下菱形。
public class one {
    public static void main(String[] args) {
                Scanner input = new Scanner(System.in);
                System.out.println("请输入菱形的行数:");
                int rows = input.nextInt();
       //判断是否基数加循环
        /*while (rows % 2 == 0) {
            System.out.println("请输入基数:");
            rows = input.nextInt();
        }*/
                int n = rows/2+2 ;//上半部分图形的高度
                //打印上半部分,高度为n的等腰三角形
                for (int i = 1; i <= n; i++) {
                    //打印空格,第i行打印n-i个空格
                    for (int j = 1; j <= n - i; j++) {
                        System.out.print(" ");
                    }
                    for (int k = 1; k <= 2 * i - 1; k++) {
                        System.out.print("*");
                    }
                    System.out.print("\n");
                }

                //打印下半部分,高度为rows-n的倒等腰三角形
                for (int i = rows; i >= 1; i--) {
                    //打印空格,第i行打印n-i个空格
                    for (int j = 1; j <= n - i; j++) {
                        System.out.print(" ");
                    }
                    //打印*,第i行打印2*i-1个*
                    for (int k = 1; k <= 2 * i - 1; k++) {
                        System.out.print("*");
                    }
                    System.out.print("\n");
                }
            }
        }

  

打印出有N*2-1行的菱形

原文:https://www.cnblogs.com/chenjiajiale/p/12586456.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!