java打印金字塔paremid和空心金字塔

news2024/11/19 3:45:18

java打印金字塔

首先确定每行打印几个空格,在确定每行打印几个*
设总层数为layers,当前层数为i。
则每行打印空格数=layers-i,每行打印星号数=2*i-1

import java.util.Scanner;

public class Paremid{

	public static void main(String[] args) {
		Scanner myScanner = new Scanner(System.in);
		int layers = myScanner.nextInt();//输入需要打印的金字塔层数
		for(int i = 1; i <= layers; i ++){//层数即为循环数

			for(int j = 1; j <= layers - i; j ++){//每行需要打印的空格数
				System.out.print(" ");
			}
			for(int k = 1; k <= 2 * i - 1; k ++){//每行需要打印的星号数
				System.out.print("*");
			}
			System.out.println();
		}
	}
}

打印结果截图:
在这里插入图片描述

java打印空心金字塔

方法1:先打印前n-1层(在k循环处只打印第一个星号和最后一个星号),最后一层单独循环全打印星号

import java.util.Scanner;

public class KongxinParemid{

	public static void main(String[] args) {
		Scanner myScanner = new Scanner(System.in);

		int layers = myScanner.nextInt();//输入要打印金字塔的总层数

		//打印前n-1层
		for(int i = 1; i <= layers - 1; i ++){

			for(int j = 1; j <= layers - i; j ++){//打印每层之前的空格
				System.out.print(" ");
			}

			for(int k = 1; k <= 2 * i - 1; k ++){//打印空心金字塔内的星号和空格
				if(k == 1 || k == 2*i-1)//打印第一个星号和最后一个星号
					System.out.print("*");
				else
					System.out.print(" ");
			}
			System.out.println();
		}
		
		//打印最后一行
		for(int z = 1; z <= 2 * layers - 1; z ++){
			System.out.print("*");
		}
		System.out.println();
	}
}

方法2:每一行都采用同循环,在k循环处只打印第一个星号和最后一个星号,且如果i=总层数,打印星号

import java.util.Scanner;

public class KongxinParemid{

	public static void main(String[] args) {
		Scanner myScanner = new Scanner(System.in);

		int layers = myScanner.nextInt();// input total layer

		for(int i = 1; i <= layers - 1; i ++){//first layers-1 rows

			for(int j = 1; j <= layers - i; j ++){//space number
				System.out.print(" ");
			}

			for(int k = 1; k <= 2 * i - 1; k ++){
				if(k == 1 || k == 2*i-1 || i == layers)
					System.out.print("*");
				else
					System.out.print(" ");
			}
			System.out.println();
		}
	}
}

打印结果截图:
在这里插入图片描述

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

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

相关文章

搜索引擎的“道”

目录 1. 网页下载&#xff08;解决有没有的问题&#xff09; 1.1 遍历算法 1.1.1 广度优先搜索 1.1.2 深度优先搜索 1.2 网络爬虫 1.2.1 用BFS 还是DFS? 1.2.2 URL提取 1.2.3 哈希表存储URL下载记录 2. 索引构建&#xff08;解决快不快的问题&#xff09; 2.1 布尔…

AI作画Prompt不会写?Amazon Bedrock Claude3.5来帮忙

最新上线的Claude3.5 Sonnet按照官方介绍的数据来看&#xff0c;在多方面超越了CPT-4o&#xff0c;是迄今为止最智能的模型。 而跟上一个版本相比&#xff0c;速度是Claude 3 Opus的两倍&#xff0c;成本只有其五分之一。 Claude3.5 Sonnet不仅擅长解释图表、图形或者从不完…

AI赋能影视解说:Rap说唱玩法拆解!

在影视解说的领域&#xff0c;竞争一直非常激烈&#xff0c;众多创作者纷纷涌入这个热门的赛道。为了在众多声音中脱颖而出&#xff0c;创新成为了关键。最近&#xff0c;一种结合AI技术的解说方式——Rap说唱解说&#xff0c;以其新颖的形式和高效的创作过程&#xff0c;赢得了…

Linux学习第52天:Linux网络驱动实验(三):一往(网)情深

Linux版本号4.1.15 芯片I.MX6ULL 大叔学Linux 品人间百味 思文短情长 许久没有更新&#xff0c;的确是最近有点懈怠了。没有任何借口&#xff0c;接受所有的批评。接下来无论如何也要坚持下去&#xff0c;不管处于什么境地、什么原因&am…

vue3 Cesium 离线地图

1、vite-plugin-cesium 是一个专门为 Vite 构建工具定制的插件&#xff0c;用于在 Vite 项目中轻松使用 Cesium 库。它简化了在 Vite 项目中集成 Cesium 的过程。 npm i cesium vite-plugin-cesium vite -D 2、配置vite.config.js import cesium from vite-plugin-cesiumexp…

生产环境:CentOS 7 Docker 20.10.19离线部署(为离线部署k8s做准备)

背景描述&#xff1a;离线部署Docker环境 在现代IT基础设施中&#xff0c;Docker已经成为应用容器化的标准工具。它简化了应用程序的部署和管理&#xff0c;使开发者和运维工程师能够以更高的效率和一致性进行工作。然而&#xff0c;在某些场景下&#xff0c;由于安全性、网络…

WMS在发展过程中会遇到哪些挑战?

在仓库管理系统&#xff08;Warehouse Management System, WMS&#xff09;的发展过程中&#xff0c;会遇到以下一些挑战&#xff1a; 1、技术整合&#xff1a; 将WMS与现有的ERP&#xff08;企业资源计划&#xff09;、TMS&#xff08;运输管理系统&#xff09;等系统进行有效…

