打印各种形状

news2024/11/20 20:28:56

在这里插入图片描述

package org.example;

public class Demo {
    public static void main(String[] args) {
        //打印长方形
        printDemo1();
        //打印有1定空隙的长方形
        printDemo2();
        //平行四边形
        printDemo3();
        //三角形
        printDemo4();
        //菱形
        printDemo5();
        //空心菱形
        printDemo6();
    }

    private static void printDemo6() {
        //上面三角形:
        for (int j = 1; j <= 4; j++) {//j:控制行数
            //加入空格:
            for (int i = 1; i <= (9 - j); i++) {//i:控制空格的个数
                System.out.print(" ");
            }
            //*********
            for (int i = 1; i <= (2 * j - 1); i++) {//i:控制*的个数
                if (i == 1 || i == (2 * j - 1)) {
                    System.out.print("*");
                } else {
                    System.out.print(" ");
                }
            }
            //换行:
            System.out.println();
        }

        //下面三角形:
        for (int j = 1; j <= 3; j++) {//j:控制行数
            //加入空格:
            for (int i = 1; i <= (j + 5); i++) {//i:控制空格的个数
                System.out.print(" ");
            }
            //*********
            for (int i = 1; i <= (7 - 2 * j); i++) {//i:控制*的个数
                if (i == 1 || i == (7 - 2 * j)) {
                    System.out.print("*");
                } else {
                    System.out.print(" ");
                }
            }
            //换行:
            System.out.println();
        }
    }

    private static void printDemo5() {
        //上面三角形:
        //j:控制行数
        for(int j=1;j<=4;j++){
            //加入空格:
             for(int i=1;i<=(9-j);i++){
                 System.out.print(" ");
             }
             for(int i=1;i<=(2*j-1);i++){
                 //控制*的个数
                 System.out.print("*");
             }
            //换行:
            System.out.println();
        }
        //下面三角形:
        for(int j=1;j<=3;j++){
            //加入空格:
            for(int i=1;i<=(j+5);i++){
                //i:控制空格的个数
                System.out.print(" ");
            }

            for(int i=1;i<=(7-2*j);i++){//i:控制*的个数
                System.out.print("*");
            }
            //换行:
            System.out.println();
        }
    }

    private static void printDemo4() {
        //控制行数
        for(int j=1;j<=4;j++){
            //i:控制空格的个数
            for(int i=1;i<=(9-j);i++){
                System.out.print(" ");
            }
            for(int i=0;i<=2*j-1;i++){
                System.out.print("*");
            }
            //换行
            System.out.println();
        }
    }

    private static void printDemo3() {
        //控制行数
        for(int j=1;j<=4;j++){
             for(int i=1;i<=(9-j);i++){//i:控制空格的个数
                 System.out.print(" ");
             }
            for(int i=0;i<9;i++){
                System.out.print("*");
            }
            //换行
            System.out.println();
        }
    }

    private static void printDemo2() {
        //控制行数
        for(int j=1;j<=4;j++){
            for(int i=0;i<9;i++){
                System.out.print(" ");
            }
            for(int i=0;i<9;i++){
                System.out.print("*");
            }
            //换行
            System.out.println();

        }
    }