uniapp 小程序 堆叠轮播图 左滑 右滑 自动翻页 点击停止自动翻页

uniapp 小程序 堆叠轮播图 左滑 右滑 自动翻页 点击停止自动翻页 超过指定时间未点击滑动 则继续开始滚动 直接上代码 componentSwiper.vue 需要注意页面切换时清除计时器 <template><view><view class"swiperPanel" touchstart"startMove"…

1.Orange Zero2介绍及刷机启动

Orangepi Zero2 1.Orangepi Zero2简介2.刷机和系统启动 1.Orangepi Zero2简介 为什么学 学习目标依然是Linux系统&#xff0c;平台是ARM架构蜂巢快递柜&#xff0c;配送机器人&#xff0c;这些应用场景用C51,STM32单片机无法实现第三方介入库的局限性&#xff0c;比如刷脸支付…

C++ 教程 - 06 类的封装、继承、多态

文章目录 封装继承多态 封装 在private/protected 模块放置数据或者底层算法实现&#xff1b;在public块提供对外接口&#xff0c;实现相应的功能调用&#xff1b;类的封装案例 #include <iostream> using namespace std;// 类的定义 一般放在头文件 class Stu {public…

STM32中五个时钟源:HSI、HSE、LSI、LSE、PLL

时钟系统是处理器的核心&#xff0c;或者说时钟是单片机的心脏。 1.单片机内部需要储存器、累加器&#xff0c;这些都需要逻辑门电路。比如锁存器就是一个D触发器&#xff0c;而触发器的置1、清0、置数的功能都需要跳变沿。D触发器就是上升沿后存入数据&#xff0c;而这个上升…

Linux 安装ElasticSearch + FSCrawler 扫描本地的文件资源

文章目录 0. 前言1. 安装ElasticSearch1.1 下载安装包1.2 新增用户1.3 解压安装包1.4 更改文件夹用户1.5 修改配置文件1.6 修改系统配置1.7 启动集群 2. 安装FSCrawler2.1 下载安装包2.2 创建配置文件2.3 修改配置文件2.4 启动2.5 验证是否被索引 0. 前言 Elasticsearch 是一个…

职业本科院校电子信息类专业教学解决方案

引言 随着信息技术的飞速进步和全球经济的深度融合&#xff0c;电子信息领域已成为推动社会发展的核心动力。职业本科教育作为培养高素质技能型人才的主阵地&#xff0c;面临着前所未有的挑战与机遇。特别是在电子信息类专业领域&#xff0c;如何培养出既掌握前沿理论知识&…

mac配置修改host文件

1command 空格 输入 terminal 选中回车进入终端控制台. command 空格 2 sudo vi /etc/hosts 输入密码,进入vi编辑器修改文件 sudo vi /etc/hosts3修改内容,:wq保存退出,重启项目即可 :wq

2025中国(宁波)出口跨境电商博览会

2025中国(宁波)出口跨境电商博览会 时间&#xff1a;2025年5月28-30日 地点&#xff1a;中国宁波国际会展中心 组织单位&#xff1a; 宁波欧德国际商务咨询服务有限公司 凤麟展览(宁波)有限公司 宁波市跨境电子商务协会 宁波市家居产业协会 详询主办方陆先生 I38&…

day21--669. 修剪二叉搜索树 +108.将有序数组转换为二叉搜索树+538.把二叉搜索树转换为累加树

一、669. 修剪二叉搜索树 题目链接&#xff1a;https://leetcode.cn/problems/trim-a-binary-search-tree/ 文章讲解&#xff1a;https://programmercarl.com/0669.%E4%BF%AE%E5%89%AA%E4%BA%8C%E5%8F%89%E6%90%9C%E7%B4%A2%E6%A0%91.html 视频讲解&#xff1a;https://www.bi…

二、大模型原理(Transformer )

Transformer是一种基于自注意力机制&#xff08;Self-Attention Mechanism&#xff09;的深度学习模型&#xff0c;它在2017年由Vaswani等人在论文《Attention Is All You Need》中提出。Transformer模型的出现极大地推动了自然语言处理&#xff08;NLP&#xff09;领域的发展&…

零知识学习之DPDK与RDMA(1)—— 认识DPDK(1)

接前一篇文章&#xff1a;零知识学习之DPDK与RDMA&#xff08;1&#xff09;—— 序言与初识 本文内容参考&#xff1a; 《Linux高性能网络详解 从DPDK、RDMA到XDP》 刘伟著 人民邮电出版社 DPDK首页、文档和下载 - 网络数据包转发处理 - OSCHINA - 中文开源技术交流社区 五…

【源码+文档+调试讲解】灾害应急救援平台

摘 要 灾害应急救援平台的目的是让使用者可以更方便的将人、设备和场景更立体的连接在一起。能让用户以更科幻的方式使用产品&#xff0c;体验高科技时代带给人们的方便&#xff0c;同时也能让用户体会到与以往常规产品不同的体验风格。 与安卓&#xff0c;iOS相比较起来&…

小程序下拉刷新,加载更多数据,移动端分页

文章目录 页面结构图WXML页面代码js代码wxss代码总结备注 参考&#xff1a;https://juejin.cn/post/7222855604406796346 页面结构图 一般页面就4个结构&#xff1a;最外滚动层、数据展示层、暂无数据层、没有更多数据层。 如图&#xff1a; WXML页面代码 <scroll-view …