    private static void printDemo1() {
        //控制行数
        for(int i=1;i<=4;i++){
            //*********
            for(int j=0;j<9;j++){
                System.out.print("*");
            }
            //换行
            System.out.println();
        }
    }
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1337623.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【JVM】垃圾回收理论

一、关于回收目标 在前面我们已经了解到&#xff0c;JVM的内存模型划分为多个区域&#xff0c;由于不同区域的实现机制以及功能不同&#xff0c;那么各自的回收目标也不同。一般来说&#xff0c;内存回收主要涉及以下三个区域&#xff1a; 虚拟机栈/本地方法栈&#xff1a;顾名…

Markdown之高频语法介绍(二十四)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 优质专栏&#xff1a;多媒…

Ionic实战二十七:移动端录音方案及Nginx部署配置

文章目录 1.最终效果预览2.实现思路说明3.移动端外壳集成iframe4.视频页nginx配置5.组态页iframe集成6.组态页Nginx配置7.Nginx启动及关闭8.H5页面录音1.最终效果预览 2.实现思路说明 摄像头对接的海康的或者大华,将设备集成到青柿视频平台中,这样视频的播放用video标签即可…

promise的使用和实例方法

前言 异步,是任何编程都无法回避的话题。在promise出现之前,js中也有处理异步的方案,不过还没有专门的api能去处理链式的异步操作。所以,当大量的异步任务逐个执行,就变成了传说中的回调地狱。 function asyncFn(fn1, fn2, fn3) {setTimeout(() > {//处理第一个异步任务fn1…

12.26_黑马数据结构与算法笔记Java

目录 243 图 Floyd Warshall 算法实现2 244 图 Floyd Warshall 算法实现3 245 图 Floyd Warshall 算法实现4 246 图 最小生成树 Prim 247 图 最小生成树 Kruskal 248 图 并查集 1 249 图 并查集 2 250 图 并查集 路径压缩 251 图 并查集 UnionBySize 252 贪心算法 介绍…

vue3开发一个todo List

创建新的 Vue 3 项目&#xff1a; 按装vue3的 工具 npm install -g vue/cli创建一个新的 Vue 3 项目&#xff1a; vue create vue3-todolist进入项目目录&#xff1a; cd vue3-todolist代码&#xff1a; 在项目的 src/components 目录下&#xff0c;创建一个新的文件 Todo…

蓝桥杯c/c++程序设计——冶炼金属

冶炼金属 问题描述 小蓝有一个神奇的炉子用于将普通金属 O 冶炼成为一种特殊金属 X。这个炉子有一个称作转换率的属性 V&#xff0c;V 是一个正整数&#xff0c;这意味着消耗 V 个普通金属 O 恰好可以冶炼出一个特殊金属 X&#xff0c;当普通金属 O 的数目不足 V 时&#xff0…

基于yolov8,制作停车位计数器(附源码)

大家好&#xff0c;YOLO(You Only Look Once) 是由Joseph Redmon和Ali开发的一种对象检测和图像分割模型。 YOLO的第一个版本于2015年发布&#xff0c;由于其高速度和准确性&#xff0c;瞬间得到了广大AI爱好者的喜爱。 Ultralytics YOLOv8则是一款前沿、最先进(SOTA)的模型&a…

随记-语义分割

Semantic Segmentation 什么是语义分割全卷积网络FCN摘要 什么是语义分割 语义分割 Semantic Segmentation 旨在对图像的每个像素进行分类&#xff0c;将其分配给预定义的语义类别。 &#xff08;检测图像中的物体并按属性分类&#xff09; 实例分割 Instance Segmentation 实…

Vue框架引入Element-Ui

首先已经创建好了 Vue 框架&#xff0c;安装好了 node.js。 没有完成的可按照此博客搭建&#xff1a;搭建Vue项目 之后打开终端&#xff0c;使用命令。 1、命令引入 npm i element-ui -S2、package.json 查看版本 在 package.json 文件里可查看下载好的依赖版本。 3、在 ma…

按照不同产品类型,划片机主要可以分为如下几个类别

随着科技的不断发展&#xff0c;划片机在半导体封装行业中的应用越来越广泛。根据不同的产品类型&#xff0c;划片机主要可以分为砂轮划片机和激光划片机两个类别。本文将详细介绍这两类划片机的特点和应用。 一、砂轮划片机 砂轮划片机是综合了水气电、空气静压高速主轴、精密…

【Vulnhub 靶场】【Funbox: Scriptkiddie】【非常简单】【20210720】

1、环境介绍 靶场介绍&#xff1a;https://www.vulnhub.com/entry/funbox-scriptkiddie,725/ 靶场下载&#xff1a;https://download.vulnhub.com/funbox/Funbox11.ova 靶场难度&#xff1a;简单 发布日期&#xff1a;2021年07月20日 文件大小&#xff1a;1.3 GB 靶场作者&…

Windows无法安装edge 无法连接Internet

如果出现以上问题&#xff0c;或者Edge浏览器无法更新&#xff0c;提示防火墙错误之类的都可以解决问题。 下载以下证书文件并导入即可解决问题。 MicrosoftRootCertificateAuthority2011.cer

《PCI Express体系结构导读》随记 —— 第I篇 第1章 PCI总线的基本知识(4)

接前一篇文章&#xff1a;《PCI Express体系结构导读》随记 —— 第I篇 第1章 PCI总线的基本知识&#xff08;3&#xff09; 1.1 PCI总线的组成 PCI总线作为处理器系统的本地总线&#xff0c;是处理器系统的一个组成部件。因此&#xff0c;讲述PCI总线的组成结构&#xff0c;不…

DataFunSummit:2023年数据湖架构峰会-核心PPT资料下载

一、峰会简介 现今&#xff0c;很多企业每天都有PB级的数据注入到大数据平台&#xff0c;经过离线或实时的ETL建模后&#xff0c;提供给下游的分析、推荐及预测等场景使用。面对如此大规模的数据&#xff0c;无论是分析型场景、流批一体、增量数仓都得益于湖仓一体等数据湖技术…

RocketMQ文件准备

1、RocketMQ下载 下载地址&#xff1a;下载 | RocketMQ Source下载与Binary下载区别&#xff1a; binary是编译好的可以直接使用&#xff0c;source是还没编译过的源代码&#xff0c;需要自行编译。 这里大家自行下载需要的版本 2、RocketMQ管理界面 因为Rocket没有图形化管理…

渗透测试 | 信息收集常用方法总结

目录 一、关于域名 1.子域名收集 a.搜索引擎查找 b.在线查询 c.工具 d.SSL/TLS证书查询 2.端口型站点收集 3.目录文件扫描 a.目录扫描工具 b.github搜索 c.google搜索 d.在线网站 e.文件接口工具 4.旁站和C段 a.旁站查询 b.C段查询 5.网站技术架构信息 a.基础…

重磅!这本SCI期刊已解除「On hold」,另有Top期刊仍被调查中

近期小编在Master Journal List上查询期刊时偶然发现&#xff0c;此前被标记为「On Hold」的SCI期刊Biomass Conversion and Biorefinery&#xff0c;已经被科睿唯安取消了「On Hold」标识&#xff01; 查询网址&#xff1a;https://mjl.clarivate.com/home 此前期刊处于「On …

【Petalinux】制作SD卡 操作系统 启动

Vivado 添加 SD0 导出hdf 制作SD卡 https://mathd.blog.csdn.net/article/details/135217761 【Petalinux】下为空白SD卡建立BOOT&#xff0c;rootfs分区 Petalinux 生成 Petalinux 框架 petalinux-create --type project --template zynq --name sdtest进入 sdtest 文件…

Python3.12 新版本之f-string的几个新特性

目录 概述 f-string表达式 1. 支持转义字符 2. 支持多行字符串 3. 支持重复使用的引号种类 4. 支持无限嵌套 附录 Python3.12新语法特性 概述 Python 3.12在10月2日发布&#xff0c;新版本包含一系列对语言和标准库的改变。 库的改变主要集中在清理已弃用的 API、可…